From 1f65350a16be6a090cf19bad626e191c67159a19 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Wed, 28 Apr 2004 20:00:56 +0000 Subject: [PATCH] Get files from the gnulib and po repositories, instead of relying on them being in our CVS. Upgrade to latest versions of gnulib and Automake. --- ChangeLog | 146 ++++++ Makefile.am | 4 +- README-cvs | 20 +- bootstrap | 223 +++++++- config/.cvsignore | 12 +- config/depcomp | 520 ------------------ config/install-sh | 316 ----------- configure.ac | 47 +- lib/.cvsignore | 55 ++ lib/Makefile.am | 32 +- lib/alloca.c | 508 ------------------ lib/argmatch.c | 280 ---------- lib/argmatch.h | 109 ---- lib/basename.c | 79 --- lib/dirname.c | 121 ----- lib/dirname.h | 49 -- lib/error.c | 407 --------------- lib/error.h | 78 --- lib/getopt.c | 1273 --------------------------------------------- lib/getopt.h | 180 ------- lib/getopt1.c | 195 ------- lib/gettext.h | 69 --- lib/hash.c | 1051 ------------------------------------- lib/hash.h | 95 ---- lib/malloc.c | 38 -- lib/mbswidth.c | 213 -------- lib/mbswidth.h | 46 -- lib/memchr.c | 216 -------- lib/memcmp.c | 386 -------------- lib/memrchr.c | 209 -------- lib/obstack.c | 616 ---------------------- lib/obstack.h | 613 ---------------------- lib/quote.c | 41 -- lib/quote.h | 28 - lib/quotearg.c | 630 ---------------------- lib/quotearg.h | 114 ---- lib/realloc.c | 44 -- lib/stdbool_.h | 47 -- lib/stpcpy.c | 50 -- lib/strcasecmp.c | 66 --- lib/strchr.c | 31 -- lib/strncasecmp.c | 2 - lib/strnlen.c | 63 --- lib/strrchr.c | 30 -- lib/strspn.c | 58 --- lib/strtol.c | 472 ----------------- lib/strtoul.c | 22 - lib/unlocked-io.h | 90 ---- lib/xalloc.h | 89 ---- lib/xmalloc.c | 113 ---- lib/xstrdup.c | 38 -- lib/xstrndup.c | 51 -- m4/.cvsignore | 19 +- m4/Makefile.am | 13 - m4/alloca.m4 | 36 -- m4/dirname.m4 | 25 - m4/dos.m4 | 53 -- m4/error.m4 | 18 - m4/getopt.m4 | 13 - m4/hash.m4 | 15 - m4/malloc.m4 | 25 - m4/mbrtowc.m4 | 27 - m4/mbswidth.m4 | 36 -- m4/memchr.m4 | 21 - m4/memcmp.m4 | 22 - m4/memrchr.m4 | 23 - m4/obstack.m4 | 24 - m4/onceonly.m4 | 63 --- m4/prereq.m4 | 63 --- m4/quote.m4 | 13 - m4/quotearg.m4 | 16 - m4/realloc.m4 | 25 - m4/stdbool.m4 | 89 ---- m4/stpcpy.m4 | 24 - m4/strnlen.m4 | 32 -- m4/strtol.m4 | 22 - m4/strtoul.m4 | 20 - m4/unlocked-io.m4 | 22 - m4/xalloc.m4 | 26 - po/.cvsignore | 12 +- po/ChangeLog | 70 --- po/LINGUAS | 16 - po/Makefile.in.in | 353 ------------- po/Makevars | 41 -- po/da.po | 710 ------------------------- po/de.po | 1011 ----------------------------------- po/es.po | 1018 ------------------------------------ po/et.po | 704 ------------------------- po/fr.po | 1183 ----------------------------------------- po/hr.po | 896 ------------------------------- po/id.po | 721 ------------------------- po/it.po | 761 --------------------------- po/ja.po | 1055 ------------------------------------- po/ms.po | 709 ------------------------- po/nl.po | 720 ------------------------- po/pt_BR.po | 706 ------------------------- po/ro.po | 713 ------------------------- po/ru.po | 958 ---------------------------------- po/sv.po | 711 ------------------------- po/tr.po | 902 -------------------------------- src/.cvsignore | 7 +- src/files.c | 3 +- src/system.h | 20 +- 103 files changed, 491 insertions(+), 24579 deletions(-) delete mode 100755 config/depcomp delete mode 100755 config/install-sh delete mode 100644 lib/alloca.c delete mode 100644 lib/argmatch.c delete mode 100644 lib/argmatch.h delete mode 100644 lib/basename.c delete mode 100644 lib/dirname.c delete mode 100644 lib/dirname.h delete mode 100644 lib/error.c delete mode 100644 lib/error.h delete mode 100644 lib/getopt.c delete mode 100644 lib/getopt.h delete mode 100644 lib/getopt1.c delete mode 100644 lib/gettext.h delete mode 100644 lib/hash.c delete mode 100644 lib/hash.h delete mode 100644 lib/malloc.c delete mode 100644 lib/mbswidth.c delete mode 100644 lib/mbswidth.h delete mode 100644 lib/memchr.c delete mode 100644 lib/memcmp.c delete mode 100644 lib/memrchr.c delete mode 100644 lib/obstack.c delete mode 100644 lib/obstack.h delete mode 100644 lib/quote.c delete mode 100644 lib/quote.h delete mode 100644 lib/quotearg.c delete mode 100644 lib/quotearg.h delete mode 100644 lib/realloc.c delete mode 100644 lib/stdbool_.h delete mode 100644 lib/stpcpy.c delete mode 100644 lib/strcasecmp.c delete mode 100644 lib/strchr.c delete mode 100644 lib/strncasecmp.c delete mode 100644 lib/strnlen.c delete mode 100644 lib/strrchr.c delete mode 100644 lib/strspn.c delete mode 100644 lib/strtol.c delete mode 100644 lib/strtoul.c delete mode 100644 lib/unlocked-io.h delete mode 100644 lib/xalloc.h delete mode 100644 lib/xmalloc.c delete mode 100644 lib/xstrdup.c delete mode 100644 lib/xstrndup.c delete mode 100644 m4/Makefile.am delete mode 100644 m4/alloca.m4 delete mode 100644 m4/dirname.m4 delete mode 100644 m4/dos.m4 delete mode 100644 m4/error.m4 delete mode 100644 m4/getopt.m4 delete mode 100644 m4/hash.m4 delete mode 100644 m4/malloc.m4 delete mode 100644 m4/mbrtowc.m4 delete mode 100644 m4/mbswidth.m4 delete mode 100644 m4/memchr.m4 delete mode 100644 m4/memcmp.m4 delete mode 100644 m4/memrchr.m4 delete mode 100644 m4/obstack.m4 delete mode 100644 m4/onceonly.m4 delete mode 100644 m4/prereq.m4 delete mode 100644 m4/quote.m4 delete mode 100644 m4/quotearg.m4 delete mode 100644 m4/realloc.m4 delete mode 100644 m4/stdbool.m4 delete mode 100644 m4/stpcpy.m4 delete mode 100644 m4/strnlen.m4 delete mode 100644 m4/strtol.m4 delete mode 100644 m4/strtoul.m4 delete mode 100644 m4/unlocked-io.m4 delete mode 100644 m4/xalloc.m4 delete mode 100644 po/ChangeLog delete mode 100644 po/LINGUAS delete mode 100644 po/Makefile.in.in delete mode 100644 po/Makevars delete mode 100644 po/da.po delete mode 100644 po/de.po delete mode 100644 po/es.po delete mode 100644 po/et.po delete mode 100644 po/fr.po delete mode 100644 po/hr.po delete mode 100644 po/id.po delete mode 100644 po/it.po delete mode 100644 po/ja.po delete mode 100644 po/ms.po delete mode 100644 po/nl.po delete mode 100644 po/pt_BR.po delete mode 100644 po/ro.po delete mode 100644 po/ru.po delete mode 100644 po/sv.po delete mode 100644 po/tr.po diff --git a/ChangeLog b/ChangeLog index 4b472fcc..7e4a1e92 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,148 @@ +2004-04-28 Paul Eggert + + Get files from the gnulib and po repositories, instead of relying + on them being in our CVS. Upgrade to latest versions of gnulib + and Automake. + + * Makefile.am (SUBDIRS): Remove m4; Automake now does m4. + * bootstrap: Bootstrap from gnulib and po repositories. + Much of this code was stolen from GNU diff and GNU tar's bootstrap. + * README-cvs: Document these changes. Remove version numbers from + mentions of build tools, since they change so often. Mention Flex. + + * configure.ac (AC_CONFIG_MACRO_DIR): Add, with m4 as arg. + (gl_USE_SYSTEM_EXTENSIONS): Add. + (AC_GNU_SOURCE): Remove; no longer needed, as gl_USE_SYSTEM_EXTENSIONS + does this for us. + (AC_ISC_POSIX, AC_MINIX): Remove; we no longer support these + ancient OSes, as they get in the way of latest Autoconf & gnulib. + (AC_HEADER_STDC): Remove: we now assume C89 or better. + (AC_CHECK_HEADERS_ONCE): Use instead of AC_CHECK_HEADERS. + Do not check for C89 headers, except for locale.h which is used + by the Yacc library and must port to K&R hosts. + (AC_CHECK_FUNCS_ONCE): Use instead of AC_CHECK_FUNCS. + Do not check for C89 functions, except for setlocale which is + used by the Yacc library. + (AC_CHECK_DECLS, AC_REPLACE_FUNCS): Remove; no longer needed. + (gl_DIRNAME, gl_ERROR, gl_FUNC_ALLOCA, gl_FUNC_MEMCHR, + gl_FUNC_MEMRCHR, gl_FUNC_STPCPY, gl_FUNC_STRNLEN, gl_FUNC_STRTOL, + gl_GETOPT, gl_HASH, gl_MBSWIDTH, gl_OBSTACK, gl_QUOTE, + gl_QUOTEARG, gl_XALLOC, jm_FUNC_GLIBC_UNLOCKED_IO, jm_FUNC_MALLOC, + AM_GNU_GETTEXT): Remove; now done by: + (GNULIB_AUTOCONF_SNIPPET): Add. "bootstrap" builds this for us. + (AC_CONFIG_FILES): Remove m4/Makefile, as Automake now does this + for us. + + * lib/Makefile.am: Include gnulib.mk, built for us by "bootstrap". + (BUILT_SOURCES, EXTRA_DIST, MOSTLYCLEANFILES): + Define to empty, as gnulib.mk will do the rest for us. + ($(libbison_a_OBJECTS), stdbool.h): Remove, as gnulib.mk does this + for us. + (libbison_a_SOURCES): Define to $(lib_SOURCES) now. + (lib_SOURCES): New symbol, containing only the non-gnulib libs. + + * src/files.c: Include gnulib's xstrndup.h. + + * src/system.h (MALLOC): Use xnmalloc, for better overflow checking. + (REALLOC): Use xnrealloc, for likewise. + (xstrndup, stpcpy): Remove decls, as gnulib does this for us now. + (strnlen, memrchr): Remove decls; functions no longer used. + Include . + + * config/depcomp, config/install-sh, lib/alloca.c, lib/argmatch.c, + lib/argmatch.h, lib/basename.c, lib/dirname.c, lib/dirname.h, + lib/error.c, lib/error.h, lib/getopt.c, lib/getopt.h, + lib/getopt1.c, lib/gettext.h, lib/hash.c, lib/hash.h, + lib/malloc.c, lib/mbswidth.c, lib/mbswidth.h, lib/memchr.c, + lib/memcmp.c, lib/memrchr.c, lib/obstack.c, lib/obstack.h, + lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, + lib/realloc.c, lib/stdbool_.h, lib/stpcpy.c, lib/strcasecmp.c, + lib/strchr.c, lib/strncasecmp.c, lib/strnlen.c, lib/strrchr.c, + lib/strspn.c, lib/strtol.c, lib/strtoul.c, lib/unlocked-io.h, + lib/xalloc.h, lib/xmalloc.c, lib/xstrdup.c, lib/xstrndup.c, + m4/Makefile.am, m4/alloca.m4, m4/dirname.m4, m4/dos.m4, + m4/error.m4, m4/getopt.m4, m4/hash.m4, m4/malloc.m4, + m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4, m4/memcmp.m4, + m4/memrchr.m4, m4/obstack.m4, m4/onceonly.m4, m4/prereq.m4, + m4/quote.m4, m4/quotearg.m4, m4/realloc.m4, m4/stdbool.m4, + m4/stpcpy.m4, m4/strnlen.m4, m4/strtol.m4, m4/strtoul.m4, + m4/unlocked-io.m4, m4/xalloc.m4, po/LINGUAS, po/Makefile.in.in, + po/Makevars, po/da.po, po/de.po, po/es.po, po/et.po, po/fr.po, + po/hr.po, po/id.po, po/it.po, po/ja.po, po/ms.po, po/nl.po, + po/pt_BR.po, po/ro.po, po/ru.po, po/sv.po, po/tr.po: + Remove, as these files are now generated automatically + by bootstrap or automake. + + * po/ChangeLog: Remove: all but one entry was a duplicate + of this file, and I moved that 2000-11-02 entry here. + + * config/.cvsignore: Add Makefile, depcomp, install-sh. + * lib/.cvsignore: Add alloca.c, alloca.h, alloca_.h, argmatch.c, + argmatch.h, basename.c, dirname.c, dirname.h, error.c, error.h, + exit.h, exitfail.c, exitfail.h, getopt.c, getopt.h, getopt1.c, + getopt_int.h, gettext.h, gnulib.mk, hard-locale.c, hard-locale.h, + hash.c, hash.h, malloc.c, mbswidth.c, mbswidth.h, memchr.c, + memcmp.c, memrchr.c, obstack.c, obstack.h, quote.c, quote.h, + quotearg.c, quotearg.h, realloc.c, stdbool_.h, stpcpy.c, stpcpy.h, + strcasecmp.c, strchr.c, stripslash.c, strncasecmp.c, strndup.c, + strnlen.c, strrchr.c, strspn.c, strtol.c, strtoul.c, + unlocked-io.h, xalloc.h, xmalloc.c, xstrdup.c, xstrndup.c, + xstrndup.h. + * m4/.cvsignore: Remove Makefile, Makefile.in. Add alloca.m4, + dirname.m4, dos.m4, error.m4, getopt.m4, hash.m4, mbrtowc.m4, + mbswidth.m4, obstack.m4, onceonly.m4, quote.m4, quotearg.m4, + stdbool.m4, stpcpy.m4, strnlen.m4, unlocked-io.m4, xalloc.m4. + * po/.cvsignore: Add *.po, LINGUAS, Makefile.in.in, Makevars. + * src/.cvsignore: Remove *_.c. + + + * Makefile.maint (GZIP_ENV): Don't use --rsyncable if gzip doesn't + support it. (The latest stable gzip doesn't.) + +2004-04-27 Paul Eggert + + * data/lalr1.cc (Parser::stos_) [! YYDEBUG]: Define even in this + case, as stos_ is now used by destructors due to the 2004-02-09 + change. + + Remove more K&R C support. + * lib/libiberty.y (PARAMS): Remove. All uses removed. + * lib/subpipe.c (errno): Remove decl. + Include unconditionally. + (EXIT_FAILURE): Remove macro. + * src/complain.c (vfprintf, strerror): Remove. + * src/system.h: Include limits.h, stdlib.h, string.h, locale.h + unconditionally. + (EXIT_FAILURE, EXIT_SUCCESS, setlocale): Remove defns. + Use latest Autoconf recommendations for including inttypes.h, stdint.h. + (strchr, strspn, memchr): Remove decls. + * tests/calc.at (_AT_DATA_CALC_Y): Include stdlib.h, string.h + unconditionally. Do not declare perror. + * tests/conflicts.at (%nonassoc and eof): Include stdlib.h + unconditionally. + + * src/complain.c (_): Remove useless defn, as system.h defines this. + + * lib/bitset.h (__INT_TO_PTR): Remove; workaround no longer needed + with latest obstack.h. + * lib/ebitset.c (ebitset_elt_alloc): Don't bother to cast args + to procedure types, as obstack.h now does that for us. + * lib/lbitset.c (lbitset_elt_alloc): Likewise. + + * lib/subpipe.h [HAVE_SYS_TYPES_H]: Include , + so that this include file can stand alone. + * lib/subpipe.c: Do not include , as subpipe.h + does this now. Include subpipe.h first after config.h, to + test whether it can stand alone. + + * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Don't + declare yyerror when using lalr.cc, as GCC 3.4.0 warns about the + unused declaration. + + * tests/synclines.at (%union synch line): Put a dummy member in + the union, because empty unions aren't allowed in C. Caught + by GCC 3.4.0. + 2004-04-13 Jim Meyering * src/conflicts.c (conflicts_print): Correct format string typo: @@ -10179,6 +10324,7 @@ obstacks. (output_token_defines, reader_output_yylsp): Use obstacks. * src/system.h (obstack_fgrow3): New. + * po/POTFILES.in: Adjust. 2000-11-01 Akim Demaille diff --git a/Makefile.am b/Makefile.am index 7bf0d240..93e167a3 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,5 +1,5 @@ ## Process this file with automake to produce Makefile.in -*-Makefile-*- -## Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. +## Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by @@ -18,7 +18,7 @@ ACLOCAL_AMFLAGS = -I m4 -SUBDIRS = config po lib data src doc m4 tests +SUBDIRS = config po lib data src doc tests EXTRA_DIST = REFERENCES OChangeLog Makefile.maint GNUmakefile Makefile.cfg diff --git a/README-cvs b/README-cvs index 0b9b2705..cc52e402 100644 --- a/README-cvs +++ b/README-cvs @@ -6,15 +6,13 @@ Bison. * Requirements Only the sources are installed in the CVS repository (to ease the -maintenance, merges etc.), therefore you will have to the maintainer -tools we depend upon: - -- Automake 1.7 - -- Autoconf 2.57 - -- Gettext 0.12.1 +maintenance, merges etc.), therefore you will have to get the latest +stable versions of the maintainer tools we depend upon, including: +- Automake +- Autoconf +- Flex +- Gettext - CVS Bison itself Only building the initial full source tree will be a bit painful, @@ -55,19 +53,19 @@ If you experience problems, I suggest the following: 1. Do a regular CVS checkout 2. Fetch a recent tarball in: - http://www.lrde.epita.fr/~akim/download/ + ftp://alpha.gnu.org/gnu/bison/ 3. Extract it 4. Override the content of your checkout with the content of this tarball, i.e.: - cp -r bison-1.49b/* bison-cvs + cp -r bison-1.875c/* bison-cvs 5. Proceed on ./configure && make etc. ----- -Copyright (C) 2002, 2003 Free Software Foundation, Inc. +Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. This file is part of GNU Bison. diff --git a/bootstrap b/bootstrap index c27557b5..fe24200e 100755 --- a/bootstrap +++ b/bootstrap @@ -1,6 +1,223 @@ #! /bin/sh -echo "Bootstrapping CVS Bison..." +# Bootstrap this package from CVS. -echo "running: autoreconf --verbose --install --force" -autoreconf --verbose --install --force +# Copyright (C) 2003, 2004 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# Written by Paul Eggert. + +package=bison + +# Parse options. + +for option +do + case $option in + --help) + echo "$0: usage: $0 [--gnulib-srcdir=DIR] [--cvs-user=USERNAME] [--skip-po]" + exit;; + --gnulib-srcdir=*) + GNULIB_SRCDIR=`expr "$1" : '--gnulib-srcdir=\(.*\)'`;; + --cvs-user=*) + CVS_USER=`expr "$1" : '--cvs-user=\(.*\)'`;; + --skip-po) + SKIP_PO=t;; + *) + echo >&2 "$0: $option: unknown option" + exit 1;; + esac +done + +echo "$0: Bootstrapping CVS $package..." + +build_cvs_prefix() { + CVS_PREFIX=:${1}: + if [ "${2}" != - ]; then + CVS_PREFIX=${CVS_PREFIX}${2}@ + fi +} + +# Get gnulib files. + +case ${GNULIB_SRCDIR--} in +-) + if [ ! -d gnulib ]; then + echo "$0: getting gnulib files..." + + trap exit 1 2 13 15 + trap 'rm -fr gnulib; exit 1' 0 + + case ${CVS_AUTH-anoncvs} in + anoncvs) + CVS_PREFIX='anoncvs@';; + ssh) + CVS_PREFIX="$CVS_USER${CVS_USER+@}";; + *) + echo "$0: $CVS_AUTH: Unknown CVS access method" >&2 + exit 1;; + esac + + case $CVS_RSH in + '') export CVS_RSH=ssh;; + esac + + cvs -z3 -q -d ${CVS_PREFIX}subversions.gnu.org:/cvsroot/gnulib co gnulib || exit + + trap 0 + fi + GNULIB_SRCDIR=gnulib +esac + +<$GNULIB_SRCDIR/gnulib-tool || exit + +gnulib_modules=' +alloca +argmatch +dirname +error +getopt +hard-locale +hash +malloc +mbswidth +obstack +quote +quotearg +stdbool +stpcpy +xalloc +xstrndup +' + +previous_gnulib_modules= +while [ "$gnulib_modules" != "$previous_gnulib_modules" ]; do + previous_gnulib_modules=$gnulib_modules + gnulib_modules=` + (echo "$gnulib_modules" + for gnulib_module in $gnulib_modules; do + $GNULIB_SRCDIR/gnulib-tool --extract-dependencies $gnulib_module + done) | sort -u + ` +done + +gnulib_files=` + (for gnulib_module in $gnulib_modules; do + $GNULIB_SRCDIR/gnulib-tool --extract-filelist $gnulib_module + done) | sort -u +` + +gnulib_dirs=`echo "$gnulib_files" | sed 's,/[^/]*$,,' | sort -u` +mkdir -p $gnulib_dirs || exit + +for gnulib_file in $gnulib_files; do + dest=$gnulib_file + + case $gnulib_file in + m4/onceonly_2_57.m4) dest=m4/onceonly.m4;; + esac + + rm -f $dest && + echo "$0: Copying file $GNULIB_SRCDIR/$gnulib_file" && + cp -p $GNULIB_SRCDIR/$gnulib_file $dest || exit +done + + +# Get translations. + +case $SKIP_PO in +'') + echo "$0: getting translations into po..." + (cd po && + rm -f dummy `ls | sed -n '/\.gmo$/p; /\.po/p'` && + wget -nv -nd -r -l 1 -A .po -C off \ + http://www2.iro.umontreal.ca/~gnutra/po/maint/$package/ && + ls *.po | sed 's/\.po$//' >LINGUAS + ) || exit;; +esac + + +# Generate autoconf and automake snippets. + +(echo '# This file is generated automatically by "bootstrap".' && + echo 'AC_DEFUN([GNULIB_AUTOCONF_SNIPPET],[' && + $GNULIB_SRCDIR/gnulib-tool --extract-autoconf-snippet $gnulib_modules && + echo '])' +) >m4/gnulib.m4 || exit + +(echo '# This file is generated automatically by "bootstrap".' && + $GNULIB_SRCDIR/gnulib-tool --extract-automake-snippet $gnulib_modules +) >lib/gnulib.mk || exit + + +# Reconfigure, getting other files. + +echo "$0: autoreconf --verbose --install --force ..." +autoreconf --verbose --install --force || exit + +# We don't need intl, so remove it. +echo "$0: rm -fr intl ..." +rm -fr intl || exit + + +# Patch what appears to be a bug in gettext 0.14.1; +# remove this once the bug is fixed. +grep @top_builddir@ po/Makefile.in.in >/dev/null || { + echo "$0: prepending 'top_builddir=@top_builddir@' to po/Makefile.in.in ... " + old_contents=$(cat po/Makefile.in.in) || exit + cat >po/Makefile.in.in <po/Makevars ..." +sed '/^MSGID_BUGS_ADDRESS *=/s/=.*/= bug-bison@gnu.org/' po/Makevars.template >po/Makevars + + +# if src/parse-gram.[ch] are out of date, rebuild them. +parse_gram_y=$(find src/parse-gram.y \ + '(' -newer src/parse-gram.c -o -newer src/parse-gram.h ')' \ + -print) || exit +case $parse_gram_y in +?*) + echo "$0: warning: bootstrapping with old src/parse-gram.[ch] files." + + echo "$0: touch -c src/parse-gram.[ch] ... " + touch -c src/parse-gram.[ch] || exit + + echo "$0: ./configure --disable-nls ..." + ./configure --disable-nls || exit + + echo "$0: (cd lib && make) ..." + (cd lib && make) || exit + + echo "$0: (cd src && make) ..." + (cd src && make) || exit + + echo "$0: rm -f src/parse-gram.c src/parse-gram.h ..." + rm -f src/parse-gram.c src/parse-gram.h || exit + + echo "$0: (cd src && make parse-gram.c parse-gram.h) ..." + (cd src && make parse-gram.c parse-gram.h) || exit + + echo "$0: make distclean ..." + make distclean || exit;; +esac + +echo "$0: done. Now you can run './configure'." diff --git a/config/.cvsignore b/config/.cvsignore index 568a05fc..971508e4 100644 --- a/config/.cvsignore +++ b/config/.cvsignore @@ -1,11 +1,13 @@ -Makefile *.t +Makefile Makefile.in -mkinstalldirs -missing -config.sub config.guess +config.rpath +config.sub +depcomp +install-sh mdate-sh +missing +mkinstalldirs texinfo.tex -config.rpath ylwrap diff --git a/config/depcomp b/config/depcomp deleted file mode 100755 index 9e5522d0..00000000 --- a/config/depcomp +++ /dev/null @@ -1,520 +0,0 @@ -#! /bin/sh -# depcomp - compile a program generating dependencies as side-effects - -scriptversion=2003-11-08.23 - -# Copyright (C) 1999, 2000, 2003 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# As a special exception to the GNU General Public License, if you -# distribute this file as part of a program that contains a -# configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - -# Originally written by Alexandre Oliva . - -case $1 in - '') - echo "$0: No command. Try \`$0 --help' for more information." 1>&2 - exit 1; - ;; - -h | --h*) - cat <<\EOF -Usage: depcomp [--help] [--version] PROGRAM [ARGS] - -Run PROGRAMS ARGS to compile a file, generating dependencies -as side-effects. - -Environment variables: - depmode Dependency tracking mode. - source Source file read by `PROGRAMS ARGS'. - object Object file output by `PROGRAMS ARGS'. - depfile Dependency file to output. - tmpdepfile Temporary file to use when outputing dependencies. - libtool Whether libtool is used (yes/no). - -Report bugs to . -EOF - exit 0 - ;; - -v | --v*) - echo "depcomp $scriptversion" - exit 0 - ;; -esac - -if test -z "$depmode" || test -z "$source" || test -z "$object"; then - echo "depcomp: Variables source, object and depmode must be set" 1>&2 - exit 1 -fi -# `libtool' can also be set to `yes' or `no'. - -if test -z "$depfile"; then - base=`echo "$object" | sed -e 's,^.*/,,' -e 's,\.\([^.]*\)$,.P\1,'` - dir=`echo "$object" | sed 's,/.*$,/,'` - if test "$dir" = "$object"; then - dir= - fi - # FIXME: should be _deps on DOS. - depfile="$dir.deps/$base" -fi - -tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} - -rm -f "$tmpdepfile" - -# Some modes work just like other modes, but use different flags. We -# parameterize here, but still list the modes in the big case below, -# to make depend.m4 easier to write. Note that we *cannot* use a case -# here, because this file can only contain one case statement. -if test "$depmode" = hp; then - # HP compiler uses -M and no extra arg. - gccflag=-M - depmode=gcc -fi - -if test "$depmode" = dashXmstdout; then - # This is just like dashmstdout with a different argument. - dashmflag=-xM - depmode=dashmstdout -fi - -case "$depmode" in -gcc3) -## gcc 3 implements dependency tracking that does exactly what -## we want. Yay! Note: for some reason libtool 1.4 doesn't like -## it if -MD -MP comes after the -MF stuff. Hmm. - "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - mv "$tmpdepfile" "$depfile" - ;; - -gcc) -## There are various ways to get dependency output from gcc. Here's -## why we pick this rather obscure method: -## - Don't want to use -MD because we'd like the dependencies to end -## up in a subdir. Having to rename by hand is ugly. -## (We might end up doing this anyway to support other compilers.) -## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like -## -MM, not -M (despite what the docs say). -## - Using -M directly means running the compiler twice (even worse -## than renaming). - if test -z "$gccflag"; then - gccflag=-MD, - fi - "$@" -Wp,"$gccflag$tmpdepfile" - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - echo "$object : \\" > "$depfile" - alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz -## The second -e expression handles DOS-style file names with drive letters. - sed -e 's/^[^:]*: / /' \ - -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" -## This next piece of magic avoids the `deleted header file' problem. -## The problem is that when a header file which appears in a .P file -## is deleted, the dependency causes make to die (because there is -## typically no way to rebuild the header). We avoid this by adding -## dummy dependencies for each header file. Too bad gcc doesn't do -## this for us directly. - tr ' ' ' -' < "$tmpdepfile" | -## Some versions of gcc put a space before the `:'. On the theory -## that the space means something, we add a space to the output as -## well. -## Some versions of the HPUX 10.20 sed can't process this invocation -## correctly. Breaking it into two sed invocations is a workaround. - sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -hp) - # This case exists only to let depend.m4 do its work. It works by - # looking at the text of this script. This case will never be run, - # since it is checked for above. - exit 1 - ;; - -sgi) - if test "$libtool" = yes; then - "$@" "-Wp,-MDupdate,$tmpdepfile" - else - "$@" -MDupdate "$tmpdepfile" - fi - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - - if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files - echo "$object : \\" > "$depfile" - - # Clip off the initial element (the dependent). Don't try to be - # clever and replace this with sed code, as IRIX sed won't handle - # lines with more than a fixed number of characters (4096 in - # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; - # the IRIX cc adds comments like `#:fec' to the end of the - # dependency line. - tr ' ' ' -' < "$tmpdepfile" \ - | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ - tr ' -' ' ' >> $depfile - echo >> $depfile - - # The second pass generates a dummy entry for each header file. - tr ' ' ' -' < "$tmpdepfile" \ - | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ - >> $depfile - else - # The sourcefile does not contain any dependencies, so just - # store a dummy comment line, to avoid errors with the Makefile - # "include basename.Plo" scheme. - echo "#dummy" > "$depfile" - fi - rm -f "$tmpdepfile" - ;; - -aix) - # The C for AIX Compiler uses -M and outputs the dependencies - # in a .u file. In older versions, this file always lives in the - # current directory. Also, the AIX compiler puts `$object:' at the - # start of each line; $object doesn't have directory information. - # Version 6 uses the directory in both cases. - stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'` - tmpdepfile="$stripped.u" - if test "$libtool" = yes; then - "$@" -Wc,-M - else - "$@" -M - fi - stat=$? - - if test -f "$tmpdepfile"; then : - else - stripped=`echo "$stripped" | sed 's,^.*/,,'` - tmpdepfile="$stripped.u" - fi - - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - - if test -f "$tmpdepfile"; then - outname="$stripped.o" - # Each line is of the form `foo.o: dependent.h'. - # Do two passes, one to just change these to - # `$object: dependent.h' and one to simply `dependent.h:'. - sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile" - sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile" - else - # The sourcefile does not contain any dependencies, so just - # store a dummy comment line, to avoid errors with the Makefile - # "include basename.Plo" scheme. - echo "#dummy" > "$depfile" - fi - rm -f "$tmpdepfile" - ;; - -icc) - # Intel's C compiler understands `-MD -MF file'. However on - # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c - # ICC 7.0 will fill foo.d with something like - # foo.o: sub/foo.c - # foo.o: sub/foo.h - # which is wrong. We want: - # sub/foo.o: sub/foo.c - # sub/foo.o: sub/foo.h - # sub/foo.c: - # sub/foo.h: - # ICC 7.1 will output - # foo.o: sub/foo.c sub/foo.h - # and will wrap long lines using \ : - # foo.o: sub/foo.c ... \ - # sub/foo.h ... \ - # ... - - "$@" -MD -MF "$tmpdepfile" - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile" - exit $stat - fi - rm -f "$depfile" - # Each line is of the form `foo.o: dependent.h', - # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. - # Do two passes, one to just change these to - # `$object: dependent.h' and one to simply `dependent.h:'. - sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" - # Some versions of the HPUX 10.20 sed can't process this invocation - # correctly. Breaking it into two sed invocations is a workaround. - sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | - sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -tru64) - # The Tru64 compiler uses -MD to generate dependencies as a side - # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. - # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put - # dependencies in `foo.d' instead, so we check for that too. - # Subdirectories are respected. - dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` - test "x$dir" = "x$object" && dir= - base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` - - if test "$libtool" = yes; then - tmpdepfile1="$dir.libs/$base.lo.d" - tmpdepfile2="$dir.libs/$base.d" - "$@" -Wc,-MD - else - tmpdepfile1="$dir$base.o.d" - tmpdepfile2="$dir$base.d" - "$@" -MD - fi - - stat=$? - if test $stat -eq 0; then : - else - rm -f "$tmpdepfile1" "$tmpdepfile2" - exit $stat - fi - - if test -f "$tmpdepfile1"; then - tmpdepfile="$tmpdepfile1" - else - tmpdepfile="$tmpdepfile2" - fi - if test -f "$tmpdepfile"; then - sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" - # That's a tab and a space in the []. - sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" - else - echo "#dummy" > "$depfile" - fi - rm -f "$tmpdepfile" - ;; - -#nosideeffect) - # This comment above is used by automake to tell side-effect - # dependency tracking mechanisms from slower ones. - -dashmstdout) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout, regardless of -o. - "$@" || exit $? - - # Remove the call to Libtool. - if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do - shift - done - shift - fi - - # Remove `-o $object'. - IFS=" " - for arg - do - case $arg in - -o) - shift - ;; - $object) - shift - ;; - *) - set fnord "$@" "$arg" - shift # fnord - shift # $arg - ;; - esac - done - - test -z "$dashmflag" && dashmflag=-M - # Require at least two characters before searching for `:' - # in the target name. This is to cope with DOS-style filenames: - # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. - "$@" $dashmflag | - sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" - rm -f "$depfile" - cat < "$tmpdepfile" > "$depfile" - tr ' ' ' -' < "$tmpdepfile" | \ -## Some versions of the HPUX 10.20 sed can't process this invocation -## correctly. Breaking it into two sed invocations is a workaround. - sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -dashXmstdout) - # This case only exists to satisfy depend.m4. It is never actually - # run, as this mode is specially recognized in the preamble. - exit 1 - ;; - -makedepend) - "$@" || exit $? - # Remove any Libtool call - if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do - shift - done - shift - fi - # X makedepend - shift - cleared=no - for arg in "$@"; do - case $cleared in - no) - set ""; shift - cleared=yes ;; - esac - case "$arg" in - -D*|-I*) - set fnord "$@" "$arg"; shift ;; - # Strip any option that makedepend may not understand. Remove - # the object too, otherwise makedepend will parse it as a source file. - -*|$object) - ;; - *) - set fnord "$@" "$arg"; shift ;; - esac - done - obj_suffix="`echo $object | sed 's/^.*\././'`" - touch "$tmpdepfile" - ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" - rm -f "$depfile" - cat < "$tmpdepfile" > "$depfile" - sed '1,2d' "$tmpdepfile" | tr ' ' ' -' | \ -## Some versions of the HPUX 10.20 sed can't process this invocation -## correctly. Breaking it into two sed invocations is a workaround. - sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" "$tmpdepfile".bak - ;; - -cpp) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout. - "$@" || exit $? - - # Remove the call to Libtool. - if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do - shift - done - shift - fi - - # Remove `-o $object'. - IFS=" " - for arg - do - case $arg in - -o) - shift - ;; - $object) - shift - ;; - *) - set fnord "$@" "$arg" - shift # fnord - shift # $arg - ;; - esac - done - - "$@" -E | - sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | - sed '$ s: \\$::' > "$tmpdepfile" - rm -f "$depfile" - echo "$object : \\" > "$depfile" - cat < "$tmpdepfile" >> "$depfile" - sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -msvisualcpp) - # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout, regardless of -o, - # because we must use -o when running libtool. - "$@" || exit $? - IFS=" " - for arg - do - case "$arg" in - "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") - set fnord "$@" - shift - shift - ;; - *) - set fnord "$@" "$arg" - shift - shift - ;; - esac - done - "$@" -E | - sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" - rm -f "$depfile" - echo "$object : \\" > "$depfile" - . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" - echo " " >> "$depfile" - . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile" - rm -f "$tmpdepfile" - ;; - -none) - exec "$@" - ;; - -*) - echo "Unknown depmode $depmode" 1>&2 - exit 1 - ;; -esac - -exit 0 - -# Local Variables: -# mode: shell-script -# sh-indentation: 2 -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" -# End: diff --git a/config/install-sh b/config/install-sh deleted file mode 100755 index 77bc3814..00000000 --- a/config/install-sh +++ /dev/null @@ -1,316 +0,0 @@ -#!/bin/sh -# install - install a program, script, or datafile - -scriptversion=2004-02-15.20 - -# This originates from X11R5 (mit/util/scripts/install.sh), which was -# later released in X11R6 (xc/config/util/install.sh) with the -# following copyright and license. -# -# Copyright (C) 1994 X Consortium -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to -# deal in the Software without restriction, including without limitation the -# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or -# sell copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- -# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -# -# Except as contained in this notice, the name of the X Consortium shall not -# be used in advertising or otherwise to promote the sale, use or other deal- -# ings in this Software without prior written authorization from the X Consor- -# tium. -# -# -# FSF changes to this file are in the public domain. -# -# Calling this script install-sh is preferred over install.sh, to prevent -# `make' implicit rules from creating a file called install from it -# when there is no Makefile. -# -# This script is compatible with the BSD install script, but was written -# from scratch. It can only install one file at a time, a restriction -# shared with many OS's install programs. - -# set DOITPROG to echo to test this script - -# Don't use :- since 4.3BSD and earlier shells don't like it. -doit="${DOITPROG-}" - -# put in absolute paths if you don't have them in your path; or use env. vars. - -mvprog="${MVPROG-mv}" -cpprog="${CPPROG-cp}" -chmodprog="${CHMODPROG-chmod}" -chownprog="${CHOWNPROG-chown}" -chgrpprog="${CHGRPPROG-chgrp}" -stripprog="${STRIPPROG-strip}" -rmprog="${RMPROG-rm}" -mkdirprog="${MKDIRPROG-mkdir}" - -transformbasename= -transform_arg= -instcmd="$mvprog" -chmodcmd="$chmodprog 0755" -chowncmd= -chgrpcmd= -stripcmd= -rmcmd="$rmprog -f" -mvcmd="$mvprog" -src= -dst= -dir_arg= - -usage="Usage: $0 [OPTION]... SRCFILE DSTFILE - or: $0 [OPTION]... SRCFILES... DIRECTORY - or: $0 -d DIRECTORIES... - -In the first form, install SRCFILE to DSTFILE, removing SRCFILE by default. -In the second, create the directory path DIR. - -Options: --b=TRANSFORMBASENAME --c copy source (using $cpprog) instead of moving (using $mvprog). --d create directories instead of installing files. --g GROUP $chgrp installed files to GROUP. --m MODE $chmod installed files to MODE. --o USER $chown installed files to USER. --s strip installed files (using $stripprog). --t=TRANSFORM ---help display this help and exit. ---version display version info and exit. - -Environment variables override the default commands: - CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG -" - -while test -n "$1"; do - case $1 in - -b=*) transformbasename=`echo $1 | sed 's/-b=//'` - shift - continue;; - - -c) instcmd=$cpprog - shift - continue;; - - -d) dir_arg=true - shift - continue;; - - -g) chgrpcmd="$chgrpprog $2" - shift - shift - continue;; - - --help) echo "$usage"; exit 0;; - - -m) chmodcmd="$chmodprog $2" - shift - shift - continue;; - - -o) chowncmd="$chownprog $2" - shift - shift - continue;; - - -s) stripcmd=$stripprog - shift - continue;; - - -t=*) transformarg=`echo $1 | sed 's/-t=//'` - shift - continue;; - - --version) echo "$0 $scriptversion"; exit 0;; - - *) # When -d is used, all remaining arguments are directories to create. - test -n "$dir_arg" && break - # Otherwise, the last argument is the destination. Remove it from $@. - for arg - do - if test -n "$dstarg"; then - # $@ is not empty: it contains at least $arg. - set fnord "$@" "$dstarg" - shift # fnord - fi - shift # arg - dstarg=$arg - done - break;; - esac -done - -if test -z "$1"; then - if test -z "$dir_arg"; then - echo "$0: no input file specified." >&2 - exit 1 - fi - # It's OK to call `install-sh -d' without argument. - # This can happen when creating conditional directories. - exit 0 -fi - -for src -do - # Protect names starting with `-'. - case $src in - -*) src=./$src ;; - esac - - if test -n "$dir_arg"; then - dst=$src - src= - - if test -d "$dst"; then - instcmd=: - chmodcmd= - else - instcmd=$mkdirprog - fi - else - # Waiting for this to be detected by the "$instcmd $src $dsttmp" command - # might cause directories to be created, which would be especially bad - # if $src (and thus $dsttmp) contains '*'. - if test ! -f "$src" && test ! -d "$src"; then - echo "$0: $src does not exist." >&2 - exit 1 - fi - - if test -z "$dstarg"; then - echo "$0: no destination specified." >&2 - exit 1 - fi - - dst=$dstarg - # Protect names starting with `-'. - case $dst in - -*) dst=./$dst ;; - esac - - # If destination is a directory, append the input filename; won't work - # if double slashes aren't ignored. - if test -d "$dst"; then - dst=$dst/`basename "$src"` - fi - fi - - # This sed command emulates the dirname command. - dstdir=`echo "$dst" | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'` - - # Make sure that the destination directory exists. - - # Skip lots of stat calls in the usual case. - if test ! -d "$dstdir"; then - defaultIFS=' - ' - IFS="${IFS-$defaultIFS}" - - oIFS=$IFS - # Some sh's can't handle IFS=/ for some reason. - IFS='%' - set - `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` - IFS=$oIFS - - pathcomp= - - while test $# -ne 0 ; do - pathcomp=$pathcomp$1 - shift - if test ! -d "$pathcomp"; then - $mkdirprog "$pathcomp" || lasterr=$? - # mkdir can fail with a `File exist' error in case several - # install-sh are creating the directory concurrently. This - # is OK. - test ! -d "$pathcomp" && { (exit ${lasterr-1}); exit; } - fi - pathcomp=$pathcomp/ - done - fi - - if test -n "$dir_arg"; then - $doit $instcmd "$dst" \ - && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \ - && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \ - && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \ - && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; } - - else - # If we're going to rename the final executable, determine the name now. - if test -z "$transformarg"; then - dstfile=`basename "$dst"` - else - dstfile=`basename "$dst" $transformbasename \ - | sed $transformarg`$transformbasename - fi - - # don't allow the sed command to completely eliminate the filename. - test -z "$dstfile" && dstfile=`basename "$dst"` - - # Make a couple of temp file names in the proper directory. - dsttmp=$dstdir/_inst.$$_ - rmtmp=$dstdir/_rm.$$_ - - # Trap to clean up those temp files at exit. - trap 'status=$?; rm -f "$dsttmp" "$rmtmp" && exit $status' 0 - trap '(exit $?); exit' 1 2 13 15 - - # Move or copy the file name to the temp name - $doit $instcmd "$src" "$dsttmp" && - - # and set any options; do chmod last to preserve setuid bits. - # - # If any of these fail, we abort the whole thing. If we want to - # ignore errors from any of these, just make sure not to ignore - # errors from the above "$doit $instcmd $src $dsttmp" command. - # - { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \ - && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \ - && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \ - && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } && - - # Now remove or move aside any old file at destination location. We - # try this two ways since rm can't unlink itself on some systems and - # the destination file might be busy for other reasons. In this case, - # the final cleanup might fail but the new file should still install - # successfully. - { - if test -f "$dstdir/$dstfile"; then - $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \ - || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \ - || { - echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2 - (exit 1); exit - } - else - : - fi - } && - - # Now rename the file to the real destination. - $doit $mvcmd "$dsttmp" "$dstdir/$dstfile" - fi || { (exit 1); exit; } -done - -# The final little trick to "correctly" pass the exit status to the exit trap. -{ - (exit 0); exit -} - -# Local variables: -# eval: (add-hook 'write-file-hooks 'time-stamp) -# time-stamp-start: "scriptversion=" -# time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" -# End: diff --git a/configure.ac b/configure.ac index 7a661f2e..930dfb15 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,6 @@ # Configure template for GNU Bison. -*-Autoconf-*- # -# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc. +# Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -21,17 +21,16 @@ AC_PREREQ(2.57) AC_INIT([GNU Bison], [1.875c], [bug-bison@gnu.org]) -AC_CONFIG_AUX_DIR(config) +AC_CONFIG_AUX_DIR([config]) +AC_CONFIG_MACRO_DIR([m4]) AM_INIT_AUTOMAKE([1.7 check-news readme-alpha dist-bzip2]) AC_CONFIG_HEADERS([config.h:config.hin]) +gl_USE_SYSTEM_EXTENSIONS + # Checks for the compiler. AC_PROG_CC -# Remove with Automake 1.8. -AC_ISC_POSIX -AC_GNU_SOURCE -AC_MINIX AM_PROG_CC_STDC AC_ARG_ENABLE(gcc-warnings, [ --enable-gcc-warnings turn on lots of GCC warnings (not recommended)], @@ -87,8 +86,7 @@ fi AC_DEFINE_UNQUOTED([M4], ["$M4"], [Define to the GNU M4 executable name.]) # Checks for header files. -AC_HEADER_STDC -AC_CHECK_HEADERS([ctype.h locale.h memory.h stdlib.h string.h unistd.h]) +AC_CHECK_HEADERS_ONCE([locale.h]) AM_STDBOOL_H # Checks for compiler characteristics. @@ -98,36 +96,14 @@ AC_C_INLINE AC_CHECK_TYPES([uintptr_t]) # Checks for library functions. -AC_CHECK_FUNCS(setlocale) -AC_CHECK_DECLS([free, getenv, getopt, - stpcpy, strchr, strspn, strnlen, - malloc, memchr, memrchr]) -AC_REPLACE_FUNCS(strchr strrchr strspn) +AC_CHECK_FUNCS_ONCE([setlocale]) AM_WITH_DMALLOC BISON_PREREQ_SUBPIPE BISON_PREREQ_TIMEVAR -gl_DIRNAME -gl_ERROR -gl_FUNC_ALLOCA -gl_FUNC_MEMCHR -gl_FUNC_MEMRCHR -gl_FUNC_STPCPY -gl_FUNC_STRNLEN -gl_FUNC_STRTOL -gl_GETOPT -gl_HASH -gl_MBSWIDTH -gl_OBSTACK -gl_QUOTE -gl_QUOTEARG -gl_XALLOC -jm_FUNC_GLIBC_UNLOCKED_IO -jm_FUNC_MALLOC -jm_FUNC_REALLOC -# Gettext. -AM_GNU_GETTEXT([external], [need-ngettext]) -AM_GNU_GETTEXT_VERSION(0.12.1) +# gnulib and gettext. +GNULIB_AUTOCONF_SNIPPET +AM_GNU_GETTEXT_VERSION([0.14.1]) # Initialize the test suite. AC_CONFIG_TESTDIR(tests) @@ -145,6 +121,5 @@ AC_CONFIG_FILES([Makefile config/Makefile po/Makefile.in data/Makefile - lib/Makefile src/Makefile doc/Makefile - m4/Makefile]) + lib/Makefile src/Makefile doc/Makefile]) AC_OUTPUT diff --git a/lib/.cvsignore b/lib/.cvsignore index e4b8df62..2f7c82c5 100644 --- a/lib/.cvsignore +++ b/lib/.cvsignore @@ -2,4 +2,59 @@ .deps Makefile Makefile.in +alloca.c +alloca.h +alloca_.h +argmatch.c +argmatch.h +basename.c +dirname.c +dirname.h +error.c +error.h +exit.h +exitfail.c +exitfail.h +getopt.c +getopt.h +getopt1.c +getopt_int.h +gettext.h +gnulib.mk +hard-locale.c +hard-locale.h +hash.c +hash.h +malloc.c +mbswidth.c +mbswidth.h +memchr.c +memcmp.c +memrchr.c +obstack.c +obstack.h +quote.c +quote.h +quotearg.c +quotearg.h +realloc.c stdbool.h +stdbool_.h +stpcpy.c +stpcpy.h +strcasecmp.c +strchr.c +stripslash.c +strncasecmp.c +strndup.c +strnlen.c +strrchr.c +strspn.c +strtol.c +strtoul.c +unlocked-io.h +xalloc.h +xmalloc.c +xstrdup.c +xstrndup.c +xstrndup.h diff --git a/lib/Makefile.am b/lib/Makefile.am index 1c9679d8..9a92666e 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -17,36 +17,20 @@ AM_CFLAGS = $(WARNING_CFLAGS) +BUILT_SOURCES = +EXTRA_DIST = +MOSTLYCLEANFILES = + lib_LIBRARIES = $(YACC_LIBRARY) EXTRA_LIBRARIES = liby.a noinst_LIBRARIES = libbison.a liby_a_SOURCES = main.c yyerror.c -# Heck, we are still using an old version of Automake which does not -# understand inner AC_LIBOBJ (i.e., from Autoconf itself, not from -# configure.in). -EXTRA_DIST = malloc.c realloc.c stdbool_.h strnlen.c -MOSTLYCLEANFILES = stdbool.h stdbool.h-t - -# We need the following in order to create an when the system -# doesn't have one that works. -$(libbison_a_OBJECTS): $(STDBOOL_H) -stdbool.h: stdbool_.h - sed -e 's/@''HAVE__BOOL''@/$(HAVE__BOOL)/g' <$(srcdir)/stdbool_.h >$@-t - mv $@-t $@ - -libbison_a_SOURCES = \ - gettext.h \ - argmatch.c argmatch.h \ - basename.c dirname.h dirname.c \ +libbison_a_SOURCES = $(lib_SOURCES) +lib_SOURCES = \ get-errno.h get-errno.c \ - getopt.h getopt.c getopt1.c \ - hash.h hash.c \ - mbswidth.h mbswidth.c \ - quote.h quote.c quotearg.h quotearg.c \ - subpipe.h subpipe.c unlocked-io.h \ - xalloc.h xmalloc.c xstrdup.c xstrndup.c \ + subpipe.h subpipe.c \ $(bitsets_sources) $(additional_bitsets_sources) $(timevars_sources) # Implementation of bitsets @@ -65,3 +49,5 @@ timevars_sources = \ libbison_a_LIBADD = $(LIBOBJS) $(ALLOCA) libbison_a_DEPENDENCIES = $(libbison_a_LIBADD) + +include gnulib.mk diff --git a/lib/alloca.c b/lib/alloca.c deleted file mode 100644 index fd95a34d..00000000 --- a/lib/alloca.c +++ /dev/null @@ -1,508 +0,0 @@ -/* alloca.c -- allocate automatically reclaimed memory - (Mostly) portable public-domain implementation -- D A Gwyn - - This implementation of the PWB library alloca function, - which is used to allocate space off the run-time stack so - that it is automatically reclaimed upon procedure exit, - was inspired by discussions with J. Q. Johnson of Cornell. - J.Otto Tennant contributed the Cray support. - - There are some preprocessor constants that can - be defined when compiling for your specific system, for - improved efficiency; however, the defaults should be okay. - - The general concept of this implementation is to keep - track of all alloca-allocated blocks, and reclaim any - that are found to be deeper in the stack than the current - invocation. This heuristic does not reclaim storage as - soon as it becomes invalid, but it will do so eventually. - - As a special case, alloca(0) reclaims storage without - allocating any. It is a good idea to use alloca(0) in - your main control loop, etc. to force garbage collection. */ - -#ifdef HAVE_CONFIG_H -# include -#endif - -#if HAVE_STRING_H -# include -#endif -#if HAVE_STDLIB_H -# include -#endif - -#ifdef emacs -# include "lisp.h" -# include "blockinput.h" -# define xalloc_die() memory_full () -# ifdef EMACS_FREE -# undef free -# define free EMACS_FREE -# endif -#else -# include -#endif - -/* If compiling with GCC 2, this file's not needed. */ -#if !defined (__GNUC__) || __GNUC__ < 2 - -/* If someone has defined alloca as a macro, - there must be some other way alloca is supposed to work. */ -# ifndef alloca - -# ifdef emacs -# ifdef static -/* actually, only want this if static is defined as "" - -- this is for usg, in which emacs must undefine static - in order to make unexec workable - */ -# ifndef STACK_DIRECTION -you -lose --- must know STACK_DIRECTION at compile-time -/* Using #error here is not wise since this file should work for - old and obscure compilers. */ -# endif /* STACK_DIRECTION undefined */ -# endif /* static */ -# endif /* emacs */ - -/* If your stack is a linked list of frames, you have to - provide an "address metric" ADDRESS_FUNCTION macro. */ - -# if defined (CRAY) && defined (CRAY_STACKSEG_END) -long i00afunc (); -# define ADDRESS_FUNCTION(arg) (char *) i00afunc (&(arg)) -# else -# define ADDRESS_FUNCTION(arg) &(arg) -# endif - -# ifndef POINTER_TYPE -# ifdef __STDC__ -# define POINTER_TYPE void -# else -# define POINTER_TYPE char -# endif -# endif -typedef POINTER_TYPE *pointer; - -# ifndef NULL -# define NULL 0 -# endif - -/* Define STACK_DIRECTION if you know the direction of stack - growth for your system; otherwise it will be automatically - deduced at run-time. - - STACK_DIRECTION > 0 => grows toward higher addresses - STACK_DIRECTION < 0 => grows toward lower addresses - STACK_DIRECTION = 0 => direction of growth unknown */ - -# ifndef STACK_DIRECTION -# define STACK_DIRECTION 0 /* Direction unknown. */ -# endif - -# if STACK_DIRECTION != 0 - -# define STACK_DIR STACK_DIRECTION /* Known at compile-time. */ - -# else /* STACK_DIRECTION == 0; need run-time code. */ - -static int stack_dir; /* 1 or -1 once known. */ -# define STACK_DIR stack_dir - -static void -find_stack_direction () -{ - static char *addr = NULL; /* Address of first `dummy', once known. */ - auto char dummy; /* To get stack address. */ - - if (addr == NULL) - { /* Initial entry. */ - addr = ADDRESS_FUNCTION (dummy); - - find_stack_direction (); /* Recurse once. */ - } - else - { - /* Second entry. */ - if (ADDRESS_FUNCTION (dummy) > addr) - stack_dir = 1; /* Stack grew upward. */ - else - stack_dir = -1; /* Stack grew downward. */ - } -} - -# endif /* STACK_DIRECTION == 0 */ - -/* An "alloca header" is used to: - (a) chain together all alloca'ed blocks; - (b) keep track of stack depth. - - It is very important that sizeof(header) agree with malloc - alignment chunk size. The following default should work okay. */ - -# ifndef ALIGN_SIZE -# define ALIGN_SIZE sizeof(double) -# endif - -typedef union hdr -{ - char align[ALIGN_SIZE]; /* To force sizeof(header). */ - struct - { - union hdr *next; /* For chaining headers. */ - char *deep; /* For stack depth measure. */ - } h; -} header; - -static header *last_alloca_header = NULL; /* -> last alloca header. */ - -/* Return a pointer to at least SIZE bytes of storage, - which will be automatically reclaimed upon exit from - the procedure that called alloca. Originally, this space - was supposed to be taken from the current stack frame of the - caller, but that method cannot be made to work for some - implementations of C, for example under Gould's UTX/32. */ - -pointer -alloca (size) - size_t size; -{ - auto char probe; /* Probes stack depth: */ - register char *depth = ADDRESS_FUNCTION (probe); - -# if STACK_DIRECTION == 0 - if (STACK_DIR == 0) /* Unknown growth direction. */ - find_stack_direction (); -# endif - - /* Reclaim garbage, defined as all alloca'd storage that - was allocated from deeper in the stack than currently. */ - - { - register header *hp; /* Traverses linked list. */ - -# ifdef emacs - BLOCK_INPUT; -# endif - - for (hp = last_alloca_header; hp != NULL;) - if ((STACK_DIR > 0 && hp->h.deep > depth) - || (STACK_DIR < 0 && hp->h.deep < depth)) - { - register header *np = hp->h.next; - - free ((pointer) hp); /* Collect garbage. */ - - hp = np; /* -> next header. */ - } - else - break; /* Rest are not deeper. */ - - last_alloca_header = hp; /* -> last valid storage. */ - -# ifdef emacs - UNBLOCK_INPUT; -# endif - } - - if (size == 0) - return NULL; /* No allocation required. */ - - /* Allocate combined header + user data storage. */ - - { - /* Address of header. */ - register pointer new; - - size_t combined_size = sizeof (header) + size; - if (combined_size < sizeof (header)) - xalloc_die (); - - new = xmalloc (combined_size); - - if (new == 0) - abort(); - - ((header *) new)->h.next = last_alloca_header; - ((header *) new)->h.deep = depth; - - last_alloca_header = (header *) new; - - /* User storage begins just after header. */ - - return (pointer) ((char *) new + sizeof (header)); - } -} - -# if defined (CRAY) && defined (CRAY_STACKSEG_END) - -# ifdef DEBUG_I00AFUNC -# include -# endif - -# ifndef CRAY_STACK -# define CRAY_STACK -# ifndef CRAY2 -/* Stack structures for CRAY-1, CRAY X-MP, and CRAY Y-MP */ -struct stack_control_header - { - long shgrow:32; /* Number of times stack has grown. */ - long shaseg:32; /* Size of increments to stack. */ - long shhwm:32; /* High water mark of stack. */ - long shsize:32; /* Current size of stack (all segments). */ - }; - -/* The stack segment linkage control information occurs at - the high-address end of a stack segment. (The stack - grows from low addresses to high addresses.) The initial - part of the stack segment linkage control information is - 0200 (octal) words. This provides for register storage - for the routine which overflows the stack. */ - -struct stack_segment_linkage - { - long ss[0200]; /* 0200 overflow words. */ - long sssize:32; /* Number of words in this segment. */ - long ssbase:32; /* Offset to stack base. */ - long:32; - long sspseg:32; /* Offset to linkage control of previous - segment of stack. */ - long:32; - long sstcpt:32; /* Pointer to task common address block. */ - long sscsnm; /* Private control structure number for - microtasking. */ - long ssusr1; /* Reserved for user. */ - long ssusr2; /* Reserved for user. */ - long sstpid; /* Process ID for pid based multi-tasking. */ - long ssgvup; /* Pointer to multitasking thread giveup. */ - long sscray[7]; /* Reserved for Cray Research. */ - long ssa0; - long ssa1; - long ssa2; - long ssa3; - long ssa4; - long ssa5; - long ssa6; - long ssa7; - long sss0; - long sss1; - long sss2; - long sss3; - long sss4; - long sss5; - long sss6; - long sss7; - }; - -# else /* CRAY2 */ -/* The following structure defines the vector of words - returned by the STKSTAT library routine. */ -struct stk_stat - { - long now; /* Current total stack size. */ - long maxc; /* Amount of contiguous space which would - be required to satisfy the maximum - stack demand to date. */ - long high_water; /* Stack high-water mark. */ - long overflows; /* Number of stack overflow ($STKOFEN) calls. */ - long hits; /* Number of internal buffer hits. */ - long extends; /* Number of block extensions. */ - long stko_mallocs; /* Block allocations by $STKOFEN. */ - long underflows; /* Number of stack underflow calls ($STKRETN). */ - long stko_free; /* Number of deallocations by $STKRETN. */ - long stkm_free; /* Number of deallocations by $STKMRET. */ - long segments; /* Current number of stack segments. */ - long maxs; /* Maximum number of stack segments so far. */ - long pad_size; /* Stack pad size. */ - long current_address; /* Current stack segment address. */ - long current_size; /* Current stack segment size. This - number is actually corrupted by STKSTAT to - include the fifteen word trailer area. */ - long initial_address; /* Address of initial segment. */ - long initial_size; /* Size of initial segment. */ - }; - -/* The following structure describes the data structure which trails - any stack segment. I think that the description in 'asdef' is - out of date. I only describe the parts that I am sure about. */ - -struct stk_trailer - { - long this_address; /* Address of this block. */ - long this_size; /* Size of this block (does not include - this trailer). */ - long unknown2; - long unknown3; - long link; /* Address of trailer block of previous - segment. */ - long unknown5; - long unknown6; - long unknown7; - long unknown8; - long unknown9; - long unknown10; - long unknown11; - long unknown12; - long unknown13; - long unknown14; - }; - -# endif /* CRAY2 */ -# endif /* not CRAY_STACK */ - -# ifdef CRAY2 -/* Determine a "stack measure" for an arbitrary ADDRESS. - I doubt that "lint" will like this much. */ - -static long -i00afunc (long *address) -{ - struct stk_stat status; - struct stk_trailer *trailer; - long *block, size; - long result = 0; - - /* We want to iterate through all of the segments. The first - step is to get the stack status structure. We could do this - more quickly and more directly, perhaps, by referencing the - $LM00 common block, but I know that this works. */ - - STKSTAT (&status); - - /* Set up the iteration. */ - - trailer = (struct stk_trailer *) (status.current_address - + status.current_size - - 15); - - /* There must be at least one stack segment. Therefore it is - a fatal error if "trailer" is null. */ - - if (trailer == 0) - abort (); - - /* Discard segments that do not contain our argument address. */ - - while (trailer != 0) - { - block = (long *) trailer->this_address; - size = trailer->this_size; - if (block == 0 || size == 0) - abort (); - trailer = (struct stk_trailer *) trailer->link; - if ((block <= address) && (address < (block + size))) - break; - } - - /* Set the result to the offset in this segment and add the sizes - of all predecessor segments. */ - - result = address - block; - - if (trailer == 0) - { - return result; - } - - do - { - if (trailer->this_size <= 0) - abort (); - result += trailer->this_size; - trailer = (struct stk_trailer *) trailer->link; - } - while (trailer != 0); - - /* We are done. Note that if you present a bogus address (one - not in any segment), you will get a different number back, formed - from subtracting the address of the first block. This is probably - not what you want. */ - - return (result); -} - -# else /* not CRAY2 */ -/* Stack address function for a CRAY-1, CRAY X-MP, or CRAY Y-MP. - Determine the number of the cell within the stack, - given the address of the cell. The purpose of this - routine is to linearize, in some sense, stack addresses - for alloca. */ - -static long -i00afunc (long address) -{ - long stkl = 0; - - long size, pseg, this_segment, stack; - long result = 0; - - struct stack_segment_linkage *ssptr; - - /* Register B67 contains the address of the end of the - current stack segment. If you (as a subprogram) store - your registers on the stack and find that you are past - the contents of B67, you have overflowed the segment. - - B67 also points to the stack segment linkage control - area, which is what we are really interested in. */ - - stkl = CRAY_STACKSEG_END (); - ssptr = (struct stack_segment_linkage *) stkl; - - /* If one subtracts 'size' from the end of the segment, - one has the address of the first word of the segment. - - If this is not the first segment, 'pseg' will be - nonzero. */ - - pseg = ssptr->sspseg; - size = ssptr->sssize; - - this_segment = stkl - size; - - /* It is possible that calling this routine itself caused - a stack overflow. Discard stack segments which do not - contain the target address. */ - - while (!(this_segment <= address && address <= stkl)) - { -# ifdef DEBUG_I00AFUNC - fprintf (stderr, "%011o %011o %011o\n", this_segment, address, stkl); -# endif - if (pseg == 0) - break; - stkl = stkl - pseg; - ssptr = (struct stack_segment_linkage *) stkl; - size = ssptr->sssize; - pseg = ssptr->sspseg; - this_segment = stkl - size; - } - - result = address - this_segment; - - /* If you subtract pseg from the current end of the stack, - you get the address of the previous stack segment's end. - This seems a little convoluted to me, but I'll bet you save - a cycle somewhere. */ - - while (pseg != 0) - { -# ifdef DEBUG_I00AFUNC - fprintf (stderr, "%011o %011o\n", pseg, size); -# endif - stkl = stkl - pseg; - ssptr = (struct stack_segment_linkage *) stkl; - size = ssptr->sssize; - pseg = ssptr->sspseg; - result += size; - } - return (result); -} - -# endif /* not CRAY2 */ -# endif /* CRAY */ - -# endif /* no alloca */ -#endif /* not GCC version 2 */ diff --git a/lib/argmatch.c b/lib/argmatch.c deleted file mode 100644 index 39836325..00000000 --- a/lib/argmatch.c +++ /dev/null @@ -1,280 +0,0 @@ -/* argmatch.c -- find a match for a string in an array - - Copyright (C) 1990, 1998, 1999, 2001, 2002, 2003 Free Software - Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -/* Written by David MacKenzie - Modified by Akim Demaille */ - -#if HAVE_CONFIG_H -# include -#endif - -/* Specification. */ -#include "argmatch.h" - -#include -#include -#include - -#include "gettext.h" -#define _(msgid) gettext (msgid) - -#include "error.h" -#include "quotearg.h" -#include "quote.h" -#include "unlocked-io.h" - -/* When reporting an invalid argument, show nonprinting characters - by using the quoting style ARGMATCH_QUOTING_STYLE. Do not use - literal_quoting_style. */ -#ifndef ARGMATCH_QUOTING_STYLE -# define ARGMATCH_QUOTING_STYLE locale_quoting_style -#endif - -#ifndef EXIT_FAILURE -# define EXIT_FAILURE 1 -#endif - -/* Non failing version of argmatch call this function after failing. */ -#ifndef ARGMATCH_DIE -# define ARGMATCH_DIE exit (EXIT_FAILURE) -#endif - -#ifdef ARGMATCH_DIE_DECL -ARGMATCH_DIE_DECL; -#endif - -static void -__argmatch_die (void) -{ - ARGMATCH_DIE; -} - -/* Used by XARGMATCH and XARGCASEMATCH. See description in argmatch.h. - Default to __argmatch_die, but allow caller to change this at run-time. */ -argmatch_exit_fn argmatch_die = __argmatch_die; - - -/* If ARG is an unambiguous match for an element of the - null-terminated array ARGLIST, return the index in ARGLIST - of the matched element, else -1 if it does not match any element - or -2 if it is ambiguous (is a prefix of more than one element). - - If VALLIST is none null, use it to resolve ambiguities limited to - synonyms, i.e., for - "yes", "yop" -> 0 - "no", "nope" -> 1 - "y" is a valid argument, for `0', and "n" for `1'. */ - -int -argmatch (const char *arg, const char *const *arglist, - const char *vallist, size_t valsize) -{ - int i; /* Temporary index in ARGLIST. */ - size_t arglen; /* Length of ARG. */ - int matchind = -1; /* Index of first nonexact match. */ - int ambiguous = 0; /* If nonzero, multiple nonexact match(es). */ - - arglen = strlen (arg); - - /* Test all elements for either exact match or abbreviated matches. */ - for (i = 0; arglist[i]; i++) - { - if (!strncmp (arglist[i], arg, arglen)) - { - if (strlen (arglist[i]) == arglen) - /* Exact match found. */ - return i; - else if (matchind == -1) - /* First nonexact match found. */ - matchind = i; - else - { - /* Second nonexact match found. */ - if (vallist == NULL - || memcmp (vallist + valsize * matchind, - vallist + valsize * i, valsize)) - { - /* There is a real ambiguity, or we could not - disambiguate. */ - ambiguous = 1; - } - } - } - } - if (ambiguous) - return -2; - else - return matchind; -} - -/* Error reporting for argmatch. - CONTEXT is a description of the type of entity that was being matched. - VALUE is the invalid value that was given. - PROBLEM is the return value from argmatch. */ - -void -argmatch_invalid (const char *context, const char *value, int problem) -{ - char const *format = (problem == -1 - ? _("invalid argument %s for %s") - : _("ambiguous argument %s for %s")); - - error (0, 0, format, quotearg_n_style (0, ARGMATCH_QUOTING_STYLE, value), - quote_n (1, context)); -} - -/* List the valid arguments for argmatch. - ARGLIST is the same as in argmatch. - VALLIST is a pointer to an array of values. - VALSIZE is the size of the elements of VALLIST */ -void -argmatch_valid (const char *const *arglist, - const char *vallist, size_t valsize) -{ - int i; - const char *last_val = NULL; - - /* We try to put synonyms on the same line. The assumption is that - synonyms follow each other */ - fprintf (stderr, _("Valid arguments are:")); - for (i = 0; arglist[i]; i++) - if ((i == 0) - || memcmp (last_val, vallist + valsize * i, valsize)) - { - fprintf (stderr, "\n - `%s'", arglist[i]); - last_val = vallist + valsize * i; - } - else - { - fprintf (stderr, ", `%s'", arglist[i]); - } - putc ('\n', stderr); -} - -/* Never failing versions of the previous functions. - - CONTEXT is the context for which argmatch is called (e.g., - "--version-control", or "$VERSION_CONTROL" etc.). Upon failure, - calls the (supposed never to return) function EXIT_FN. */ - -int -__xargmatch_internal (const char *context, - const char *arg, const char *const *arglist, - const char *vallist, size_t valsize, - argmatch_exit_fn exit_fn) -{ - int res = argmatch (arg, arglist, vallist, valsize); - if (res >= 0) - /* Success. */ - return res; - - /* We failed. Explain why. */ - argmatch_invalid (context, arg, res); - argmatch_valid (arglist, vallist, valsize); - (*exit_fn) (); - - return -1; /* To please the compilers. */ -} - -/* Look for VALUE in VALLIST, an array of objects of size VALSIZE and - return the first corresponding argument in ARGLIST */ -const char * -argmatch_to_argument (const char *value, - const char *const *arglist, - const char *vallist, size_t valsize) -{ - int i; - - for (i = 0; arglist[i]; i++) - if (!memcmp (value, vallist + valsize * i, valsize)) - return arglist[i]; - return NULL; -} - -#ifdef TEST -/* - * Based on "getversion.c" by David MacKenzie - */ -char *program_name; -extern const char *getenv (); - -/* When to make backup files. */ -enum backup_type -{ - /* Never make backups. */ - none, - - /* Make simple backups of every file. */ - simple, - - /* Make numbered backups of files that already have numbered backups, - and simple backups of the others. */ - numbered_existing, - - /* Make numbered backups of every file. */ - numbered -}; - -/* Two tables describing arguments (keys) and their corresponding - values */ -static const char *const backup_args[] = -{ - "no", "none", "off", - "simple", "never", - "existing", "nil", - "numbered", "t", - 0 -}; - -static const enum backup_type backup_vals[] = -{ - none, none, none, - simple, simple, - numbered_existing, numbered_existing, - numbered, numbered -}; - -int -main (int argc, const char *const *argv) -{ - const char *cp; - enum backup_type backup_type = none; - - program_name = (char *) argv[0]; - - if (argc > 2) - { - fprintf (stderr, "Usage: %s [VERSION_CONTROL]\n", program_name); - exit (1); - } - - if ((cp = getenv ("VERSION_CONTROL"))) - backup_type = XARGMATCH ("$VERSION_CONTROL", cp, - backup_args, backup_vals); - - if (argc == 2) - backup_type = XARGMATCH (program_name, argv[1], - backup_args, backup_vals); - - printf ("The version control is `%s'\n", - ARGMATCH_TO_ARGUMENT (backup_type, backup_args, backup_vals)); - - return 0; -} -#endif diff --git a/lib/argmatch.h b/lib/argmatch.h deleted file mode 100644 index deb908fb..00000000 --- a/lib/argmatch.h +++ /dev/null @@ -1,109 +0,0 @@ -/* argmatch.h -- definitions and prototypes for argmatch.c - Copyright (C) 1990, 1998, 1999, 2001, 2002 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -/* Written by David MacKenzie - Modified by Akim Demaille */ - -#ifndef ARGMATCH_H_ -# define ARGMATCH_H_ 1 - -# include - -# define ARRAY_CARDINALITY(Array) (sizeof (Array) / sizeof *(Array)) - -# define ARGMATCH_CONSTRAINT(Arglist, Vallist) \ - (ARRAY_CARDINALITY (Arglist) == ARRAY_CARDINALITY (Vallist) + 1) - -/* Assert there are as many real arguments as there are values - (argument list ends with a NULL guard). ARGMATCH_VERIFY is - preferred, since it is guaranteed to be checked at compile-time. - ARGMATCH_ASSERT is for backward compatibility only. */ - -# define ARGMATCH_VERIFY(Arglist, Vallist) \ - struct argmatch_verify \ - { \ - char argmatch_verify[ARGMATCH_CONSTRAINT(Arglist, Vallist) ? 1 : -1]; \ - } - -# define ARGMATCH_ASSERT(Arglist, Vallist) \ - assert (ARGMATCH_CONSTRAINT (Arglist, Vallist)) - -/* Return the index of the element of ARGLIST (NULL terminated) that - matches with ARG. If VALLIST is not NULL, then use it to resolve - false ambiguities (i.e., different matches of ARG but corresponding - to the same values in VALLIST). */ - -int argmatch (char const *arg, char const *const *arglist, - char const *vallist, size_t valsize); - -# define ARGMATCH(Arg, Arglist, Vallist) \ - argmatch (Arg, Arglist, (char const *) (Vallist), sizeof *(Vallist)) - -/* xargmatch calls this function when it fails. This function should not - return. By default, this is a function that calls ARGMATCH_DIE which - in turn defaults to `exit (EXIT_FAILURE)'. */ -typedef void (*argmatch_exit_fn) (void); -extern argmatch_exit_fn argmatch_die; - -/* Report on stderr why argmatch failed. Report correct values. */ - -void argmatch_invalid (char const *context, char const *value, int problem); - -/* Left for compatibility with the old name invalid_arg */ - -# define invalid_arg(Context, Value, Problem) \ - argmatch_invalid (Context, Value, Problem) - - - -/* Report on stderr the list of possible arguments. */ - -void argmatch_valid (char const *const *arglist, - char const *vallist, size_t valsize); - -# define ARGMATCH_VALID(Arglist, Vallist) \ - argmatch_valid (Arglist, (char const *) (Vallist), sizeof *(Vallist)) - - - -/* Same as argmatch, but upon failure, reports a explanation on the - failure, and exits using the function EXIT_FN. */ - -int __xargmatch_internal (char const *context, - char const *arg, char const *const *arglist, - char const *vallist, size_t valsize, - argmatch_exit_fn exit_fn); - -/* Programmer friendly interface to __xargmatch_internal. */ - -# define XARGMATCH(Context, Arg, Arglist, Vallist) \ - ((Vallist) [__xargmatch_internal (Context, Arg, Arglist, \ - (char const *) (Vallist), \ - sizeof *(Vallist), \ - argmatch_die)]) - -/* Convert a value into a corresponding argument. */ - -char const *argmatch_to_argument (char const *value, - char const *const *arglist, - char const *vallist, size_t valsize); - -# define ARGMATCH_TO_ARGUMENT(Value, Arglist, Vallist) \ - argmatch_to_argument (Value, Arglist, \ - (char const *) (Vallist), sizeof *(Vallist)) - -#endif /* ARGMATCH_H_ */ diff --git a/lib/basename.c b/lib/basename.c deleted file mode 100644 index 54f037ed..00000000 --- a/lib/basename.c +++ /dev/null @@ -1,79 +0,0 @@ -/* basename.c -- return the last element in a path - Copyright (C) 1990, 1998, 1999, 2000, 2001 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#if HAVE_CONFIG_H -# include -#endif - -#if STDC_HEADERS || HAVE_STRING_H -# include -#endif -#include "dirname.h" - -/* In general, we can't use the builtin `basename' function if available, - since it has different meanings in different environments. - In some environments the builtin `basename' modifies its argument. - - Return the address of the last file name component of NAME. If - NAME has no file name components because it is all slashes, return - NAME if it is empty, the address of its last slash otherwise. */ - -char * -base_name (char const *name) -{ - char const *base = name + FILESYSTEM_PREFIX_LEN (name); - char const *p; - - for (p = base; *p; p++) - { - if (ISSLASH (*p)) - { - /* Treat multiple adjacent slashes like a single slash. */ - do p++; - while (ISSLASH (*p)); - - /* If the file name ends in slash, use the trailing slash as - the basename if no non-slashes have been found. */ - if (! *p) - { - if (ISSLASH (*base)) - base = p - 1; - break; - } - - /* *P is a non-slash preceded by a slash. */ - base = p; - } - } - - return (char *) base; -} - -/* Return the length of of the basename NAME. Typically NAME is the - value returned by base_name. Act like strlen (NAME), except omit - redundant trailing slashes. */ - -size_t -base_len (char const *name) -{ - size_t len; - - for (len = strlen (name); 1 < len && ISSLASH (name[len - 1]); len--) - continue; - - return len; -} diff --git a/lib/dirname.c b/lib/dirname.c deleted file mode 100644 index 131af8bb..00000000 --- a/lib/dirname.c +++ /dev/null @@ -1,121 +0,0 @@ -/* dirname.c -- return all but the last element in a path - Copyright 1990, 1998, 2000, 2001, 2003 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#if HAVE_CONFIG_H -# include -#endif - -#if STDC_HEADERS || HAVE_STRING_H -# include -#endif - -#include "dirname.h" -#include "xalloc.h" - -/* Return the length of `dirname (PATH)', or zero if PATH is - in the working directory. Works properly even if - there are trailing slashes (by effectively ignoring them). */ -size_t -dir_len (char const *path) -{ - size_t prefix_length = FILESYSTEM_PREFIX_LEN (path); - size_t length; - - /* Strip the basename and any redundant slashes before it. */ - for (length = base_name (path) - path; prefix_length < length; length--) - if (! ISSLASH (path[length - 1])) - return length; - - /* But don't strip the only slash from "/". */ - return prefix_length + ISSLASH (path[prefix_length]); -} - -/* Return the leading directories part of PATH, - allocated with xmalloc. - Works properly even if there are trailing slashes - (by effectively ignoring them). */ - -char * -dir_name (char const *path) -{ - size_t length = dir_len (path); - int append_dot = (length == FILESYSTEM_PREFIX_LEN (path)); - char *newpath = xmalloc (length + append_dot + 1); - memcpy (newpath, path, length); - if (append_dot) - newpath[length++] = '.'; - newpath[length] = 0; - return newpath; -} - -#ifdef TEST_DIRNAME -/* - -Run the test like this (expect no output): - gcc -DHAVE_CONFIG_H -DTEST_DIRNAME -I.. -O -Wall \ - basename.c dirname.c xmalloc.c error.c - sed -n '/^BEGIN-DATA$/,/^END-DATA$/p' dirname.c|grep -v DATA|./a.out - -If it's been built on a DOS or Windows platforms, run another test like -this (again, expect no output): - sed -n '/^BEGIN-DOS-DATA$/,/^END-DOS-DATA$/p' dirname.c|grep -v DATA|./a.out - -BEGIN-DATA -foo//// . -bar/foo//// bar -foo/ . -/ / -. . -a . -END-DATA - -BEGIN-DOS-DATA -c:///// c:/ -c:/ c:/ -c:/. c:/ -c:foo c:. -c:foo/bar c:foo -END-DOS-DATA - -*/ - -# define MAX_BUFF_LEN 1024 -# include - -char *program_name; - -int -main (int argc, char *argv[]) -{ - char buff[MAX_BUFF_LEN + 1]; - - program_name = argv[0]; - - buff[MAX_BUFF_LEN] = 0; - while (fgets (buff, MAX_BUFF_LEN, stdin) && buff[0]) - { - char path[MAX_BUFF_LEN]; - char expected_result[MAX_BUFF_LEN]; - char const *result; - sscanf (buff, "%s %s", path, expected_result); - result = dir_name (path); - if (strcmp (result, expected_result)) - printf ("%s: got %s, expected %s\n", path, result, expected_result); - } - return 0; -} -#endif diff --git a/lib/dirname.h b/lib/dirname.h deleted file mode 100644 index 4f794ee4..00000000 --- a/lib/dirname.h +++ /dev/null @@ -1,49 +0,0 @@ -/* Copyright (C) 1998, 2001 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#ifndef DIRNAME_H_ -# define DIRNAME_H_ 1 - -# include - -# ifndef PARAMS -# if defined PROTOTYPES || (defined __STDC__ && __STDC__) -# define PARAMS(Args) Args -# else -# define PARAMS(Args) () -# endif -# endif - -# ifndef DIRECTORY_SEPARATOR -# define DIRECTORY_SEPARATOR '/' -# endif - -# ifndef ISSLASH -# define ISSLASH(C) ((C) == DIRECTORY_SEPARATOR) -# endif - -# ifndef FILESYSTEM_PREFIX_LEN -# define FILESYSTEM_PREFIX_LEN(Filename) 0 -# endif - -char *base_name PARAMS ((char const *path)); -char *dir_name PARAMS ((char const *path)); -size_t base_len PARAMS ((char const *path)); -size_t dir_len PARAMS ((char const *path)); - -int strip_trailing_slashes PARAMS ((char *path)); - -#endif /* not DIRNAME_H_ */ diff --git a/lib/error.c b/lib/error.c deleted file mode 100644 index 18c779e9..00000000 --- a/lib/error.c +++ /dev/null @@ -1,407 +0,0 @@ -/* Error handler for noninteractive utilities - Copyright (C) 1990-1998, 2000, 2001, 2002 Free Software Foundation, Inc. - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -/* Written by David MacKenzie . */ - -#ifdef HAVE_CONFIG_H -# include -#endif - -#include - -#ifdef _LIBC -# include -#else -# include "gettext.h" -#endif - -#ifdef _LIBC -# include -# define mbsrtowcs __mbsrtowcs -#endif - -#if HAVE_VPRINTF || HAVE_DOPRNT || _LIBC -# if __STDC__ -# include -# define VA_START(args, lastarg) va_start(args, lastarg) -# else -# include -# define VA_START(args, lastarg) va_start(args) -# endif -#else -# define va_alist a1, a2, a3, a4, a5, a6, a7, a8 -# define va_dcl char *a1, *a2, *a3, *a4, *a5, *a6, *a7, *a8; -#endif - -#if STDC_HEADERS || _LIBC -# include -# include -#else -void exit (); -#endif - -#include "error.h" - -#if !_LIBC -# include "unlocked-io.h" -#endif - -#ifndef _ -# define _(String) String -#endif - -/* If NULL, error will flush stdout, then print on stderr the program - name, a colon and a space. Otherwise, error will call this - function without parameters instead. */ -void (*error_print_progname) ( -#if __STDC__ - 0 - void -#endif - ); - -/* This variable is incremented each time `error' is called. */ -unsigned int error_message_count; - -#ifdef _LIBC -/* In the GNU C library, there is a predefined variable for this. */ - -# define program_name program_invocation_name -# include -# include - -/* In GNU libc we want do not want to use the common name `error' directly. - Instead make it a weak alias. */ -extern void __error (int status, int errnum, const char *message, ...) - __attribute__ ((__format__ (__printf__, 3, 4))); -extern void __error_at_line (int status, int errnum, const char *file_name, - unsigned int line_number, const char *message, - ...) - __attribute__ ((__format__ (__printf__, 5, 6)));; -# define error __error -# define error_at_line __error_at_line - -# ifdef USE_IN_LIBIO -# include -# define fflush(s) INTUSE(_IO_fflush) (s) -# undef putc -# define putc(c, fp) INTUSE(_IO_putc) (c, fp) -# endif - -#else /* not _LIBC */ - -# if !HAVE_DECL_STRERROR_R && STRERROR_R_CHAR_P -# ifndef HAVE_DECL_STRERROR_R -"this configure-time declaration test was not run" -# endif -char *strerror_r (); -# endif - -/* The calling program should define program_name and set it to the - name of the executing program. */ -extern char *program_name; - -# if HAVE_STRERROR_R || defined strerror_r -# define __strerror_r strerror_r -# else -# if HAVE_STRERROR -# ifndef HAVE_DECL_STRERROR -"this configure-time declaration test was not run" -# endif -# if !HAVE_DECL_STRERROR -char *strerror (); -# endif -# else -static char * -private_strerror (int errnum) -{ - extern char *sys_errlist[]; - extern int sys_nerr; - - if (errnum > 0 && errnum <= sys_nerr) - return _(sys_errlist[errnum]); - return _("Unknown system error"); -} -# define strerror private_strerror -# endif /* HAVE_STRERROR */ -# endif /* HAVE_STRERROR_R || defined strerror_r */ -#endif /* not _LIBC */ - -static void -print_errno_message (int errnum) -{ - char const *s; - -#if defined HAVE_STRERROR_R || _LIBC - char errbuf[1024]; -# if STRERROR_R_CHAR_P || _LIBC - s = __strerror_r (errnum, errbuf, sizeof errbuf); -# else - if (__strerror_r (errnum, errbuf, sizeof errbuf) == 0) - s = errbuf; - else - s = 0; -# endif -#else - s = strerror (errnum); -#endif - -#if !_LIBC - if (! s) - s = _("Unknown system error"); -#endif - -#if _LIBC && USE_IN_LIBIO - if (_IO_fwide (stderr, 0) > 0) - { - __fwprintf (stderr, L": %s", s); - return; - } -#endif - - fprintf (stderr, ": %s", s); -} - -#ifdef VA_START -static void -error_tail (int status, int errnum, const char *message, va_list args) -{ -# if HAVE_VPRINTF || _LIBC -# if _LIBC && USE_IN_LIBIO - if (_IO_fwide (stderr, 0) > 0) - { -# define ALLOCA_LIMIT 2000 - size_t len = strlen (message) + 1; - wchar_t *wmessage = NULL; - mbstate_t st; - size_t res; - const char *tmp; - - do - { - if (len < ALLOCA_LIMIT) - wmessage = (wchar_t *) alloca (len * sizeof (wchar_t)); - else - { - if (wmessage != NULL && len / 2 < ALLOCA_LIMIT) - wmessage = NULL; - - wmessage = (wchar_t *) realloc (wmessage, - len * sizeof (wchar_t)); - - if (wmessage == NULL) - { - fputws_unlocked (L"out of memory\n", stderr); - return; - } - } - - memset (&st, '\0', sizeof (st)); - tmp =message; - } - while ((res = mbsrtowcs (wmessage, &tmp, len, &st)) == len); - - if (res == (size_t) -1) - /* The string cannot be converted. */ - wmessage = (wchar_t *) L"???"; - - __vfwprintf (stderr, wmessage, args); - } - else -# endif - vfprintf (stderr, message, args); -# else - _doprnt (message, args, stderr); -# endif - va_end (args); - - ++error_message_count; - if (errnum) - print_errno_message (errnum); -# if _LIBC && USE_IN_LIBIO - if (_IO_fwide (stderr, 0) > 0) - putwc (L'\n', stderr); - else -# endif - putc ('\n', stderr); - fflush (stderr); - if (status) - exit (status); -} -#endif - - -/* Print the program name and error message MESSAGE, which is a printf-style - format string with optional args. - If ERRNUM is nonzero, print its corresponding system error message. - Exit with status STATUS if it is nonzero. */ -/* VARARGS */ -void -#if defined VA_START && __STDC__ -error (int status, int errnum, const char *message, ...) -#else -error (status, errnum, message, va_alist) - int status; - int errnum; - char *message; - va_dcl -#endif -{ -#ifdef VA_START - va_list args; -#endif - - fflush (stdout); -#ifdef _LIBC -# ifdef USE_IN_LIBIO - _IO_flockfile (stderr); -# else - __flockfile (stderr); -# endif -#endif - if (error_print_progname) - (*error_print_progname) (); - else - { -#if _LIBC && USE_IN_LIBIO - if (_IO_fwide (stderr, 0) > 0) - __fwprintf (stderr, L"%s: ", program_name); - else -#endif - fprintf (stderr, "%s: ", program_name); - } - -#ifdef VA_START - VA_START (args, message); - error_tail (status, errnum, message, args); -#else - fprintf (stderr, message, a1, a2, a3, a4, a5, a6, a7, a8); - - ++error_message_count; - if (errnum) - print_errno_message (errnum); - putc ('\n', stderr); - fflush (stderr); - if (status) - exit (status); -#endif - -#ifdef _LIBC -# ifdef USE_IN_LIBIO - _IO_funlockfile (stderr); -# else - __funlockfile (stderr); -# endif -#endif -} - -/* Sometimes we want to have at most one error per line. This - variable controls whether this mode is selected or not. */ -int error_one_per_line; - -void -#if defined VA_START && __STDC__ -error_at_line (int status, int errnum, const char *file_name, - unsigned int line_number, const char *message, ...) -#else -error_at_line (status, errnum, file_name, line_number, message, va_alist) - int status; - int errnum; - const char *file_name; - unsigned int line_number; - char *message; - va_dcl -#endif -{ -#ifdef VA_START - va_list args; -#endif - - if (error_one_per_line) - { - static const char *old_file_name; - static unsigned int old_line_number; - - if (old_line_number == line_number - && (file_name == old_file_name - || strcmp (old_file_name, file_name) == 0)) - /* Simply return and print nothing. */ - return; - - old_file_name = file_name; - old_line_number = line_number; - } - - fflush (stdout); -#ifdef _LIBC -# ifdef USE_IN_LIBIO - _IO_flockfile (stderr); -# else - __flockfile (stderr); -# endif -#endif - if (error_print_progname) - (*error_print_progname) (); - else - { -#if _LIBC && USE_IN_LIBIO - if (_IO_fwide (stderr, 0) > 0) - __fwprintf (stderr, L"%s: ", program_name); - else -#endif - fprintf (stderr, "%s:", program_name); - } - - if (file_name != NULL) - { -#if _LIBC && USE_IN_LIBIO - if (_IO_fwide (stderr, 0) > 0) - __fwprintf (stderr, L"%s:%d: ", file_name, line_number); - else -#endif - fprintf (stderr, "%s:%d: ", file_name, line_number); - } - -#ifdef VA_START - VA_START (args, message); - error_tail (status, errnum, message, args); -#else - fprintf (stderr, message, a1, a2, a3, a4, a5, a6, a7, a8); - - ++error_message_count; - if (errnum) - print_errno_message (errnum); - putc ('\n', stderr); - fflush (stderr); - if (status) - exit (status); -#endif - -#ifdef _LIBC -# ifdef USE_IN_LIBIO - _IO_funlockfile (stderr); -# else - __funlockfile (stderr); -# endif -#endif -} - -#ifdef _LIBC -/* Make the weak alias. */ -# undef error -# undef error_at_line -weak_alias (__error, error) -weak_alias (__error_at_line, error_at_line) -#endif diff --git a/lib/error.h b/lib/error.h deleted file mode 100644 index 177b2dcb..00000000 --- a/lib/error.h +++ /dev/null @@ -1,78 +0,0 @@ -/* Declaration for error-reporting function - Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. - - - NOTE: The canonical source of this file is maintained with the GNU C Library. - Bugs can be reported to bug-glibc@prep.ai.mit.edu. - - This program is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by the - Free Software Foundation; either version 2, or (at your option) any - later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, - USA. */ - -#ifndef _ERROR_H -#define _ERROR_H 1 - -#ifndef __attribute__ -/* This feature is available in gcc versions 2.5 and later. */ -# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) -# define __attribute__(Spec) /* empty */ -# endif -/* The __-protected variants of `format' and `printf' attributes - are accepted by gcc versions 2.6.4 (effectively 2.7) and later. */ -# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7) -# define __format__ format -# define __printf__ printf -# endif -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -#if defined (__STDC__) && __STDC__ - -/* Print a message with `fprintf (stderr, FORMAT, ...)'; - if ERRNUM is nonzero, follow it with ": " and strerror (ERRNUM). - If STATUS is nonzero, terminate the program with `exit (STATUS)'. */ - -extern void error (int status, int errnum, const char *format, ...) - __attribute__ ((__format__ (__printf__, 3, 4))); - -extern void error_at_line (int status, int errnum, const char *fname, - unsigned int lineno, const char *format, ...) - __attribute__ ((__format__ (__printf__, 5, 6))); - -/* If NULL, error will flush stdout, then print on stderr the program - name, a colon and a space. Otherwise, error will call this - function without parameters instead. */ -extern void (*error_print_progname) (void); - -#else -void error (); -void error_at_line (); -extern void (*error_print_progname) (); -#endif - -/* This variable is incremented each time `error' is called. */ -extern unsigned int error_message_count; - -/* Sometimes we want to have at most one error per line. This - variable controls whether this mode is selected or not. */ -extern int error_one_per_line; - -#ifdef __cplusplus -} -#endif - -#endif /* error.h */ diff --git a/lib/getopt.c b/lib/getopt.c deleted file mode 100644 index 3e7928a8..00000000 --- a/lib/getopt.c +++ /dev/null @@ -1,1273 +0,0 @@ -/* Getopt for GNU. - NOTE: getopt is now part of the C library, so if you don't know what - "Keep this file name-space clean" means, talk to drepper@gnu.org - before changing it! - Copyright (C) 1987,88,89,90,91,92,93,94,95,96,98,99,2000,2001,2002 - Free Software Foundation, Inc. - This file is part of the GNU C Library. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -/* This tells Alpha OSF/1 not to define a getopt prototype in . - Ditto for AIX 3.2 and . */ -#ifndef _NO_PROTO -# define _NO_PROTO -#endif - -#ifdef HAVE_CONFIG_H -# include -#endif - -#if !defined __STDC__ || !__STDC__ -/* This is a separate conditional since some stdc systems - reject `defined (const)'. */ -# ifndef const -# define const -# endif -#endif - -#include - -/* Comment out all this code if we are using the GNU C Library, and are not - actually compiling the library itself. This code is part of the GNU C - Library, but also included in many other GNU distributions. Compiling - and linking in this code is a waste when using the GNU C library - (especially if it is a shared library). Rather than having every GNU - program understand `configure --with-gnu-libc' and omit the object files, - it is simpler to just do this in the source for each such file. */ - -#define GETOPT_INTERFACE_VERSION 2 -#if !defined _LIBC && defined __GLIBC__ && __GLIBC__ >= 2 -# include -# if _GNU_GETOPT_INTERFACE_VERSION == GETOPT_INTERFACE_VERSION -# define ELIDE_CODE -# endif -#endif - -#ifndef ELIDE_CODE - - -/* This needs to come after some library #include - to get __GNU_LIBRARY__ defined. */ -#ifdef __GNU_LIBRARY__ -/* Don't include stdlib.h for non-GNU C libraries because some of them - contain conflicting prototypes for getopt. */ -# include -# include -#endif /* GNU C library. */ - -#ifdef VMS -# include -# if HAVE_STRING_H - 0 -# include -# endif -#endif - -#ifdef _LIBC -# include -#else -/* This is for other GNU distributions with internationalized messages. */ -# include "gettext.h" -#endif -#define _(msgid) gettext (msgid) - -#if defined _LIBC && defined USE_IN_LIBIO -# include -#endif - -#ifndef attribute_hidden -# define attribute_hidden -#endif - -/* This version of `getopt' appears to the caller like standard Unix `getopt' - but it behaves differently for the user, since it allows the user - to intersperse the options with the other arguments. - - As `getopt' works, it permutes the elements of ARGV so that, - when it is done, all the options precede everything else. Thus - all application programs are extended to handle flexible argument order. - - Setting the environment variable POSIXLY_CORRECT disables permutation. - Then the behavior is completely standard. - - GNU application programs can use a third alternative mode in which - they can distinguish the relative order of options and other arguments. */ - -#include "getopt.h" - -/* For communication from `getopt' to the caller. - When `getopt' finds an option that takes an argument, - the argument value is returned here. - Also, when `ordering' is RETURN_IN_ORDER, - each non-option ARGV-element is returned here. */ - -char *optarg; - -/* Index in ARGV of the next element to be scanned. - This is used for communication to and from the caller - and for communication between successive calls to `getopt'. - - On entry to `getopt', zero means this is the first call; initialize. - - When `getopt' returns -1, this is the index of the first of the - non-option elements that the caller should itself scan. - - Otherwise, `optind' communicates from one call to the next - how much of ARGV has been scanned so far. */ - -/* 1003.2 says this must be 1 before any call. */ -int optind = 1; - -/* Formerly, initialization of getopt depended on optind==0, which - causes problems with re-calling getopt as programs generally don't - know that. */ - -int __getopt_initialized attribute_hidden; - -/* The next char to be scanned in the option-element - in which the last option character we returned was found. - This allows us to pick up the scan where we left off. - - If this is zero, or a null string, it means resume the scan - by advancing to the next ARGV-element. */ - -static char *nextchar; - -/* Callers store zero here to inhibit the error message - for unrecognized options. */ - -int opterr = 1; - -/* Set to an option character which was unrecognized. - This must be initialized on some systems to avoid linking in the - system's own getopt implementation. */ - -int optopt = '?'; - -/* Describe how to deal with options that follow non-option ARGV-elements. - - If the caller did not specify anything, - the default is REQUIRE_ORDER if the environment variable - POSIXLY_CORRECT is defined, PERMUTE otherwise. - - REQUIRE_ORDER means don't recognize them as options; - stop option processing when the first non-option is seen. - This is what Unix does. - This mode of operation is selected by either setting the environment - variable POSIXLY_CORRECT, or using `+' as the first character - of the list of option characters. - - PERMUTE is the default. We permute the contents of ARGV as we scan, - so that eventually all the non-options are at the end. This allows options - to be given in any order, even with programs that were not written to - expect this. - - RETURN_IN_ORDER is an option available to programs that were written - to expect options and other ARGV-elements in any order and that care about - the ordering of the two. We describe each non-option ARGV-element - as if it were the argument of an option with character code 1. - Using `-' as the first character of the list of option characters - selects this mode of operation. - - The special argument `--' forces an end of option-scanning regardless - of the value of `ordering'. In the case of RETURN_IN_ORDER, only - `--' can cause `getopt' to return -1 with `optind' != ARGC. */ - -static enum -{ - REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER -} ordering; - -/* Value of POSIXLY_CORRECT environment variable. */ -static char *posixly_correct; - -#ifdef __GNU_LIBRARY__ -/* We want to avoid inclusion of string.h with non-GNU libraries - because there are many ways it can cause trouble. - On some systems, it contains special magic macros that don't work - in GCC. */ -# include -# define my_index strchr -#else - -# if HAVE_STRING_H -# include -# else -# include -# endif - -/* Avoid depending on library functions or files - whose names are inconsistent. */ - -#ifndef getenv -extern char *getenv (); -#endif - -static char * -my_index (str, chr) - const char *str; - int chr; -{ - while (*str) - { - if (*str == chr) - return (char *) str; - str++; - } - return 0; -} - -/* If using GCC, we can safely declare strlen this way. - If not using GCC, it is ok not to declare it. */ -#ifdef __GNUC__ -/* Note that Motorola Delta 68k R3V7 comes with GCC but not stddef.h. - That was relevant to code that was here before. */ -# if (!defined __STDC__ || !__STDC__) && !defined strlen -/* gcc with -traditional declares the built-in strlen to return int, - and has done so at least since version 2.4.5. -- rms. */ -extern int strlen (const char *); -# endif /* not __STDC__ */ -#endif /* __GNUC__ */ - -#endif /* not __GNU_LIBRARY__ */ - -/* Handle permutation of arguments. */ - -/* Describe the part of ARGV that contains non-options that have - been skipped. `first_nonopt' is the index in ARGV of the first of them; - `last_nonopt' is the index after the last of them. */ - -static int first_nonopt; -static int last_nonopt; - -#ifdef _LIBC -/* Stored original parameters. - XXX This is no good solution. We should rather copy the args so - that we can compare them later. But we must not use malloc(3). */ -extern int __libc_argc; -extern char **__libc_argv; - -/* Bash 2.0 gives us an environment variable containing flags - indicating ARGV elements that should not be considered arguments. */ - -# ifdef USE_NONOPTION_FLAGS -/* Defined in getopt_init.c */ -extern char *__getopt_nonoption_flags; - -static int nonoption_flags_max_len; -static int nonoption_flags_len; -# endif - -# ifdef USE_NONOPTION_FLAGS -# define SWAP_FLAGS(ch1, ch2) \ - if (nonoption_flags_len > 0) \ - { \ - char __tmp = __getopt_nonoption_flags[ch1]; \ - __getopt_nonoption_flags[ch1] = __getopt_nonoption_flags[ch2]; \ - __getopt_nonoption_flags[ch2] = __tmp; \ - } -# else -# define SWAP_FLAGS(ch1, ch2) -# endif -#else /* !_LIBC */ -# define SWAP_FLAGS(ch1, ch2) -#endif /* _LIBC */ - -/* Exchange two adjacent subsequences of ARGV. - One subsequence is elements [first_nonopt,last_nonopt) - which contains all the non-options that have been skipped so far. - The other is elements [last_nonopt,optind), which contains all - the options processed since those non-options were skipped. - - `first_nonopt' and `last_nonopt' are relocated so that they describe - the new indices of the non-options in ARGV after they are moved. */ - -#if defined __STDC__ && __STDC__ -static void exchange (char **); -#endif - -static void -exchange (argv) - char **argv; -{ - int bottom = first_nonopt; - int middle = last_nonopt; - int top = optind; - char *tem; - - /* Exchange the shorter segment with the far end of the longer segment. - That puts the shorter segment into the right place. - It leaves the longer segment in the right place overall, - but it consists of two parts that need to be swapped next. */ - -#if defined _LIBC && defined USE_NONOPTION_FLAGS - /* First make sure the handling of the `__getopt_nonoption_flags' - string can work normally. Our top argument must be in the range - of the string. */ - if (nonoption_flags_len > 0 && top >= nonoption_flags_max_len) - { - /* We must extend the array. The user plays games with us and - presents new arguments. */ - char *new_str = malloc (top + 1); - if (new_str == NULL) - nonoption_flags_len = nonoption_flags_max_len = 0; - else - { - memset (__mempcpy (new_str, __getopt_nonoption_flags, - nonoption_flags_max_len), - '\0', top + 1 - nonoption_flags_max_len); - nonoption_flags_max_len = top + 1; - __getopt_nonoption_flags = new_str; - } - } -#endif - - while (top > middle && middle > bottom) - { - if (top - middle > middle - bottom) - { - /* Bottom segment is the short one. */ - int len = middle - bottom; - register int i; - - /* Swap it with the top part of the top segment. */ - for (i = 0; i < len; i++) - { - tem = argv[bottom + i]; - argv[bottom + i] = argv[top - (middle - bottom) + i]; - argv[top - (middle - bottom) + i] = tem; - SWAP_FLAGS (bottom + i, top - (middle - bottom) + i); - } - /* Exclude the moved bottom segment from further swapping. */ - top -= len; - } - else - { - /* Top segment is the short one. */ - int len = top - middle; - register int i; - - /* Swap it with the bottom part of the bottom segment. */ - for (i = 0; i < len; i++) - { - tem = argv[bottom + i]; - argv[bottom + i] = argv[middle + i]; - argv[middle + i] = tem; - SWAP_FLAGS (bottom + i, middle + i); - } - /* Exclude the moved top segment from further swapping. */ - bottom += len; - } - } - - /* Update records for the slots the non-options now occupy. */ - - first_nonopt += (optind - last_nonopt); - last_nonopt = optind; -} - -/* Initialize the internal data when the first call is made. */ - -#if defined __STDC__ && __STDC__ -static const char *_getopt_initialize (int, char *const *, const char *); -#endif -static const char * -_getopt_initialize (argc, argv, optstring) - int argc; - char *const *argv; - const char *optstring; -{ - /* Start processing options with ARGV-element 1 (since ARGV-element 0 - is the program name); the sequence of previously skipped - non-option ARGV-elements is empty. */ - - first_nonopt = last_nonopt = optind; - - nextchar = NULL; - - posixly_correct = getenv ("POSIXLY_CORRECT"); - - /* Determine how to handle the ordering of options and nonoptions. */ - - if (optstring[0] == '-') - { - ordering = RETURN_IN_ORDER; - ++optstring; - } - else if (optstring[0] == '+') - { - ordering = REQUIRE_ORDER; - ++optstring; - } - else if (posixly_correct != NULL) - ordering = REQUIRE_ORDER; - else - ordering = PERMUTE; - -#if defined _LIBC && defined USE_NONOPTION_FLAGS - if (posixly_correct == NULL - && argc == __libc_argc && argv == __libc_argv) - { - if (nonoption_flags_max_len == 0) - { - if (__getopt_nonoption_flags == NULL - || __getopt_nonoption_flags[0] == '\0') - nonoption_flags_max_len = -1; - else - { - const char *orig_str = __getopt_nonoption_flags; - int len = nonoption_flags_max_len = strlen (orig_str); - if (nonoption_flags_max_len < argc) - nonoption_flags_max_len = argc; - __getopt_nonoption_flags = - (char *) malloc (nonoption_flags_max_len); - if (__getopt_nonoption_flags == NULL) - nonoption_flags_max_len = -1; - else - memset (__mempcpy (__getopt_nonoption_flags, orig_str, len), - '\0', nonoption_flags_max_len - len); - } - } - nonoption_flags_len = nonoption_flags_max_len; - } - else - nonoption_flags_len = 0; -#endif - - return optstring; -} - -/* Scan elements of ARGV (whose length is ARGC) for option characters - given in OPTSTRING. - - If an element of ARGV starts with '-', and is not exactly "-" or "--", - then it is an option element. The characters of this element - (aside from the initial '-') are option characters. If `getopt' - is called repeatedly, it returns successively each of the option characters - from each of the option elements. - - If `getopt' finds another option character, it returns that character, - updating `optind' and `nextchar' so that the next call to `getopt' can - resume the scan with the following option character or ARGV-element. - - If there are no more option characters, `getopt' returns -1. - Then `optind' is the index in ARGV of the first ARGV-element - that is not an option. (The ARGV-elements have been permuted - so that those that are not options now come last.) - - OPTSTRING is a string containing the legitimate option characters. - If an option character is seen that is not listed in OPTSTRING, - return '?' after printing an error message. If you set `opterr' to - zero, the error message is suppressed but we still return '?'. - - If a char in OPTSTRING is followed by a colon, that means it wants an arg, - so the following text in the same ARGV-element, or the text of the following - ARGV-element, is returned in `optarg'. Two colons mean an option that - wants an optional arg; if there is text in the current ARGV-element, - it is returned in `optarg', otherwise `optarg' is set to zero. - - If OPTSTRING starts with `-' or `+', it requests different methods of - handling the non-option ARGV-elements. - See the comments about RETURN_IN_ORDER and REQUIRE_ORDER, above. - - Long-named options begin with `--' instead of `-'. - Their names may be abbreviated as long as the abbreviation is unique - or is an exact match for some defined option. If they have an - argument, it follows the option name in the same ARGV-element, separated - from the option name by a `=', or else the in next ARGV-element. - When `getopt' finds a long-named option, it returns 0 if that option's - `flag' field is nonzero, the value of the option's `val' field - if the `flag' field is zero. - - The elements of ARGV aren't really const, because we permute them. - But we pretend they're const in the prototype to be compatible - with other systems. - - LONGOPTS is a vector of `struct option' terminated by an - element containing a name which is zero. - - LONGIND returns the index in LONGOPT of the long-named option found. - It is only valid when a long-named option has been found by the most - recent call. - - If LONG_ONLY is nonzero, '-' as well as '--' can introduce - long-named options. */ - -int -_getopt_internal (argc, argv, optstring, longopts, longind, long_only) - int argc; - char *const *argv; - const char *optstring; - const struct option *longopts; - int *longind; - int long_only; -{ - int print_errors = opterr; - if (optstring[0] == ':') - print_errors = 0; - - if (argc < 1) - return -1; - - optarg = NULL; - - if (optind == 0 || !__getopt_initialized) - { - if (optind == 0) - optind = 1; /* Don't scan ARGV[0], the program name. */ - optstring = _getopt_initialize (argc, argv, optstring); - __getopt_initialized = 1; - } - - /* Test whether ARGV[optind] points to a non-option argument. - Either it does not have option syntax, or there is an environment flag - from the shell indicating it is not an option. The later information - is only used when the used in the GNU libc. */ -#if defined _LIBC && defined USE_NONOPTION_FLAGS -# define NONOPTION_P (argv[optind][0] != '-' || argv[optind][1] == '\0' \ - || (optind < nonoption_flags_len \ - && __getopt_nonoption_flags[optind] == '1')) -#else -# define NONOPTION_P (argv[optind][0] != '-' || argv[optind][1] == '\0') -#endif - - if (nextchar == NULL || *nextchar == '\0') - { - /* Advance to the next ARGV-element. */ - - /* Give FIRST_NONOPT & LAST_NONOPT rational values if OPTIND has been - moved back by the user (who may also have changed the arguments). */ - if (last_nonopt > optind) - last_nonopt = optind; - if (first_nonopt > optind) - first_nonopt = optind; - - if (ordering == PERMUTE) - { - /* If we have just processed some options following some non-options, - exchange them so that the options come first. */ - - if (first_nonopt != last_nonopt && last_nonopt != optind) - exchange ((char **) argv); - else if (last_nonopt != optind) - first_nonopt = optind; - - /* Skip any additional non-options - and extend the range of non-options previously skipped. */ - - while (optind < argc && NONOPTION_P) - optind++; - last_nonopt = optind; - } - - /* The special ARGV-element `--' means premature end of options. - Skip it like a null option, - then exchange with previous non-options as if it were an option, - then skip everything else like a non-option. */ - - if (optind != argc && !strcmp (argv[optind], "--")) - { - optind++; - - if (first_nonopt != last_nonopt && last_nonopt != optind) - exchange ((char **) argv); - else if (first_nonopt == last_nonopt) - first_nonopt = optind; - last_nonopt = argc; - - optind = argc; - } - - /* If we have done all the ARGV-elements, stop the scan - and back over any non-options that we skipped and permuted. */ - - if (optind == argc) - { - /* Set the next-arg-index to point at the non-options - that we previously skipped, so the caller will digest them. */ - if (first_nonopt != last_nonopt) - optind = first_nonopt; - return -1; - } - - /* If we have come to a non-option and did not permute it, - either stop the scan or describe it to the caller and pass it by. */ - - if (NONOPTION_P) - { - if (ordering == REQUIRE_ORDER) - return -1; - optarg = argv[optind++]; - return 1; - } - - /* We have found another option-ARGV-element. - Skip the initial punctuation. */ - - nextchar = (argv[optind] + 1 - + (longopts != NULL && argv[optind][1] == '-')); - } - - /* Decode the current option-ARGV-element. */ - - /* Check whether the ARGV-element is a long option. - - If long_only and the ARGV-element has the form "-f", where f is - a valid short option, don't consider it an abbreviated form of - a long option that starts with f. Otherwise there would be no - way to give the -f short option. - - On the other hand, if there's a long option "fubar" and - the ARGV-element is "-fu", do consider that an abbreviation of - the long option, just like "--fu", and not "-f" with arg "u". - - This distinction seems to be the most useful approach. */ - - if (longopts != NULL - && (argv[optind][1] == '-' - || (long_only && (argv[optind][2] || !my_index (optstring, argv[optind][1]))))) - { - char *nameend; - const struct option *p; - const struct option *pfound = NULL; - int exact = 0; - int ambig = 0; - int indfound = -1; - int option_index; - - for (nameend = nextchar; *nameend && *nameend != '='; nameend++) - /* Do nothing. */ ; - - /* Test all long options for either exact match - or abbreviated matches. */ - for (p = longopts, option_index = 0; p->name; p++, option_index++) - if (!strncmp (p->name, nextchar, nameend - nextchar)) - { - if ((unsigned int) (nameend - nextchar) - == (unsigned int) strlen (p->name)) - { - /* Exact match found. */ - pfound = p; - indfound = option_index; - exact = 1; - break; - } - else if (pfound == NULL) - { - /* First nonexact match found. */ - pfound = p; - indfound = option_index; - } - else if (long_only - || pfound->has_arg != p->has_arg - || pfound->flag != p->flag - || pfound->val != p->val) - /* Second or later nonexact match found. */ - ambig = 1; - } - - if (ambig && !exact) - { - if (print_errors) - { -#if defined _LIBC && defined USE_IN_LIBIO - char *buf; - - if (__asprintf (&buf, _("%s: option `%s' is ambiguous\n"), - argv[0], argv[optind]) >= 0) - { - - if (_IO_fwide (stderr, 0) > 0) - __fwprintf (stderr, L"%s", buf); - else - fputs (buf, stderr); - - free (buf); - } -#else - fprintf (stderr, _("%s: option `%s' is ambiguous\n"), - argv[0], argv[optind]); -#endif - } - nextchar += strlen (nextchar); - optind++; - optopt = 0; - return '?'; - } - - if (pfound != NULL) - { - option_index = indfound; - optind++; - if (*nameend) - { - /* Don't test has_arg with >, because some C compilers don't - allow it to be used on enums. */ - if (pfound->has_arg) - optarg = nameend + 1; - else - { - if (print_errors) - { -#if defined _LIBC && defined USE_IN_LIBIO - char *buf; - int n; -#endif - - if (argv[optind - 1][1] == '-') - { - /* --option */ -#if defined _LIBC && defined USE_IN_LIBIO - n = __asprintf (&buf, _("\ -%s: option `--%s' doesn't allow an argument\n"), - argv[0], pfound->name); -#else - fprintf (stderr, _("\ -%s: option `--%s' doesn't allow an argument\n"), - argv[0], pfound->name); -#endif - } - else - { - /* +option or -option */ -#if defined _LIBC && defined USE_IN_LIBIO - n = __asprintf (&buf, _("\ -%s: option `%c%s' doesn't allow an argument\n"), - argv[0], argv[optind - 1][0], - pfound->name); -#else - fprintf (stderr, _("\ -%s: option `%c%s' doesn't allow an argument\n"), - argv[0], argv[optind - 1][0], pfound->name); -#endif - } - -#if defined _LIBC && defined USE_IN_LIBIO - if (n >= 0) - { - if (_IO_fwide (stderr, 0) > 0) - __fwprintf (stderr, L"%s", buf); - else - fputs (buf, stderr); - - free (buf); - } -#endif - } - - nextchar += strlen (nextchar); - - optopt = pfound->val; - return '?'; - } - } - else if (pfound->has_arg == 1) - { - if (optind < argc) - optarg = argv[optind++]; - else - { - if (print_errors) - { -#if defined _LIBC && defined USE_IN_LIBIO - char *buf; - - if (__asprintf (&buf, _("\ -%s: option `%s' requires an argument\n"), - argv[0], argv[optind - 1]) >= 0) - { - if (_IO_fwide (stderr, 0) > 0) - __fwprintf (stderr, L"%s", buf); - else - fputs (buf, stderr); - - free (buf); - } -#else - fprintf (stderr, - _("%s: option `%s' requires an argument\n"), - argv[0], argv[optind - 1]); -#endif - } - nextchar += strlen (nextchar); - optopt = pfound->val; - return optstring[0] == ':' ? ':' : '?'; - } - } - nextchar += strlen (nextchar); - if (longind != NULL) - *longind = option_index; - if (pfound->flag) - { - *(pfound->flag) = pfound->val; - return 0; - } - return pfound->val; - } - - /* Can't find it as a long option. If this is not getopt_long_only, - or the option starts with '--' or is not a valid short - option, then it's an error. - Otherwise interpret it as a short option. */ - if (!long_only || argv[optind][1] == '-' - || my_index (optstring, *nextchar) == NULL) - { - if (print_errors) - { -#if defined _LIBC && defined USE_IN_LIBIO - char *buf; - int n; -#endif - - if (argv[optind][1] == '-') - { - /* --option */ -#if defined _LIBC && defined USE_IN_LIBIO - n = __asprintf (&buf, _("%s: unrecognized option `--%s'\n"), - argv[0], nextchar); -#else - fprintf (stderr, _("%s: unrecognized option `--%s'\n"), - argv[0], nextchar); -#endif - } - else - { - /* +option or -option */ -#if defined _LIBC && defined USE_IN_LIBIO - n = __asprintf (&buf, _("%s: unrecognized option `%c%s'\n"), - argv[0], argv[optind][0], nextchar); -#else - fprintf (stderr, _("%s: unrecognized option `%c%s'\n"), - argv[0], argv[optind][0], nextchar); -#endif - } - -#if defined _LIBC && defined USE_IN_LIBIO - if (n >= 0) - { - if (_IO_fwide (stderr, 0) > 0) - __fwprintf (stderr, L"%s", buf); - else - fputs (buf, stderr); - - free (buf); - } -#endif - } - nextchar = (char *) ""; - optind++; - optopt = 0; - return '?'; - } - } - - /* Look at and handle the next short option-character. */ - - { - char c = *nextchar++; - char *temp = my_index (optstring, c); - - /* Increment `optind' when we start to process its last character. */ - if (*nextchar == '\0') - ++optind; - - if (temp == NULL || c == ':') - { - if (print_errors) - { -#if defined _LIBC && defined USE_IN_LIBIO - char *buf; - int n; -#endif - - if (posixly_correct) - { - /* 1003.2 specifies the format of this message. */ -#if defined _LIBC && defined USE_IN_LIBIO - n = __asprintf (&buf, _("%s: illegal option -- %c\n"), - argv[0], c); -#else - fprintf (stderr, _("%s: illegal option -- %c\n"), argv[0], c); -#endif - } - else - { -#if defined _LIBC && defined USE_IN_LIBIO - n = __asprintf (&buf, _("%s: invalid option -- %c\n"), - argv[0], c); -#else - fprintf (stderr, _("%s: invalid option -- %c\n"), argv[0], c); -#endif - } - -#if defined _LIBC && defined USE_IN_LIBIO - if (n >= 0) - { - if (_IO_fwide (stderr, 0) > 0) - __fwprintf (stderr, L"%s", buf); - else - fputs (buf, stderr); - - free (buf); - } -#endif - } - optopt = c; - return '?'; - } - /* Convenience. Treat POSIX -W foo same as long option --foo */ - if (temp[0] == 'W' && temp[1] == ';') - { - char *nameend; - const struct option *p; - const struct option *pfound = NULL; - int exact = 0; - int ambig = 0; - int indfound = 0; - int option_index; - - /* This is an option that requires an argument. */ - if (*nextchar != '\0') - { - optarg = nextchar; - /* If we end this ARGV-element by taking the rest as an arg, - we must advance to the next element now. */ - optind++; - } - else if (optind == argc) - { - if (print_errors) - { - /* 1003.2 specifies the format of this message. */ -#if defined _LIBC && defined USE_IN_LIBIO - char *buf; - - if (__asprintf (&buf, - _("%s: option requires an argument -- %c\n"), - argv[0], c) >= 0) - { - if (_IO_fwide (stderr, 0) > 0) - __fwprintf (stderr, L"%s", buf); - else - fputs (buf, stderr); - - free (buf); - } -#else - fprintf (stderr, _("%s: option requires an argument -- %c\n"), - argv[0], c); -#endif - } - optopt = c; - if (optstring[0] == ':') - c = ':'; - else - c = '?'; - return c; - } - else - /* We already incremented `optind' once; - increment it again when taking next ARGV-elt as argument. */ - optarg = argv[optind++]; - - /* optarg is now the argument, see if it's in the - table of longopts. */ - - for (nextchar = nameend = optarg; *nameend && *nameend != '='; nameend++) - /* Do nothing. */ ; - - /* Test all long options for either exact match - or abbreviated matches. */ - for (p = longopts, option_index = 0; p->name; p++, option_index++) - if (!strncmp (p->name, nextchar, nameend - nextchar)) - { - if ((unsigned int) (nameend - nextchar) == strlen (p->name)) - { - /* Exact match found. */ - pfound = p; - indfound = option_index; - exact = 1; - break; - } - else if (pfound == NULL) - { - /* First nonexact match found. */ - pfound = p; - indfound = option_index; - } - else - /* Second or later nonexact match found. */ - ambig = 1; - } - if (ambig && !exact) - { - if (print_errors) - { -#if defined _LIBC && defined USE_IN_LIBIO - char *buf; - - if (__asprintf (&buf, _("%s: option `-W %s' is ambiguous\n"), - argv[0], argv[optind]) >= 0) - { - if (_IO_fwide (stderr, 0) > 0) - __fwprintf (stderr, L"%s", buf); - else - fputs (buf, stderr); - - free (buf); - } -#else - fprintf (stderr, _("%s: option `-W %s' is ambiguous\n"), - argv[0], argv[optind]); -#endif - } - nextchar += strlen (nextchar); - optind++; - return '?'; - } - if (pfound != NULL) - { - option_index = indfound; - if (*nameend) - { - /* Don't test has_arg with >, because some C compilers don't - allow it to be used on enums. */ - if (pfound->has_arg) - optarg = nameend + 1; - else - { - if (print_errors) - { -#if defined _LIBC && defined USE_IN_LIBIO - char *buf; - - if (__asprintf (&buf, _("\ -%s: option `-W %s' doesn't allow an argument\n"), - argv[0], pfound->name) >= 0) - { - if (_IO_fwide (stderr, 0) > 0) - __fwprintf (stderr, L"%s", buf); - else - fputs (buf, stderr); - - free (buf); - } -#else - fprintf (stderr, _("\ -%s: option `-W %s' doesn't allow an argument\n"), - argv[0], pfound->name); -#endif - } - - nextchar += strlen (nextchar); - return '?'; - } - } - else if (pfound->has_arg == 1) - { - if (optind < argc) - optarg = argv[optind++]; - else - { - if (print_errors) - { -#if defined _LIBC && defined USE_IN_LIBIO - char *buf; - - if (__asprintf (&buf, _("\ -%s: option `%s' requires an argument\n"), - argv[0], argv[optind - 1]) >= 0) - { - if (_IO_fwide (stderr, 0) > 0) - __fwprintf (stderr, L"%s", buf); - else - fputs (buf, stderr); - - free (buf); - } -#else - fprintf (stderr, - _("%s: option `%s' requires an argument\n"), - argv[0], argv[optind - 1]); -#endif - } - nextchar += strlen (nextchar); - return optstring[0] == ':' ? ':' : '?'; - } - } - nextchar += strlen (nextchar); - if (longind != NULL) - *longind = option_index; - if (pfound->flag) - { - *(pfound->flag) = pfound->val; - return 0; - } - return pfound->val; - } - nextchar = NULL; - return 'W'; /* Let the application handle it. */ - } - if (temp[1] == ':') - { - if (temp[2] == ':') - { - /* This is an option that accepts an argument optionally. */ - if (*nextchar != '\0') - { - optarg = nextchar; - optind++; - } - else - optarg = NULL; - nextchar = NULL; - } - else - { - /* This is an option that requires an argument. */ - if (*nextchar != '\0') - { - optarg = nextchar; - /* If we end this ARGV-element by taking the rest as an arg, - we must advance to the next element now. */ - optind++; - } - else if (optind == argc) - { - if (print_errors) - { - /* 1003.2 specifies the format of this message. */ -#if defined _LIBC && defined USE_IN_LIBIO - char *buf; - - if (__asprintf (&buf, _("\ -%s: option requires an argument -- %c\n"), - argv[0], c) >= 0) - { - if (_IO_fwide (stderr, 0) > 0) - __fwprintf (stderr, L"%s", buf); - else - fputs (buf, stderr); - - free (buf); - } -#else - fprintf (stderr, - _("%s: option requires an argument -- %c\n"), - argv[0], c); -#endif - } - optopt = c; - if (optstring[0] == ':') - c = ':'; - else - c = '?'; - } - else - /* We already incremented `optind' once; - increment it again when taking next ARGV-elt as argument. */ - optarg = argv[optind++]; - nextchar = NULL; - } - } - return c; - } -} - -int -getopt (argc, argv, optstring) - int argc; - char *const *argv; - const char *optstring; -{ - return _getopt_internal (argc, argv, optstring, - (const struct option *) 0, - (int *) 0, - 0); -} - -#endif /* Not ELIDE_CODE. */ - -#ifdef TEST - -/* Compile with -DTEST to make an executable for use in testing - the above definition of `getopt'. */ - -int -main (argc, argv) - int argc; - char **argv; -{ - int c; - int digit_optind = 0; - - while (1) - { - int this_option_optind = optind ? optind : 1; - - c = getopt (argc, argv, "abc:d:0123456789"); - if (c == -1) - break; - - switch (c) - { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - if (digit_optind != 0 && digit_optind != this_option_optind) - printf ("digits occur in two different argv-elements.\n"); - digit_optind = this_option_optind; - printf ("option %c\n", c); - break; - - case 'a': - printf ("option a\n"); - break; - - case 'b': - printf ("option b\n"); - break; - - case 'c': - printf ("option c with value `%s'\n", optarg); - break; - - case '?': - break; - - default: - printf ("?? getopt returned character code 0%o ??\n", c); - } - } - - if (optind < argc) - { - printf ("non-option ARGV-elements: "); - while (optind < argc) - printf ("%s ", argv[optind++]); - printf ("\n"); - } - - exit (0); -} - -#endif /* TEST */ diff --git a/lib/getopt.h b/lib/getopt.h deleted file mode 100644 index 4d6adeea..00000000 --- a/lib/getopt.h +++ /dev/null @@ -1,180 +0,0 @@ -/* Declarations for getopt. - Copyright (C) 1989-1994, 1996-1999, 2001 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#ifndef _GETOPT_H - -#ifndef __need_getopt -# define _GETOPT_H 1 -#endif - -/* If __GNU_LIBRARY__ is not already defined, either we are being used - standalone, or this is the first header included in the source file. - If we are being used with glibc, we need to include , but - that does not exist if we are standalone. So: if __GNU_LIBRARY__ is - not defined, include , which will pull in for us - if it's from glibc. (Why ctype.h? It's guaranteed to exist and it - doesn't flood the namespace with stuff the way some other headers do.) */ -#if !defined __GNU_LIBRARY__ -# include -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -/* For communication from `getopt' to the caller. - When `getopt' finds an option that takes an argument, - the argument value is returned here. - Also, when `ordering' is RETURN_IN_ORDER, - each non-option ARGV-element is returned here. */ - -extern char *optarg; - -/* Index in ARGV of the next element to be scanned. - This is used for communication to and from the caller - and for communication between successive calls to `getopt'. - - On entry to `getopt', zero means this is the first call; initialize. - - When `getopt' returns -1, this is the index of the first of the - non-option elements that the caller should itself scan. - - Otherwise, `optind' communicates from one call to the next - how much of ARGV has been scanned so far. */ - -extern int optind; - -/* Callers store zero here to inhibit the error message `getopt' prints - for unrecognized options. */ - -extern int opterr; - -/* Set to an option character which was unrecognized. */ - -extern int optopt; - -#ifndef __need_getopt -/* Describe the long-named options requested by the application. - The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector - of `struct option' terminated by an element containing a name which is - zero. - - The field `has_arg' is: - no_argument (or 0) if the option does not take an argument, - required_argument (or 1) if the option requires an argument, - optional_argument (or 2) if the option takes an optional argument. - - If the field `flag' is not NULL, it points to a variable that is set - to the value given in the field `val' when the option is found, but - left unchanged if the option is not found. - - To have a long-named option do something other than set an `int' to - a compiled-in constant, such as set a value from `optarg', set the - option's `flag' field to zero and its `val' field to a nonzero - value (the equivalent single-letter option character, if there is - one). For long options that have a zero `flag' field, `getopt' - returns the contents of the `val' field. */ - -struct option -{ -# if (defined __STDC__ && __STDC__) || defined __cplusplus - const char *name; -# else - char *name; -# endif - /* has_arg can't be an enum because some compilers complain about - type mismatches in all the code that assumes it is an int. */ - int has_arg; - int *flag; - int val; -}; - -/* Names for the values of the `has_arg' field of `struct option'. */ - -# define no_argument 0 -# define required_argument 1 -# define optional_argument 2 -#endif /* need getopt */ - - -/* Get definitions and prototypes for functions to process the - arguments in ARGV (ARGC of them, minus the program name) for - options given in OPTS. - - Return the option character from OPTS just read. Return -1 when - there are no more options. For unrecognized options, or options - missing arguments, `optopt' is set to the option letter, and '?' is - returned. - - The OPTS string is a list of characters which are recognized option - letters, optionally followed by colons, specifying that that letter - takes an argument, to be placed in `optarg'. - - If a letter in OPTS is followed by two colons, its argument is - optional. This behavior is specific to the GNU `getopt'. - - The argument `--' causes premature termination of argument - scanning, explicitly telling `getopt' that there are no more - options. - - If OPTS begins with `--', then non-option arguments are treated as - arguments to the option '\0'. This behavior is specific to the GNU - `getopt'. */ - -#if (defined __STDC__ && __STDC__) || defined __cplusplus -# ifdef __GNU_LIBRARY__ -/* Many other libraries have conflicting prototypes for getopt, with - differences in the consts, in stdlib.h. To avoid compilation - errors, only prototype getopt for the GNU C library. */ -extern int getopt (int ___argc, char *const *___argv, const char *__shortopts); -# else /* not __GNU_LIBRARY__ */ -extern int getopt (); -# endif /* __GNU_LIBRARY__ */ - -# ifndef __need_getopt -extern int getopt_long (int ___argc, char *const *___argv, - const char *__shortopts, - const struct option *__longopts, int *__longind); -extern int getopt_long_only (int ___argc, char *const *___argv, - const char *__shortopts, - const struct option *__longopts, int *__longind); - -/* Internal only. Users should not call this directly. */ -extern int _getopt_internal (int ___argc, char *const *___argv, - const char *__shortopts, - const struct option *__longopts, int *__longind, - int __long_only); -# endif -#else /* not __STDC__ */ -extern int getopt (); -# ifndef __need_getopt -extern int getopt_long (); -extern int getopt_long_only (); - -extern int _getopt_internal (); -# endif -#endif /* __STDC__ */ - -#ifdef __cplusplus -} -#endif - -/* Make sure we later can get all the definitions and declarations. */ -#undef __need_getopt - -#endif /* getopt.h */ diff --git a/lib/getopt1.c b/lib/getopt1.c deleted file mode 100644 index d2759cef..00000000 --- a/lib/getopt1.c +++ /dev/null @@ -1,195 +0,0 @@ -/* getopt_long and getopt_long_only entry points for GNU getopt. - Copyright (C) 1987,88,89,90,91,92,93,94,96,97,98 - Free Software Foundation, Inc. - This file is part of the GNU C Library. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#ifdef HAVE_CONFIG_H -#include -#endif - -#ifdef _LIBC -# include -#else -# include "getopt.h" -#endif - -#if !defined __STDC__ || !__STDC__ -/* This is a separate conditional since some stdc systems - reject `defined (const)'. */ -#ifndef const -#define const -#endif -#endif - -#include - -/* Comment out all this code if we are using the GNU C Library, and are not - actually compiling the library itself. This code is part of the GNU C - Library, but also included in many other GNU distributions. Compiling - and linking in this code is a waste when using the GNU C library - (especially if it is a shared library). Rather than having every GNU - program understand `configure --with-gnu-libc' and omit the object files, - it is simpler to just do this in the source for each such file. */ - -#define GETOPT_INTERFACE_VERSION 2 -#if !defined _LIBC && defined __GLIBC__ && __GLIBC__ >= 2 -#include -#if _GNU_GETOPT_INTERFACE_VERSION == GETOPT_INTERFACE_VERSION -#define ELIDE_CODE -#endif -#endif - -#ifndef ELIDE_CODE - - -/* This needs to come after some library #include - to get __GNU_LIBRARY__ defined. */ -#ifdef __GNU_LIBRARY__ -#include -#endif - -#ifndef NULL -#define NULL 0 -#endif - -int -getopt_long (argc, argv, options, long_options, opt_index) - int argc; - char *const *argv; - const char *options; - const struct option *long_options; - int *opt_index; -{ - return _getopt_internal (argc, argv, options, long_options, opt_index, 0); -} - -/* Like getopt_long, but '-' as well as '--' can indicate a long option. - If an option that starts with '-' (not '--') doesn't match a long option, - but does match a short option, it is parsed as a short option - instead. */ - -int -getopt_long_only (argc, argv, options, long_options, opt_index) - int argc; - char *const *argv; - const char *options; - const struct option *long_options; - int *opt_index; -{ - return _getopt_internal (argc, argv, options, long_options, opt_index, 1); -} - -# ifdef _LIBC -libc_hidden_def (getopt_long) -libc_hidden_def (getopt_long_only) -# endif - -#endif /* Not ELIDE_CODE. */ - -#ifdef TEST - -#include - -int -main (argc, argv) - int argc; - char **argv; -{ - int c; - int digit_optind = 0; - - while (1) - { - int this_option_optind = optind ? optind : 1; - int option_index = 0; - static struct option long_options[] = - { - {"add", 1, 0, 0}, - {"append", 0, 0, 0}, - {"delete", 1, 0, 0}, - {"verbose", 0, 0, 0}, - {"create", 0, 0, 0}, - {"file", 1, 0, 0}, - {0, 0, 0, 0} - }; - - c = getopt_long (argc, argv, "abc:d:0123456789", - long_options, &option_index); - if (c == -1) - break; - - switch (c) - { - case 0: - printf ("option %s", long_options[option_index].name); - if (optarg) - printf (" with arg %s", optarg); - printf ("\n"); - break; - - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - if (digit_optind != 0 && digit_optind != this_option_optind) - printf ("digits occur in two different argv-elements.\n"); - digit_optind = this_option_optind; - printf ("option %c\n", c); - break; - - case 'a': - printf ("option a\n"); - break; - - case 'b': - printf ("option b\n"); - break; - - case 'c': - printf ("option c with value `%s'\n", optarg); - break; - - case 'd': - printf ("option d with value `%s'\n", optarg); - break; - - case '?': - break; - - default: - printf ("?? getopt returned character code 0%o ??\n", c); - } - } - - if (optind < argc) - { - printf ("non-option ARGV-elements: "); - while (optind < argc) - printf ("%s ", argv[optind++]); - printf ("\n"); - } - - exit (0); -} - -#endif /* TEST */ diff --git a/lib/gettext.h b/lib/gettext.h deleted file mode 100644 index 8b262f4c..00000000 --- a/lib/gettext.h +++ /dev/null @@ -1,69 +0,0 @@ -/* Convenience header for conditional use of GNU . - Copyright (C) 1995-1998, 2000-2002 Free Software Foundation, Inc. - - This program 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, 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, - USA. */ - -#ifndef _LIBGETTEXT_H -#define _LIBGETTEXT_H 1 - -/* NLS can be disabled through the configure --disable-nls option. */ -#if ENABLE_NLS - -/* Get declarations of GNU message catalog functions. */ -# include - -#else - -/* Solaris /usr/include/locale.h includes /usr/include/libintl.h, which - chokes if dcgettext is defined as a macro. So include it now, to make - later inclusions of a NOP. We don't include - as well because people using "gettext.h" will not include , - and also including would fail on SunOS 4, whereas - is OK. */ -#if defined(__sun) -# include -#endif - -/* Disabled NLS. - The casts to 'const char *' serve the purpose of producing warnings - for invalid uses of the value returned from these functions. - On pre-ANSI systems without 'const', the config.h file is supposed to - contain "#define const". */ -# define gettext(Msgid) ((const char *) (Msgid)) -# define dgettext(Domainname, Msgid) ((const char *) (Msgid)) -# define dcgettext(Domainname, Msgid, Category) ((const char *) (Msgid)) -# define ngettext(Msgid1, Msgid2, N) \ - ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2)) -# define dngettext(Domainname, Msgid1, Msgid2, N) \ - ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2)) -# define dcngettext(Domainname, Msgid1, Msgid2, N, Category) \ - ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2)) -# define textdomain(Domainname) ((const char *) (Domainname)) -# define bindtextdomain(Domainname, Dirname) ((const char *) (Dirname)) -# define bind_textdomain_codeset(Domainname, Codeset) ((const char *) (Codeset)) - -#endif - -/* A pseudo function call that serves as a marker for the automated - extraction of messages, but does not call gettext(). The run-time - translation is done at a different place in the code. - The argument, String, should be a literal string. Concatenated strings - and other string expressions won't work. - The macro's expansion is not parenthesized, so that it is suitable as - initializer for static 'char[]' or 'const char[]' variables. */ -#define gettext_noop(String) String - -#endif /* _LIBGETTEXT_H */ diff --git a/lib/hash.c b/lib/hash.c deleted file mode 100644 index 7373a011..00000000 --- a/lib/hash.c +++ /dev/null @@ -1,1051 +0,0 @@ -/* hash - hashing table processing. - - Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Free Software - Foundation, Inc. - - Written by Jim Meyering, 1992. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -/* A generic hash table package. */ - -/* Define USE_OBSTACK to 1 if you want the allocator to use obstacks instead - of malloc. If you change USE_OBSTACK, you have to recompile! */ - -#if HAVE_CONFIG_H -# include -#endif -#if HAVE_STDLIB_H -# include -#endif - -#include -#include -#include - -#ifndef HAVE_DECL_FREE -"this configure-time declaration test was not run" -#endif -#if !HAVE_DECL_FREE -void free (); -#endif - -#ifndef HAVE_DECL_MALLOC -"this configure-time declaration test was not run" -#endif -#if !HAVE_DECL_MALLOC -char *malloc (); -#endif - -#if USE_OBSTACK -# include "obstack.h" -# ifndef obstack_chunk_alloc -# define obstack_chunk_alloc malloc -# endif -# ifndef obstack_chunk_free -# define obstack_chunk_free free -# endif -#endif - -#include "hash.h" - -struct hash_table - { - /* The array of buckets starts at BUCKET and extends to BUCKET_LIMIT-1, - for a possibility of N_BUCKETS. Among those, N_BUCKETS_USED buckets - are not empty, there are N_ENTRIES active entries in the table. */ - struct hash_entry *bucket; - struct hash_entry *bucket_limit; - unsigned n_buckets; - unsigned n_buckets_used; - unsigned n_entries; - - /* Tuning arguments, kept in a physicaly separate structure. */ - const Hash_tuning *tuning; - - /* Three functions are given to `hash_initialize', see the documentation - block for this function. In a word, HASHER randomizes a user entry - into a number up from 0 up to some maximum minus 1; COMPARATOR returns - true if two user entries compare equally; and DATA_FREER is the cleanup - function for a user entry. */ - Hash_hasher hasher; - Hash_comparator comparator; - Hash_data_freer data_freer; - - /* A linked list of freed struct hash_entry structs. */ - struct hash_entry *free_entry_list; - -#if USE_OBSTACK - /* Whenever obstacks are used, it is possible to allocate all overflowed - entries into a single stack, so they all can be freed in a single - operation. It is not clear if the speedup is worth the trouble. */ - struct obstack entry_stack; -#endif - }; - -/* A hash table contains many internal entries, each holding a pointer to - some user provided data (also called a user entry). An entry indistinctly - refers to both the internal entry and its associated user entry. A user - entry contents may be hashed by a randomization function (the hashing - function, or just `hasher' for short) into a number (or `slot') between 0 - and the current table size. At each slot position in the hash table, - starts a linked chain of entries for which the user data all hash to this - slot. A bucket is the collection of all entries hashing to the same slot. - - A good `hasher' function will distribute entries rather evenly in buckets. - In the ideal case, the length of each bucket is roughly the number of - entries divided by the table size. Finding the slot for a data is usually - done in constant time by the `hasher', and the later finding of a precise - entry is linear in time with the size of the bucket. Consequently, a - larger hash table size (that is, a larger number of buckets) is prone to - yielding shorter chains, *given* the `hasher' function behaves properly. - - Long buckets slow down the lookup algorithm. One might use big hash table - sizes in hope to reduce the average length of buckets, but this might - become inordinate, as unused slots in the hash table take some space. The - best bet is to make sure you are using a good `hasher' function (beware - that those are not that easy to write! :-), and to use a table size - larger than the actual number of entries. */ - -/* If an insertion makes the ratio of nonempty buckets to table size larger - than the growth threshold (a number between 0.0 and 1.0), then increase - the table size by multiplying by the growth factor (a number greater than - 1.0). The growth threshold defaults to 0.8, and the growth factor - defaults to 1.414, meaning that the table will have doubled its size - every second time 80% of the buckets get used. */ -#define DEFAULT_GROWTH_THRESHOLD 0.8 -#define DEFAULT_GROWTH_FACTOR 1.414 - -/* If a deletion empties a bucket and causes the ratio of used buckets to - table size to become smaller than the shrink threshold (a number between - 0.0 and 1.0), then shrink the table by multiplying by the shrink factor (a - number greater than the shrink threshold but smaller than 1.0). The shrink - threshold and factor default to 0.0 and 1.0, meaning that the table never - shrinks. */ -#define DEFAULT_SHRINK_THRESHOLD 0.0 -#define DEFAULT_SHRINK_FACTOR 1.0 - -/* Use this to initialize or reset a TUNING structure to - some sensible values. */ -static const Hash_tuning default_tuning = - { - DEFAULT_SHRINK_THRESHOLD, - DEFAULT_SHRINK_FACTOR, - DEFAULT_GROWTH_THRESHOLD, - DEFAULT_GROWTH_FACTOR, - false - }; - -/* Information and lookup. */ - -/* The following few functions provide information about the overall hash - table organization: the number of entries, number of buckets and maximum - length of buckets. */ - -/* Return the number of buckets in the hash table. The table size, the total - number of buckets (used plus unused), or the maximum number of slots, are - the same quantity. */ - -unsigned -hash_get_n_buckets (const Hash_table *table) -{ - return table->n_buckets; -} - -/* Return the number of slots in use (non-empty buckets). */ - -unsigned -hash_get_n_buckets_used (const Hash_table *table) -{ - return table->n_buckets_used; -} - -/* Return the number of active entries. */ - -unsigned -hash_get_n_entries (const Hash_table *table) -{ - return table->n_entries; -} - -/* Return the length of the longest chain (bucket). */ - -unsigned -hash_get_max_bucket_length (const Hash_table *table) -{ - struct hash_entry *bucket; - unsigned max_bucket_length = 0; - - for (bucket = table->bucket; bucket < table->bucket_limit; bucket++) - { - if (bucket->data) - { - struct hash_entry *cursor = bucket; - unsigned bucket_length = 1; - - while (cursor = cursor->next, cursor) - bucket_length++; - - if (bucket_length > max_bucket_length) - max_bucket_length = bucket_length; - } - } - - return max_bucket_length; -} - -/* Do a mild validation of a hash table, by traversing it and checking two - statistics. */ - -bool -hash_table_ok (const Hash_table *table) -{ - struct hash_entry *bucket; - unsigned n_buckets_used = 0; - unsigned n_entries = 0; - - for (bucket = table->bucket; bucket < table->bucket_limit; bucket++) - { - if (bucket->data) - { - struct hash_entry *cursor = bucket; - - /* Count bucket head. */ - n_buckets_used++; - n_entries++; - - /* Count bucket overflow. */ - while (cursor = cursor->next, cursor) - n_entries++; - } - } - - if (n_buckets_used == table->n_buckets_used && n_entries == table->n_entries) - return true; - - return false; -} - -void -hash_print_statistics (const Hash_table *table, FILE *stream) -{ - unsigned n_entries = hash_get_n_entries (table); - unsigned n_buckets = hash_get_n_buckets (table); - unsigned n_buckets_used = hash_get_n_buckets_used (table); - unsigned max_bucket_length = hash_get_max_bucket_length (table); - - fprintf (stream, "# entries: %u\n", n_entries); - fprintf (stream, "# buckets: %u\n", n_buckets); - fprintf (stream, "# buckets used: %u (%.2f%%)\n", n_buckets_used, - (100.0 * n_buckets_used) / n_buckets); - fprintf (stream, "max bucket length: %u\n", max_bucket_length); -} - -/* If ENTRY matches an entry already in the hash table, return the - entry from the table. Otherwise, return NULL. */ - -void * -hash_lookup (const Hash_table *table, const void *entry) -{ - struct hash_entry *bucket - = table->bucket + table->hasher (entry, table->n_buckets); - struct hash_entry *cursor; - - if (! (bucket < table->bucket_limit)) - abort (); - - if (bucket->data == NULL) - return NULL; - - for (cursor = bucket; cursor; cursor = cursor->next) - if (table->comparator (entry, cursor->data)) - return cursor->data; - - return NULL; -} - -/* Walking. */ - -/* The functions in this page traverse the hash table and process the - contained entries. For the traversal to work properly, the hash table - should not be resized nor modified while any particular entry is being - processed. In particular, entries should not be added or removed. */ - -/* Return the first data in the table, or NULL if the table is empty. */ - -void * -hash_get_first (const Hash_table *table) -{ - struct hash_entry *bucket; - - if (table->n_entries == 0) - return NULL; - - for (bucket = table->bucket; ; bucket++) - if (! (bucket < table->bucket_limit)) - abort (); - else if (bucket->data) - return bucket->data; -} - -/* Return the user data for the entry following ENTRY, where ENTRY has been - returned by a previous call to either `hash_get_first' or `hash_get_next'. - Return NULL if there are no more entries. */ - -void * -hash_get_next (const Hash_table *table, const void *entry) -{ - struct hash_entry *bucket - = table->bucket + table->hasher (entry, table->n_buckets); - struct hash_entry *cursor; - - if (! (bucket < table->bucket_limit)) - abort (); - - /* Find next entry in the same bucket. */ - for (cursor = bucket; cursor; cursor = cursor->next) - if (cursor->data == entry && cursor->next) - return cursor->next->data; - - /* Find first entry in any subsequent bucket. */ - while (++bucket < table->bucket_limit) - if (bucket->data) - return bucket->data; - - /* None found. */ - return NULL; -} - -/* Fill BUFFER with pointers to active user entries in the hash table, then - return the number of pointers copied. Do not copy more than BUFFER_SIZE - pointers. */ - -unsigned -hash_get_entries (const Hash_table *table, void **buffer, - unsigned buffer_size) -{ - unsigned counter = 0; - struct hash_entry *bucket; - struct hash_entry *cursor; - - for (bucket = table->bucket; bucket < table->bucket_limit; bucket++) - { - if (bucket->data) - { - for (cursor = bucket; cursor; cursor = cursor->next) - { - if (counter >= buffer_size) - return counter; - buffer[counter++] = cursor->data; - } - } - } - - return counter; -} - -/* Call a PROCESSOR function for each entry of a hash table, and return the - number of entries for which the processor function returned success. A - pointer to some PROCESSOR_DATA which will be made available to each call to - the processor function. The PROCESSOR accepts two arguments: the first is - the user entry being walked into, the second is the value of PROCESSOR_DATA - as received. The walking continue for as long as the PROCESSOR function - returns nonzero. When it returns zero, the walking is interrupted. */ - -unsigned -hash_do_for_each (const Hash_table *table, Hash_processor processor, - void *processor_data) -{ - unsigned counter = 0; - struct hash_entry *bucket; - struct hash_entry *cursor; - - for (bucket = table->bucket; bucket < table->bucket_limit; bucket++) - { - if (bucket->data) - { - for (cursor = bucket; cursor; cursor = cursor->next) - { - if (!(*processor) (cursor->data, processor_data)) - return counter; - counter++; - } - } - } - - return counter; -} - -/* Allocation and clean-up. */ - -/* Return a hash index for a NUL-terminated STRING between 0 and N_BUCKETS-1. - This is a convenience routine for constructing other hashing functions. */ - -#if USE_DIFF_HASH - -/* About hashings, Paul Eggert writes to me (FP), on 1994-01-01: "Please see - B. J. McKenzie, R. Harries & T. Bell, Selecting a hashing algorithm, - Software--practice & experience 20, 2 (Feb 1990), 209-224. Good hash - algorithms tend to be domain-specific, so what's good for [diffutils'] io.c - may not be good for your application." */ - -unsigned -hash_string (const char *string, unsigned n_buckets) -{ -# define ROTATE_LEFT(Value, Shift) \ - ((Value) << (Shift) | (Value) >> ((sizeof (unsigned) * CHAR_BIT) - (Shift))) -# define HASH_ONE_CHAR(Value, Byte) \ - ((Byte) + ROTATE_LEFT (Value, 7)) - - unsigned value = 0; - - for (; *string; string++) - value = HASH_ONE_CHAR (value, *(const unsigned char *) string); - return value % n_buckets; - -# undef ROTATE_LEFT -# undef HASH_ONE_CHAR -} - -#else /* not USE_DIFF_HASH */ - -/* This one comes from `recode', and performs a bit better than the above as - per a few experiments. It is inspired from a hashing routine found in the - very old Cyber `snoop', itself written in typical Greg Mansfield style. - (By the way, what happened to this excellent man? Is he still alive?) */ - -unsigned -hash_string (const char *string, unsigned n_buckets) -{ - unsigned value = 0; - - while (*string) - value = ((value * 31 + (int) *(const unsigned char *) string++) - % n_buckets); - return value; -} - -#endif /* not USE_DIFF_HASH */ - -/* Return true if CANDIDATE is a prime number. CANDIDATE should be an odd - number at least equal to 11. */ - -static bool -is_prime (unsigned long candidate) -{ - unsigned long divisor = 3; - unsigned long square = divisor * divisor; - - while (square < candidate && (candidate % divisor)) - { - divisor++; - square += 4 * divisor; - divisor++; - } - - return (candidate % divisor ? true : false); -} - -/* Round a given CANDIDATE number up to the nearest prime, and return that - prime. Primes lower than 10 are merely skipped. */ - -static unsigned long -next_prime (unsigned long candidate) -{ - /* Skip small primes. */ - if (candidate < 10) - candidate = 10; - - /* Make it definitely odd. */ - candidate |= 1; - - while (!is_prime (candidate)) - candidate += 2; - - return candidate; -} - -void -hash_reset_tuning (Hash_tuning *tuning) -{ - *tuning = default_tuning; -} - -/* For the given hash TABLE, check the user supplied tuning structure for - reasonable values, and return true if there is no gross error with it. - Otherwise, definitively reset the TUNING field to some acceptable default - in the hash table (that is, the user loses the right of further modifying - tuning arguments), and return false. */ - -static bool -check_tuning (Hash_table *table) -{ - const Hash_tuning *tuning = table->tuning; - - if (tuning->growth_threshold > 0.0 - && tuning->growth_threshold < 1.0 - && tuning->growth_factor > 1.0 - && tuning->shrink_threshold >= 0.0 - && tuning->shrink_threshold < 1.0 - && tuning->shrink_factor > tuning->shrink_threshold - && tuning->shrink_factor <= 1.0 - && tuning->shrink_threshold < tuning->growth_threshold) - return true; - - table->tuning = &default_tuning; - return false; -} - -/* Allocate and return a new hash table, or NULL upon failure. The initial - number of buckets is automatically selected so as to _guarantee_ that you - may insert at least CANDIDATE different user entries before any growth of - the hash table size occurs. So, if have a reasonably tight a-priori upper - bound on the number of entries you intend to insert in the hash table, you - may save some table memory and insertion time, by specifying it here. If - the IS_N_BUCKETS field of the TUNING structure is true, the CANDIDATE - argument has its meaning changed to the wanted number of buckets. - - TUNING points to a structure of user-supplied values, in case some fine - tuning is wanted over the default behavior of the hasher. If TUNING is - NULL, the default tuning parameters are used instead. - - The user-supplied HASHER function should be provided. It accepts two - arguments ENTRY and TABLE_SIZE. It computes, by hashing ENTRY contents, a - slot number for that entry which should be in the range 0..TABLE_SIZE-1. - This slot number is then returned. - - The user-supplied COMPARATOR function should be provided. It accepts two - arguments pointing to user data, it then returns true for a pair of entries - that compare equal, or false otherwise. This function is internally called - on entries which are already known to hash to the same bucket index. - - The user-supplied DATA_FREER function, when not NULL, may be later called - with the user data as an argument, just before the entry containing the - data gets freed. This happens from within `hash_free' or `hash_clear'. - You should specify this function only if you want these functions to free - all of your `data' data. This is typically the case when your data is - simply an auxiliary struct that you have malloc'd to aggregate several - values. */ - -Hash_table * -hash_initialize (unsigned candidate, const Hash_tuning *tuning, - Hash_hasher hasher, Hash_comparator comparator, - Hash_data_freer data_freer) -{ - Hash_table *table; - struct hash_entry *bucket; - - if (hasher == NULL || comparator == NULL) - return NULL; - - table = (Hash_table *) malloc (sizeof (Hash_table)); - if (table == NULL) - return NULL; - - if (!tuning) - tuning = &default_tuning; - table->tuning = tuning; - if (!check_tuning (table)) - { - /* Fail if the tuning options are invalid. This is the only occasion - when the user gets some feedback about it. Once the table is created, - if the user provides invalid tuning options, we silently revert to - using the defaults, and ignore further request to change the tuning - options. */ - free (table); - return NULL; - } - - table->n_buckets - = next_prime (tuning->is_n_buckets ? candidate - : (unsigned) (candidate / tuning->growth_threshold)); - - table->bucket = (struct hash_entry *) - malloc (table->n_buckets * sizeof (struct hash_entry)); - if (table->bucket == NULL) - { - free (table); - return NULL; - } - table->bucket_limit = table->bucket + table->n_buckets; - - for (bucket = table->bucket; bucket < table->bucket_limit; bucket++) - { - bucket->data = NULL; - bucket->next = NULL; - } - table->n_buckets_used = 0; - table->n_entries = 0; - - table->hasher = hasher; - table->comparator = comparator; - table->data_freer = data_freer; - - table->free_entry_list = NULL; -#if USE_OBSTACK - obstack_init (&table->entry_stack); -#endif - return table; -} - -/* Make all buckets empty, placing any chained entries on the free list. - Apply the user-specified function data_freer (if any) to the datas of any - affected entries. */ - -void -hash_clear (Hash_table *table) -{ - struct hash_entry *bucket; - - for (bucket = table->bucket; bucket < table->bucket_limit; bucket++) - { - if (bucket->data) - { - struct hash_entry *cursor; - struct hash_entry *next; - - /* Free the bucket overflow. */ - for (cursor = bucket->next; cursor; cursor = next) - { - if (table->data_freer) - (*table->data_freer) (cursor->data); - cursor->data = NULL; - - next = cursor->next; - /* Relinking is done one entry at a time, as it is to be expected - that overflows are either rare or short. */ - cursor->next = table->free_entry_list; - table->free_entry_list = cursor; - } - - /* Free the bucket head. */ - if (table->data_freer) - (*table->data_freer) (bucket->data); - bucket->data = NULL; - bucket->next = NULL; - } - } - - table->n_buckets_used = 0; - table->n_entries = 0; -} - -/* Reclaim all storage associated with a hash table. If a data_freer - function has been supplied by the user when the hash table was created, - this function applies it to the data of each entry before freeing that - entry. */ - -void -hash_free (Hash_table *table) -{ - struct hash_entry *bucket; - struct hash_entry *cursor; - struct hash_entry *next; - - /* Call the user data_freer function. */ - if (table->data_freer && table->n_entries) - { - for (bucket = table->bucket; bucket < table->bucket_limit; bucket++) - { - if (bucket->data) - { - for (cursor = bucket; cursor; cursor = cursor->next) - { - (*table->data_freer) (cursor->data); - } - } - } - } - -#if USE_OBSTACK - - obstack_free (&table->entry_stack, NULL); - -#else - - /* Free all bucket overflowed entries. */ - for (bucket = table->bucket; bucket < table->bucket_limit; bucket++) - { - for (cursor = bucket->next; cursor; cursor = next) - { - next = cursor->next; - free (cursor); - } - } - - /* Also reclaim the internal list of previously freed entries. */ - for (cursor = table->free_entry_list; cursor; cursor = next) - { - next = cursor->next; - free (cursor); - } - -#endif - - /* Free the remainder of the hash table structure. */ - free (table->bucket); - free (table); -} - -/* Insertion and deletion. */ - -/* Get a new hash entry for a bucket overflow, possibly by reclying a - previously freed one. If this is not possible, allocate a new one. */ - -static struct hash_entry * -allocate_entry (Hash_table *table) -{ - struct hash_entry *new; - - if (table->free_entry_list) - { - new = table->free_entry_list; - table->free_entry_list = new->next; - } - else - { -#if USE_OBSTACK - new = (struct hash_entry *) - obstack_alloc (&table->entry_stack, sizeof (struct hash_entry)); -#else - new = (struct hash_entry *) malloc (sizeof (struct hash_entry)); -#endif - } - - return new; -} - -/* Free a hash entry which was part of some bucket overflow, - saving it for later recycling. */ - -static void -free_entry (Hash_table *table, struct hash_entry *entry) -{ - entry->data = NULL; - entry->next = table->free_entry_list; - table->free_entry_list = entry; -} - -/* This private function is used to help with insertion and deletion. When - ENTRY matches an entry in the table, return a pointer to the corresponding - user data and set *BUCKET_HEAD to the head of the selected bucket. - Otherwise, return NULL. When DELETE is true and ENTRY matches an entry in - the table, unlink the matching entry. */ - -static void * -hash_find_entry (Hash_table *table, const void *entry, - struct hash_entry **bucket_head, bool delete) -{ - struct hash_entry *bucket - = table->bucket + table->hasher (entry, table->n_buckets); - struct hash_entry *cursor; - - if (! (bucket < table->bucket_limit)) - abort (); - - *bucket_head = bucket; - - /* Test for empty bucket. */ - if (bucket->data == NULL) - return NULL; - - /* See if the entry is the first in the bucket. */ - if ((*table->comparator) (entry, bucket->data)) - { - void *data = bucket->data; - - if (delete) - { - if (bucket->next) - { - struct hash_entry *next = bucket->next; - - /* Bump the first overflow entry into the bucket head, then save - the previous first overflow entry for later recycling. */ - *bucket = *next; - free_entry (table, next); - } - else - { - bucket->data = NULL; - } - } - - return data; - } - - /* Scan the bucket overflow. */ - for (cursor = bucket; cursor->next; cursor = cursor->next) - { - if ((*table->comparator) (entry, cursor->next->data)) - { - void *data = cursor->next->data; - - if (delete) - { - struct hash_entry *next = cursor->next; - - /* Unlink the entry to delete, then save the freed entry for later - recycling. */ - cursor->next = next->next; - free_entry (table, next); - } - - return data; - } - } - - /* No entry found. */ - return NULL; -} - -/* For an already existing hash table, change the number of buckets through - specifying CANDIDATE. The contents of the hash table are preserved. The - new number of buckets is automatically selected so as to _guarantee_ that - the table may receive at least CANDIDATE different user entries, including - those already in the table, before any other growth of the hash table size - occurs. If TUNING->IS_N_BUCKETS is true, then CANDIDATE specifies the - exact number of buckets desired. */ - -bool -hash_rehash (Hash_table *table, unsigned candidate) -{ - Hash_table *new_table; - struct hash_entry *bucket; - struct hash_entry *cursor; - struct hash_entry *next; - - new_table = hash_initialize (candidate, table->tuning, table->hasher, - table->comparator, table->data_freer); - if (new_table == NULL) - return false; - - /* Merely reuse the extra old space into the new table. */ -#if USE_OBSTACK - obstack_free (&new_table->entry_stack, NULL); - new_table->entry_stack = table->entry_stack; -#endif - new_table->free_entry_list = table->free_entry_list; - - for (bucket = table->bucket; bucket < table->bucket_limit; bucket++) - if (bucket->data) - for (cursor = bucket; cursor; cursor = next) - { - void *data = cursor->data; - struct hash_entry *new_bucket - = (new_table->bucket - + new_table->hasher (data, new_table->n_buckets)); - - if (! (new_bucket < new_table->bucket_limit)) - abort (); - - next = cursor->next; - - if (new_bucket->data) - { - if (cursor == bucket) - { - /* Allocate or recycle an entry, when moving from a bucket - header into a bucket overflow. */ - struct hash_entry *new_entry = allocate_entry (new_table); - - if (new_entry == NULL) - return false; - - new_entry->data = data; - new_entry->next = new_bucket->next; - new_bucket->next = new_entry; - } - else - { - /* Merely relink an existing entry, when moving from a - bucket overflow into a bucket overflow. */ - cursor->next = new_bucket->next; - new_bucket->next = cursor; - } - } - else - { - /* Free an existing entry, when moving from a bucket - overflow into a bucket header. Also take care of the - simple case of moving from a bucket header into a bucket - header. */ - new_bucket->data = data; - new_table->n_buckets_used++; - if (cursor != bucket) - free_entry (new_table, cursor); - } - } - - free (table->bucket); - table->bucket = new_table->bucket; - table->bucket_limit = new_table->bucket_limit; - table->n_buckets = new_table->n_buckets; - table->n_buckets_used = new_table->n_buckets_used; - table->free_entry_list = new_table->free_entry_list; - /* table->n_entries already holds its value. */ -#if USE_OBSTACK - table->entry_stack = new_table->entry_stack; -#endif - free (new_table); - - return true; -} - -/* If ENTRY matches an entry already in the hash table, return the pointer - to the entry from the table. Otherwise, insert ENTRY and return ENTRY. - Return NULL if the storage required for insertion cannot be allocated. */ - -void * -hash_insert (Hash_table *table, const void *entry) -{ - void *data; - struct hash_entry *bucket; - - /* The caller cannot insert a NULL entry. */ - if (! entry) - abort (); - - /* If there's a matching entry already in the table, return that. */ - if ((data = hash_find_entry (table, entry, &bucket, false)) != NULL) - return data; - - /* ENTRY is not matched, it should be inserted. */ - - if (bucket->data) - { - struct hash_entry *new_entry = allocate_entry (table); - - if (new_entry == NULL) - return NULL; - - /* Add ENTRY in the overflow of the bucket. */ - - new_entry->data = (void *) entry; - new_entry->next = bucket->next; - bucket->next = new_entry; - table->n_entries++; - return (void *) entry; - } - - /* Add ENTRY right in the bucket head. */ - - bucket->data = (void *) entry; - table->n_entries++; - table->n_buckets_used++; - - /* If the growth threshold of the buckets in use has been reached, increase - the table size and rehash. There's no point in checking the number of - entries: if the hashing function is ill-conditioned, rehashing is not - likely to improve it. */ - - if (table->n_buckets_used - > table->tuning->growth_threshold * table->n_buckets) - { - /* Check more fully, before starting real work. If tuning arguments - became invalid, the second check will rely on proper defaults. */ - check_tuning (table); - if (table->n_buckets_used - > table->tuning->growth_threshold * table->n_buckets) - { - const Hash_tuning *tuning = table->tuning; - unsigned candidate - = (unsigned) (tuning->is_n_buckets - ? (table->n_buckets * tuning->growth_factor) - : (table->n_buckets * tuning->growth_factor - * tuning->growth_threshold)); - - /* If the rehash fails, arrange to return NULL. */ - if (!hash_rehash (table, candidate)) - entry = NULL; - } - } - - return (void *) entry; -} - -/* If ENTRY is already in the table, remove it and return the just-deleted - data (the user may want to deallocate its storage). If ENTRY is not in the - table, don't modify the table and return NULL. */ - -void * -hash_delete (Hash_table *table, const void *entry) -{ - void *data; - struct hash_entry *bucket; - - data = hash_find_entry (table, entry, &bucket, true); - if (!data) - return NULL; - - table->n_entries--; - if (!bucket->data) - { - table->n_buckets_used--; - - /* If the shrink threshold of the buckets in use has been reached, - rehash into a smaller table. */ - - if (table->n_buckets_used - < table->tuning->shrink_threshold * table->n_buckets) - { - /* Check more fully, before starting real work. If tuning arguments - became invalid, the second check will rely on proper defaults. */ - check_tuning (table); - if (table->n_buckets_used - < table->tuning->shrink_threshold * table->n_buckets) - { - const Hash_tuning *tuning = table->tuning; - unsigned candidate - = (unsigned) (tuning->is_n_buckets - ? table->n_buckets * tuning->shrink_factor - : (table->n_buckets * tuning->shrink_factor - * tuning->growth_threshold)); - - hash_rehash (table, candidate); - } - } - } - - return data; -} - -/* Testing. */ - -#if TESTING - -void -hash_print (const Hash_table *table) -{ - struct hash_entry *bucket; - - for (bucket = table->bucket; bucket < table->bucket_limit; bucket++) - { - struct hash_entry *cursor; - - if (bucket) - printf ("%d:\n", bucket - table->bucket); - - for (cursor = bucket; cursor; cursor = cursor->next) - { - char *s = (char *) cursor->data; - /* FIXME */ - if (s) - printf (" %s\n", s); - } - } -} - -#endif /* TESTING */ diff --git a/lib/hash.h b/lib/hash.h deleted file mode 100644 index b5537fa8..00000000 --- a/lib/hash.h +++ /dev/null @@ -1,95 +0,0 @@ -/* hash - hashing table processing. - Copyright (C) 1998, 1999, 2001 Free Software Foundation, Inc. - Written by Jim Meyering , 1998. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -/* A generic hash table package. */ - -/* Make sure USE_OBSTACK is defined to 1 if you want the allocator to use - obstacks instead of malloc, and recompile `hash.c' with same setting. */ - -#ifndef HASH_H_ -# define HASH_H_ - -# include - -# ifndef PARAMS -# if PROTOTYPES || __STDC__ -# define PARAMS(Args) Args -# else -# define PARAMS(Args) () -# endif -# endif - -typedef unsigned (*Hash_hasher) PARAMS ((const void *, unsigned)); -typedef bool (*Hash_comparator) PARAMS ((const void *, const void *)); -typedef void (*Hash_data_freer) PARAMS ((void *)); -typedef bool (*Hash_processor) PARAMS ((void *, void *)); - -struct hash_entry - { - void *data; - struct hash_entry *next; - }; - -struct hash_tuning - { - /* This structure is mainly used for `hash_initialize', see the block - documentation of `hash_reset_tuning' for more complete comments. */ - - float shrink_threshold; /* ratio of used buckets to trigger a shrink */ - float shrink_factor; /* ratio of new smaller size to original size */ - float growth_threshold; /* ratio of used buckets to trigger a growth */ - float growth_factor; /* ratio of new bigger size to original size */ - bool is_n_buckets; /* if CANDIDATE really means table size */ - }; - -typedef struct hash_tuning Hash_tuning; - -struct hash_table; - -typedef struct hash_table Hash_table; - -/* Information and lookup. */ -unsigned hash_get_n_buckets PARAMS ((const Hash_table *)); -unsigned hash_get_n_buckets_used PARAMS ((const Hash_table *)); -unsigned hash_get_n_entries PARAMS ((const Hash_table *)); -unsigned hash_get_max_bucket_length PARAMS ((const Hash_table *)); -bool hash_table_ok PARAMS ((const Hash_table *)); -void hash_print_statistics PARAMS ((const Hash_table *, FILE *)); -void *hash_lookup PARAMS ((const Hash_table *, const void *)); - -/* Walking. */ -void *hash_get_first PARAMS ((const Hash_table *)); -void *hash_get_next PARAMS ((const Hash_table *, const void *)); -unsigned hash_get_entries PARAMS ((const Hash_table *, void **, unsigned)); -unsigned hash_do_for_each PARAMS ((const Hash_table *, Hash_processor, void *)); - -/* Allocation and clean-up. */ -unsigned hash_string PARAMS ((const char *, unsigned)); -void hash_reset_tuning PARAMS ((Hash_tuning *)); -Hash_table *hash_initialize PARAMS ((unsigned, const Hash_tuning *, - Hash_hasher, Hash_comparator, - Hash_data_freer)); -void hash_clear PARAMS ((Hash_table *)); -void hash_free PARAMS ((Hash_table *)); - -/* Insertion and deletion. */ -bool hash_rehash PARAMS ((Hash_table *, unsigned)); -void *hash_insert PARAMS ((Hash_table *, const void *)); -void *hash_delete PARAMS ((Hash_table *, const void *)); - -#endif diff --git a/lib/malloc.c b/lib/malloc.c deleted file mode 100644 index bcd6b564..00000000 --- a/lib/malloc.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Work around bug on some systems where malloc (0) fails. - Copyright (C) 1997, 1998 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -/* written by Jim Meyering */ - -#if HAVE_CONFIG_H -# include -#endif -#undef malloc - -#include - -char *malloc (); - -/* Allocate an N-byte block of memory from the heap. - If N is zero, allocate a 1-byte block. */ - -char * -rpl_malloc (size_t n) -{ - if (n == 0) - n = 1; - return malloc (n); -} diff --git a/lib/mbswidth.c b/lib/mbswidth.c deleted file mode 100644 index a2ef5b3f..00000000 --- a/lib/mbswidth.c +++ /dev/null @@ -1,213 +0,0 @@ -/* Determine the number of screen columns needed for a string. - Copyright (C) 2000-2002 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -/* Written by Bruno Haible . */ - -#ifdef HAVE_CONFIG_H -# include -#endif - -/* Specification. */ -#include "mbswidth.h" - -/* Get MB_CUR_MAX. */ -#include - -#include - -/* Get isprint(). */ -#include - -/* Get mbstate_t, mbrtowc(), mbsinit(), wcwidth(). */ -#if HAVE_WCHAR_H -# include -#endif - -/* Get iswprint(), iswcntrl(). */ -#if HAVE_WCTYPE_H -# include -#endif -#if !defined iswprint && !HAVE_ISWPRINT -# define iswprint(wc) 1 -#endif -#if !defined iswcntrl && !HAVE_ISWCNTRL -# define iswcntrl(wc) 0 -#endif - -#ifndef mbsinit -# if !HAVE_MBSINIT -# define mbsinit(ps) 1 -# endif -#endif - -#ifndef HAVE_DECL_WCWIDTH -"this configure-time declaration test was not run" -#endif -#if !HAVE_DECL_WCWIDTH -int wcwidth (); -#endif - -#ifndef wcwidth -# if !HAVE_WCWIDTH -/* wcwidth doesn't exist, so assume all printable characters have - width 1. */ -# define wcwidth(wc) ((wc) == 0 ? 0 : iswprint (wc) ? 1 : -1) -# endif -#endif - -/* Get ISPRINT. */ -#if defined (STDC_HEADERS) || (!defined (isascii) && !defined (HAVE_ISASCII)) -# define IN_CTYPE_DOMAIN(c) 1 -#else -# define IN_CTYPE_DOMAIN(c) isascii(c) -#endif -/* Undefine to protect against the definition in wctype.h of solaris2.6. */ -#undef ISPRINT -#define ISPRINT(c) (IN_CTYPE_DOMAIN (c) && isprint (c)) -#undef ISCNTRL -#define ISCNTRL(c) (IN_CTYPE_DOMAIN (c) && iscntrl (c)) - -/* Returns the number of columns needed to represent the multibyte - character string pointed to by STRING. If a non-printable character - occurs, and MBSW_REJECT_UNPRINTABLE is specified, -1 is returned. - With flags = MBSW_REJECT_INVALID | MBSW_REJECT_UNPRINTABLE, this is - the multibyte analogon of the wcswidth function. */ -int -mbswidth (const char *string, int flags) -{ - return mbsnwidth (string, strlen (string), flags); -} - -/* Returns the number of columns needed to represent the multibyte - character string pointed to by STRING of length NBYTES. If a - non-printable character occurs, and MBSW_REJECT_UNPRINTABLE is - specified, -1 is returned. */ -int -mbsnwidth (const char *string, size_t nbytes, int flags) -{ - const char *p = string; - const char *plimit = p + nbytes; - int width; - - width = 0; -#if HAVE_MBRTOWC - if (MB_CUR_MAX > 1) - { - while (p < plimit) - switch (*p) - { - case ' ': case '!': case '"': case '#': case '%': - case '&': case '\'': case '(': case ')': case '*': - case '+': case ',': case '-': case '.': case '/': - case '0': case '1': case '2': case '3': case '4': - case '5': case '6': case '7': case '8': case '9': - case ':': case ';': case '<': case '=': case '>': - case '?': - case 'A': case 'B': case 'C': case 'D': case 'E': - case 'F': case 'G': case 'H': case 'I': case 'J': - case 'K': case 'L': case 'M': case 'N': case 'O': - case 'P': case 'Q': case 'R': case 'S': case 'T': - case 'U': case 'V': case 'W': case 'X': case 'Y': - case 'Z': - case '[': case '\\': case ']': case '^': case '_': - case 'a': case 'b': case 'c': case 'd': case 'e': - case 'f': case 'g': case 'h': case 'i': case 'j': - case 'k': case 'l': case 'm': case 'n': case 'o': - case 'p': case 'q': case 'r': case 's': case 't': - case 'u': case 'v': case 'w': case 'x': case 'y': - case 'z': case '{': case '|': case '}': case '~': - /* These characters are printable ASCII characters. */ - p++; - width++; - break; - default: - /* If we have a multibyte sequence, scan it up to its end. */ - { - mbstate_t mbstate; - memset (&mbstate, 0, sizeof mbstate); - do - { - wchar_t wc; - size_t bytes; - int w; - - bytes = mbrtowc (&wc, p, plimit - p, &mbstate); - - if (bytes == (size_t) -1) - /* An invalid multibyte sequence was encountered. */ - { - if (!(flags & MBSW_REJECT_INVALID)) - { - p++; - width++; - break; - } - else - return -1; - } - - if (bytes == (size_t) -2) - /* An incomplete multibyte character at the end. */ - { - if (!(flags & MBSW_REJECT_INVALID)) - { - p = plimit; - width++; - break; - } - else - return -1; - } - - if (bytes == 0) - /* A null wide character was encountered. */ - bytes = 1; - - w = wcwidth (wc); - if (w >= 0) - /* A printable multibyte character. */ - width += w; - else - /* An unprintable multibyte character. */ - if (!(flags & MBSW_REJECT_UNPRINTABLE)) - width += (iswcntrl (wc) ? 0 : 1); - else - return -1; - - p += bytes; - } - while (! mbsinit (&mbstate)); - } - break; - } - return width; - } -#endif - - while (p < plimit) - { - unsigned char c = (unsigned char) *p++; - - if (ISPRINT (c)) - width++; - else if (!(flags & MBSW_REJECT_UNPRINTABLE)) - width += (ISCNTRL (c) ? 0 : 1); - else - return -1; - } - return width; -} diff --git a/lib/mbswidth.h b/lib/mbswidth.h deleted file mode 100644 index cd41c9f2..00000000 --- a/lib/mbswidth.h +++ /dev/null @@ -1,46 +0,0 @@ -/* Determine the number of screen columns needed for a string. - Copyright (C) 2000-2003 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#include - -/* Avoid a clash of our mbswidth() with a function of the same name defined - in UnixWare 7.1.1 . We need this #include before the #define - below. */ -#if HAVE_WCHAR_H -# include -#endif - - -/* Optional flags to influence mbswidth/mbsnwidth behavior. */ - -/* If this bit is set, return -1 upon finding an invalid or incomplete - character. Otherwise, assume invalid characters have width 1. */ -#define MBSW_REJECT_INVALID 1 - -/* If this bit is set, return -1 upon finding a non-printable character. - Otherwise, assume unprintable characters have width 0 if they are - control characters and 1 otherwise. */ -#define MBSW_REJECT_UNPRINTABLE 2 - - -/* Returns the number of screen columns needed for STRING. */ -#define mbswidth gnu_mbswidth /* avoid clash with UnixWare 7.1.1 function */ -extern int mbswidth (const char *string, int flags); - -/* Returns the number of screen columns needed for the NBYTES bytes - starting at BUF. */ -extern int mbsnwidth (const char *buf, size_t nbytes, int flags); diff --git a/lib/memchr.c b/lib/memchr.c deleted file mode 100644 index 4b28e481..00000000 --- a/lib/memchr.c +++ /dev/null @@ -1,216 +0,0 @@ -/* Copyright (C) 1991,93,96,97,99,2000 Free Software Foundation, Inc. - Based on strlen implementation by Torbjorn Granlund (tege@sics.se), - with help from Dan Sahlin (dan@sics.se) and - commentary by Jim Blandy (jimb@ai.mit.edu); - adaptation to memchr suggested by Dick Karpinski (dick@cca.ucsf.edu), - and implemented by Roland McGrath (roland@ai.mit.edu). - -NOTE: The canonical source of this file is maintained with the GNU C Library. -Bugs can be reported to bug-glibc@prep.ai.mit.edu. - -This program is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -USA. */ - -#ifdef HAVE_CONFIG_H -# include -#endif - -#undef __ptr_t -#if defined (__cplusplus) || (defined (__STDC__) && __STDC__) -# define __ptr_t void * -#else /* Not C++ or ANSI C. */ -# define __ptr_t char * -#endif /* C++ or ANSI C. */ - -#if defined _LIBC -# include -# include -#else -# define reg_char char -#endif - -#if HAVE_STDLIB_H || defined _LIBC -# include -#endif - -#if HAVE_LIMITS_H || defined _LIBC -# include -#endif - -#define LONG_MAX_32_BITS 2147483647 - -#ifndef LONG_MAX -# define LONG_MAX LONG_MAX_32_BITS -#endif - -#include -#if HAVE_BP_SYM_H || defined _LIBC -# include -#else -# define BP_SYM(sym) sym -#endif - -#undef memchr -#undef __memchr - -/* Search no more than N bytes of S for C. */ -__ptr_t -__memchr (s, c_in, n) - const __ptr_t s; - int c_in; - size_t n; -{ - const unsigned char *char_ptr; - const unsigned long int *longword_ptr; - unsigned long int longword, magic_bits, charmask; - unsigned reg_char c; - - c = (unsigned char) c_in; - - /* Handle the first few characters by reading one character at a time. - Do this until CHAR_PTR is aligned on a longword boundary. */ - for (char_ptr = (const unsigned char *) s; - n > 0 && ((unsigned long int) char_ptr - & (sizeof (longword) - 1)) != 0; - --n, ++char_ptr) - if (*char_ptr == c) - return (__ptr_t) char_ptr; - - /* All these elucidatory comments refer to 4-byte longwords, - but the theory applies equally well to 8-byte longwords. */ - - longword_ptr = (unsigned long int *) char_ptr; - - /* Bits 31, 24, 16, and 8 of this number are zero. Call these bits - the "holes." Note that there is a hole just to the left of - each byte, with an extra at the end: - - bits: 01111110 11111110 11111110 11111111 - bytes: AAAAAAAA BBBBBBBB CCCCCCCC DDDDDDDD - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ - - if (sizeof (longword) != 4 && sizeof (longword) != 8) - abort (); - -#if LONG_MAX <= LONG_MAX_32_BITS - magic_bits = 0x7efefeff; -#else - magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; -#endif - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); - charmask |= charmask << 16; -#if LONG_MAX > LONG_MAX_32_BITS - charmask |= charmask << 32; -#endif - - /* Instead of the traditional loop which tests each character, - we will test a longword at a time. The tricky part is testing - if *any of the four* bytes in the longword in question are zero. */ - while (n >= sizeof (longword)) - { - /* We tentatively exit the loop if adding MAGIC_BITS to - LONGWORD fails to change any of the hole bits of LONGWORD. - - 1) Is this safe? Will it catch all the zero bytes? - Suppose there is a byte with all zeros. Any carry bits - propagating from its left will fall into the hole at its - least significant bit and stop. Since there will be no - carry from its most significant bit, the LSB of the - byte to the left will be unchanged, and the zero will be - detected. - - 2) Is this worthwhile? Will it ignore everything except - zero bytes? Suppose every byte of LONGWORD has a bit set - somewhere. There will be a carry into bit 8. If bit 8 - is set, this will carry into bit 16. If bit 8 is clear, - one of bits 9-15 must be set, so there will be a carry - into bit 16. Similarly, there will be a carry into bit - 24. If one of bits 24-30 is set, there will be a carry - into bit 31, so all of the hole bits will be changed. - - The one misfire occurs when bits 24-30 are clear and bit - 31 is set; in this case, the hole at bit 31 is not - changed. If we had access to the processor carry flag, - we could close this loophole by putting the fourth hole - at bit 32! - - So it ignores everything except 128's, when they're aligned - properly. - - 3) But wait! Aren't we looking for C, not zero? - Good point. So what we do is XOR LONGWORD with a longword, - each of whose bytes is C. This turns each byte that is C - into a zero. */ - - longword = *longword_ptr++ ^ charmask; - - /* Add MAGIC_BITS to LONGWORD. */ - if ((((longword + magic_bits) - - /* Set those bits that were unchanged by the addition. */ - ^ ~longword) - - /* Look at only the hole bits. If any of the hole bits - are unchanged, most likely one of the bytes was a - zero. */ - & ~magic_bits) != 0) - { - /* Which of the bytes was C? If none of them were, it was - a misfire; continue the search. */ - - const unsigned char *cp = (const unsigned char *) (longword_ptr - 1); - - if (cp[0] == c) - return (__ptr_t) cp; - if (cp[1] == c) - return (__ptr_t) &cp[1]; - if (cp[2] == c) - return (__ptr_t) &cp[2]; - if (cp[3] == c) - return (__ptr_t) &cp[3]; -#if LONG_MAX > 2147483647 - if (cp[4] == c) - return (__ptr_t) &cp[4]; - if (cp[5] == c) - return (__ptr_t) &cp[5]; - if (cp[6] == c) - return (__ptr_t) &cp[6]; - if (cp[7] == c) - return (__ptr_t) &cp[7]; -#endif - } - - n -= sizeof (longword); - } - - char_ptr = (const unsigned char *) longword_ptr; - - while (n-- > 0) - { - if (*char_ptr == c) - return (__ptr_t) char_ptr; - else - ++char_ptr; - } - - return 0; -} -#ifdef weak_alias -weak_alias (__memchr, BP_SYM (memchr)) -#endif diff --git a/lib/memcmp.c b/lib/memcmp.c deleted file mode 100644 index 5756bc0a..00000000 --- a/lib/memcmp.c +++ /dev/null @@ -1,386 +0,0 @@ -/* Copyright (C) 1991, 1993, 1995, 1997, 1998 Free Software Foundation, Inc. - Contributed by Torbjorn Granlund (tege@sics.se). - - NOTE: The canonical source of this file is maintained with the GNU C Library. - Bugs can be reported to bug-glibc@prep.ai.mit.edu. - - This program is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by the - Free Software Foundation; either version 2, or (at your option) any - later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, - USA. */ - -#ifdef HAVE_CONFIG_H -# include "config.h" -#endif - -#undef __ptr_t -#if defined __cplusplus || (defined __STDC__ && __STDC__) -# define __ptr_t void * -#else /* Not C++ or ANSI C. */ -# undef const -# define const -# define __ptr_t char * -#endif /* C++ or ANSI C. */ - -#ifndef __P -# if defined __GNUC__ || (defined __STDC__ && __STDC__) -# define __P(args) args -# else -# define __P(args) () -# endif /* GCC. */ -#endif /* Not __P. */ - -#if defined HAVE_STRING_H || defined _LIBC -# include -#endif - -#undef memcmp - -#ifdef _LIBC - -# include -# include - -# if __BYTE_ORDER == __BIG_ENDIAN -# define WORDS_BIGENDIAN -# endif - -#else /* Not in the GNU C library. */ - -# include - -/* Type to use for aligned memory operations. - This should normally be the biggest type supported by a single load - and store. Must be an unsigned type. */ -# define op_t unsigned long int -# define OPSIZ (sizeof(op_t)) - -/* Threshold value for when to enter the unrolled loops. */ -# define OP_T_THRES 16 - -/* Type to use for unaligned operations. */ -typedef unsigned char byte; - -# ifndef WORDS_BIGENDIAN -# define MERGE(w0, sh_1, w1, sh_2) (((w0) >> (sh_1)) | ((w1) << (sh_2))) -# else -# define MERGE(w0, sh_1, w1, sh_2) (((w0) << (sh_1)) | ((w1) >> (sh_2))) -# endif - -#endif /* In the GNU C library. */ - -#ifdef WORDS_BIGENDIAN -# define CMP_LT_OR_GT(a, b) ((a) > (b) ? 1 : -1) -#else -# define CMP_LT_OR_GT(a, b) memcmp_bytes ((a), (b)) -#endif - -/* BE VERY CAREFUL IF YOU CHANGE THIS CODE! */ - -/* The strategy of this memcmp is: - - 1. Compare bytes until one of the block pointers is aligned. - - 2. Compare using memcmp_common_alignment or - memcmp_not_common_alignment, regarding the alignment of the other - block after the initial byte operations. The maximum number of - full words (of type op_t) are compared in this way. - - 3. Compare the few remaining bytes. */ - -#ifndef WORDS_BIGENDIAN -/* memcmp_bytes -- Compare A and B bytewise in the byte order of the machine. - A and B are known to be different. - This is needed only on little-endian machines. */ - -static int memcmp_bytes __P((op_t, op_t)); - -# ifdef __GNUC__ -__inline -# endif -static int -memcmp_bytes (long unsigned int a, long unsigned int b) -{ - long int srcp1 = (long int) &a; - long int srcp2 = (long int) &b; - op_t a0, b0; - - do - { - a0 = ((byte *) srcp1)[0]; - b0 = ((byte *) srcp2)[0]; - srcp1 += 1; - srcp2 += 1; - } - while (a0 == b0); - return a0 - b0; -} -#endif - -static int memcmp_common_alignment __P((long, long, size_t)); - -/* memcmp_common_alignment -- Compare blocks at SRCP1 and SRCP2 with LEN `op_t' - objects (not LEN bytes!). Both SRCP1 and SRCP2 should be aligned for - memory operations on `op_t's. */ -#ifdef __GNUC__ -__inline -#endif -static int -memcmp_common_alignment (long int srcp1, long int srcp2, size_t len) -{ - op_t a0, a1; - op_t b0, b1; - - switch (len % 4) - { - default: /* Avoid warning about uninitialized local variables. */ - case 2: - a0 = ((op_t *) srcp1)[0]; - b0 = ((op_t *) srcp2)[0]; - srcp1 -= 2 * OPSIZ; - srcp2 -= 2 * OPSIZ; - len += 2; - goto do1; - case 3: - a1 = ((op_t *) srcp1)[0]; - b1 = ((op_t *) srcp2)[0]; - srcp1 -= OPSIZ; - srcp2 -= OPSIZ; - len += 1; - goto do2; - case 0: - if (OP_T_THRES <= 3 * OPSIZ && len == 0) - return 0; - a0 = ((op_t *) srcp1)[0]; - b0 = ((op_t *) srcp2)[0]; - goto do3; - case 1: - a1 = ((op_t *) srcp1)[0]; - b1 = ((op_t *) srcp2)[0]; - srcp1 += OPSIZ; - srcp2 += OPSIZ; - len -= 1; - if (OP_T_THRES <= 3 * OPSIZ && len == 0) - goto do0; - /* Fall through. */ - } - - do - { - a0 = ((op_t *) srcp1)[0]; - b0 = ((op_t *) srcp2)[0]; - if (a1 != b1) - return CMP_LT_OR_GT (a1, b1); - - do3: - a1 = ((op_t *) srcp1)[1]; - b1 = ((op_t *) srcp2)[1]; - if (a0 != b0) - return CMP_LT_OR_GT (a0, b0); - - do2: - a0 = ((op_t *) srcp1)[2]; - b0 = ((op_t *) srcp2)[2]; - if (a1 != b1) - return CMP_LT_OR_GT (a1, b1); - - do1: - a1 = ((op_t *) srcp1)[3]; - b1 = ((op_t *) srcp2)[3]; - if (a0 != b0) - return CMP_LT_OR_GT (a0, b0); - - srcp1 += 4 * OPSIZ; - srcp2 += 4 * OPSIZ; - len -= 4; - } - while (len != 0); - - /* This is the right position for do0. Please don't move - it into the loop. */ - do0: - if (a1 != b1) - return CMP_LT_OR_GT (a1, b1); - return 0; -} - -static int memcmp_not_common_alignment __P((long, long, size_t)); - -/* memcmp_not_common_alignment -- Compare blocks at SRCP1 and SRCP2 with LEN - `op_t' objects (not LEN bytes!). SRCP2 should be aligned for memory - operations on `op_t', but SRCP1 *should be unaligned*. */ -#ifdef __GNUC__ -__inline -#endif -static int -memcmp_not_common_alignment (long int srcp1, long int srcp2, size_t len) -{ - op_t a0, a1, a2, a3; - op_t b0, b1, b2, b3; - op_t x; - int shl, shr; - - /* Calculate how to shift a word read at the memory operation - aligned srcp1 to make it aligned for comparison. */ - - shl = 8 * (srcp1 % OPSIZ); - shr = 8 * OPSIZ - shl; - - /* Make SRCP1 aligned by rounding it down to the beginning of the `op_t' - it points in the middle of. */ - srcp1 &= -OPSIZ; - - switch (len % 4) - { - default: /* Avoid warning about uninitialized local variables. */ - case 2: - a1 = ((op_t *) srcp1)[0]; - a2 = ((op_t *) srcp1)[1]; - b2 = ((op_t *) srcp2)[0]; - srcp1 -= 1 * OPSIZ; - srcp2 -= 2 * OPSIZ; - len += 2; - goto do1; - case 3: - a0 = ((op_t *) srcp1)[0]; - a1 = ((op_t *) srcp1)[1]; - b1 = ((op_t *) srcp2)[0]; - srcp2 -= 1 * OPSIZ; - len += 1; - goto do2; - case 0: - if (OP_T_THRES <= 3 * OPSIZ && len == 0) - return 0; - a3 = ((op_t *) srcp1)[0]; - a0 = ((op_t *) srcp1)[1]; - b0 = ((op_t *) srcp2)[0]; - srcp1 += 1 * OPSIZ; - goto do3; - case 1: - a2 = ((op_t *) srcp1)[0]; - a3 = ((op_t *) srcp1)[1]; - b3 = ((op_t *) srcp2)[0]; - srcp1 += 2 * OPSIZ; - srcp2 += 1 * OPSIZ; - len -= 1; - if (OP_T_THRES <= 3 * OPSIZ && len == 0) - goto do0; - /* Fall through. */ - } - - do - { - a0 = ((op_t *) srcp1)[0]; - b0 = ((op_t *) srcp2)[0]; - x = MERGE(a2, shl, a3, shr); - if (x != b3) - return CMP_LT_OR_GT (x, b3); - - do3: - a1 = ((op_t *) srcp1)[1]; - b1 = ((op_t *) srcp2)[1]; - x = MERGE(a3, shl, a0, shr); - if (x != b0) - return CMP_LT_OR_GT (x, b0); - - do2: - a2 = ((op_t *) srcp1)[2]; - b2 = ((op_t *) srcp2)[2]; - x = MERGE(a0, shl, a1, shr); - if (x != b1) - return CMP_LT_OR_GT (x, b1); - - do1: - a3 = ((op_t *) srcp1)[3]; - b3 = ((op_t *) srcp2)[3]; - x = MERGE(a1, shl, a2, shr); - if (x != b2) - return CMP_LT_OR_GT (x, b2); - - srcp1 += 4 * OPSIZ; - srcp2 += 4 * OPSIZ; - len -= 4; - } - while (len != 0); - - /* This is the right position for do0. Please don't move - it into the loop. */ - do0: - x = MERGE(a2, shl, a3, shr); - if (x != b3) - return CMP_LT_OR_GT (x, b3); - return 0; -} - -int -rpl_memcmp (const void *s1, const void *s2, size_t len) -{ - op_t a0; - op_t b0; - long int srcp1 = (long int) s1; - long int srcp2 = (long int) s2; - op_t res; - - if (len >= OP_T_THRES) - { - /* There are at least some bytes to compare. No need to test - for LEN == 0 in this alignment loop. */ - while (srcp2 % OPSIZ != 0) - { - a0 = ((byte *) srcp1)[0]; - b0 = ((byte *) srcp2)[0]; - srcp1 += 1; - srcp2 += 1; - res = a0 - b0; - if (res != 0) - return res; - len -= 1; - } - - /* SRCP2 is now aligned for memory operations on `op_t'. - SRCP1 alignment determines if we can do a simple, - aligned compare or need to shuffle bits. */ - - if (srcp1 % OPSIZ == 0) - res = memcmp_common_alignment (srcp1, srcp2, len / OPSIZ); - else - res = memcmp_not_common_alignment (srcp1, srcp2, len / OPSIZ); - if (res != 0) - return res; - - /* Number of bytes remaining in the interval [0..OPSIZ-1]. */ - srcp1 += len & -OPSIZ; - srcp2 += len & -OPSIZ; - len %= OPSIZ; - } - - /* There are just a few bytes to compare. Use byte memory operations. */ - while (len != 0) - { - a0 = ((byte *) srcp1)[0]; - b0 = ((byte *) srcp2)[0]; - srcp1 += 1; - srcp2 += 1; - res = a0 - b0; - if (res != 0) - return res; - len -= 1; - } - - return 0; -} - -#ifdef weak_alias -# undef bcmp -weak_alias (memcmp, bcmp) -#endif diff --git a/lib/memrchr.c b/lib/memrchr.c deleted file mode 100644 index 4a3141e2..00000000 --- a/lib/memrchr.c +++ /dev/null @@ -1,209 +0,0 @@ -/* memrchr -- find the last occurrence of a byte in a memory block - Copyright (C) 1991, 93, 96, 97, 99, 2000 Free Software Foundation, Inc. - Based on strlen implementation by Torbjorn Granlund (tege@sics.se), - with help from Dan Sahlin (dan@sics.se) and - commentary by Jim Blandy (jimb@ai.mit.edu); - adaptation to memchr suggested by Dick Karpinski (dick@cca.ucsf.edu), - and implemented by Roland McGrath (roland@ai.mit.edu). - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public License as - published by the Free Software Foundation; either version 2 of the - License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If not, - write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ - -#ifdef HAVE_CONFIG_H -# include -#endif - -#include - -#undef __ptr_t -#if defined (__cplusplus) || (defined (__STDC__) && __STDC__) -# define __ptr_t void * -#else /* Not C++ or ANSI C. */ -# define __ptr_t char * -#endif /* C++ or ANSI C. */ - -#if defined (_LIBC) -# include -# include -#else -# define reg_char char -#endif - -#if defined (HAVE_LIMITS_H) || defined (_LIBC) -# include -#endif - -#define LONG_MAX_32_BITS 2147483647 - -#ifndef LONG_MAX -# define LONG_MAX LONG_MAX_32_BITS -#endif - -#include - -#undef __memrchr -#undef memrchr - -#ifndef weak_alias -# define __memrchr memrchr -#endif - -/* Search no more than N bytes of S for C. */ -__ptr_t -__memrchr (s, c_in, n) - const __ptr_t s; - int c_in; - size_t n; -{ - const unsigned char *char_ptr; - const unsigned long int *longword_ptr; - unsigned long int longword, magic_bits, charmask; - unsigned reg_char c; - - c = (unsigned char) c_in; - - /* Handle the last few characters by reading one character at a time. - Do this until CHAR_PTR is aligned on a longword boundary. */ - for (char_ptr = (const unsigned char *) s + n; - n > 0 && ((unsigned long int) char_ptr - & (sizeof (longword) - 1)) != 0; - --n) - if (*--char_ptr == c) - return (__ptr_t) char_ptr; - - /* All these elucidatory comments refer to 4-byte longwords, - but the theory applies equally well to 8-byte longwords. */ - - longword_ptr = (unsigned long int *) char_ptr; - - /* Bits 31, 24, 16, and 8 of this number are zero. Call these bits - the "holes." Note that there is a hole just to the left of - each byte, with an extra at the end: - - bits: 01111110 11111110 11111110 11111111 - bytes: AAAAAAAA BBBBBBBB CCCCCCCC DDDDDDDD - - The 1-bits make sure that carries propagate to the next 0-bit. - The 0-bits provide holes for carries to fall into. */ - - if (sizeof (longword) != 4 && sizeof (longword) != 8) - abort (); - -#if LONG_MAX <= LONG_MAX_32_BITS - magic_bits = 0x7efefeff; -#else - magic_bits = ((unsigned long int) 0x7efefefe << 32) | 0xfefefeff; -#endif - - /* Set up a longword, each of whose bytes is C. */ - charmask = c | (c << 8); - charmask |= charmask << 16; -#if LONG_MAX > LONG_MAX_32_BITS - charmask |= charmask << 32; -#endif - - /* Instead of the traditional loop which tests each character, - we will test a longword at a time. The tricky part is testing - if *any of the four* bytes in the longword in question are zero. */ - while (n >= sizeof (longword)) - { - /* We tentatively exit the loop if adding MAGIC_BITS to - LONGWORD fails to change any of the hole bits of LONGWORD. - - 1) Is this safe? Will it catch all the zero bytes? - Suppose there is a byte with all zeros. Any carry bits - propagating from its left will fall into the hole at its - least significant bit and stop. Since there will be no - carry from its most significant bit, the LSB of the - byte to the left will be unchanged, and the zero will be - detected. - - 2) Is this worthwhile? Will it ignore everything except - zero bytes? Suppose every byte of LONGWORD has a bit set - somewhere. There will be a carry into bit 8. If bit 8 - is set, this will carry into bit 16. If bit 8 is clear, - one of bits 9-15 must be set, so there will be a carry - into bit 16. Similarly, there will be a carry into bit - 24. If one of bits 24-30 is set, there will be a carry - into bit 31, so all of the hole bits will be changed. - - The one misfire occurs when bits 24-30 are clear and bit - 31 is set; in this case, the hole at bit 31 is not - changed. If we had access to the processor carry flag, - we could close this loophole by putting the fourth hole - at bit 32! - - So it ignores everything except 128's, when they're aligned - properly. - - 3) But wait! Aren't we looking for C, not zero? - Good point. So what we do is XOR LONGWORD with a longword, - each of whose bytes is C. This turns each byte that is C - into a zero. */ - - longword = *--longword_ptr ^ charmask; - - /* Add MAGIC_BITS to LONGWORD. */ - if ((((longword + magic_bits) - - /* Set those bits that were unchanged by the addition. */ - ^ ~longword) - - /* Look at only the hole bits. If any of the hole bits - are unchanged, most likely one of the bytes was a - zero. */ - & ~magic_bits) != 0) - { - /* Which of the bytes was C? If none of them were, it was - a misfire; continue the search. */ - - const unsigned char *cp = (const unsigned char *) longword_ptr; - -#if LONG_MAX > 2147483647 - if (cp[7] == c) - return (__ptr_t) &cp[7]; - if (cp[6] == c) - return (__ptr_t) &cp[6]; - if (cp[5] == c) - return (__ptr_t) &cp[5]; - if (cp[4] == c) - return (__ptr_t) &cp[4]; -#endif - if (cp[3] == c) - return (__ptr_t) &cp[3]; - if (cp[2] == c) - return (__ptr_t) &cp[2]; - if (cp[1] == c) - return (__ptr_t) &cp[1]; - if (cp[0] == c) - return (__ptr_t) cp; - } - - n -= sizeof (longword); - } - - char_ptr = (const unsigned char *) longword_ptr; - - while (n-- > 0) - { - if (*--char_ptr == c) - return (__ptr_t) char_ptr; - } - - return 0; -} -#ifdef weak_alias -weak_alias (__memrchr, memrchr) -#endif diff --git a/lib/obstack.c b/lib/obstack.c deleted file mode 100644 index 17eb986f..00000000 --- a/lib/obstack.c +++ /dev/null @@ -1,616 +0,0 @@ -/* obstack.c - subroutines used implicitly by object stack macros - Copyright (C) 1988-1994, 1996-1999, 2000-2002 Free Software Foundation, Inc. - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#ifdef HAVE_CONFIG_H -# include -#endif - -#include "obstack.h" - -/* NOTE BEFORE MODIFYING THIS FILE: This version number must be - incremented whenever callers compiled using an old obstack.h can no - longer properly call the functions in this obstack.c. */ -#define OBSTACK_INTERFACE_VERSION 1 - -/* Comment out all this code if we are using the GNU C Library, and are not - actually compiling the library itself, and the installed library - supports the same library interface we do. This code is part of the GNU - C Library, but also included in many other GNU distributions. Compiling - and linking in this code is a waste when using the GNU C library - (especially if it is a shared library). Rather than having every GNU - program understand `configure --with-gnu-libc' and omit the object - files, it is simpler to just do this in the source for each such file. */ - -#include /* Random thing to get __GNU_LIBRARY__. */ -#if !defined _LIBC && defined __GNU_LIBRARY__ && __GNU_LIBRARY__ > 1 -# include -# if _GNU_OBSTACK_INTERFACE_VERSION == OBSTACK_INTERFACE_VERSION -# define ELIDE_CODE -# endif -#endif - -#if defined _LIBC && defined USE_IN_LIBIO -# include -#endif - -#ifndef ELIDE_CODE - - -# if defined __STDC__ && __STDC__ -# define POINTER void * -# else -# define POINTER char * -# endif - -/* Determine default alignment. */ -struct fooalign {char x; double d;}; -# define DEFAULT_ALIGNMENT \ - ((PTR_INT_TYPE) ((char *) &((struct fooalign *) 0)->d - (char *) 0)) -/* If malloc were really smart, it would round addresses to DEFAULT_ALIGNMENT. - But in fact it might be less smart and round addresses to as much as - DEFAULT_ROUNDING. So we prepare for it to do that. */ -union fooround {long x; double d;}; -# define DEFAULT_ROUNDING (sizeof (union fooround)) - -/* When we copy a long block of data, this is the unit to do it with. - On some machines, copying successive ints does not work; - in such a case, redefine COPYING_UNIT to `long' (if that works) - or `char' as a last resort. */ -# ifndef COPYING_UNIT -# define COPYING_UNIT int -# endif - - -/* The functions allocating more room by calling `obstack_chunk_alloc' - jump to the handler pointed to by `obstack_alloc_failed_handler'. - This can be set to a user defined function which should either - abort gracefully or use longjump - but shouldn't return. This - variable by default points to the internal function - `print_and_abort'. */ -# if defined __STDC__ && __STDC__ -static void print_and_abort (void); -void (*obstack_alloc_failed_handler) (void) = print_and_abort; -# else -static void print_and_abort (); -void (*obstack_alloc_failed_handler) () = print_and_abort; -# endif - -/* Exit value used when `print_and_abort' is used. */ -# if defined __GNU_LIBRARY__ || defined HAVE_STDLIB_H -# include -# endif -# ifndef EXIT_FAILURE -# define EXIT_FAILURE 1 -# endif -int obstack_exit_failure = EXIT_FAILURE; - -/* The non-GNU-C macros copy the obstack into this global variable - to avoid multiple evaluation. */ - -struct obstack *_obstack; - -/* Define a macro that either calls functions with the traditional malloc/free - calling interface, or calls functions with the mmalloc/mfree interface - (that adds an extra first argument), based on the state of use_extra_arg. - For free, do not use ?:, since some compilers, like the MIPS compilers, - do not allow (expr) ? void : void. */ - -# if defined __STDC__ && __STDC__ -# define CALL_CHUNKFUN(h, size) \ - (((h) -> use_extra_arg) \ - ? (*(h)->chunkfun) ((h)->extra_arg, (size)) \ - : (*(struct _obstack_chunk *(*) (long)) (h)->chunkfun) ((size))) - -# define CALL_FREEFUN(h, old_chunk) \ - do { \ - if ((h) -> use_extra_arg) \ - (*(h)->freefun) ((h)->extra_arg, (old_chunk)); \ - else \ - (*(void (*) (void *)) (h)->freefun) ((old_chunk)); \ - } while (0) -# else -# define CALL_CHUNKFUN(h, size) \ - (((h) -> use_extra_arg) \ - ? (*(h)->chunkfun) ((h)->extra_arg, (size)) \ - : (*(struct _obstack_chunk *(*) ()) (h)->chunkfun) ((size))) - -# define CALL_FREEFUN(h, old_chunk) \ - do { \ - if ((h) -> use_extra_arg) \ - (*(h)->freefun) ((h)->extra_arg, (old_chunk)); \ - else \ - (*(void (*) ()) (h)->freefun) ((old_chunk)); \ - } while (0) -# endif - - -/* Initialize an obstack H for use. Specify chunk size SIZE (0 means default). - Objects start on multiples of ALIGNMENT (0 means use default). - CHUNKFUN is the function to use to allocate chunks, - and FREEFUN the function to free them. - - Return nonzero if successful, calls obstack_alloc_failed_handler if - allocation fails. */ - -int -_obstack_begin (h, size, alignment, chunkfun, freefun) - struct obstack *h; - int size; - int alignment; -# if defined __STDC__ && __STDC__ - POINTER (*chunkfun) (long); - void (*freefun) (void *); -# else - POINTER (*chunkfun) (); - void (*freefun) (); -# endif -{ - register struct _obstack_chunk *chunk; /* points to new chunk */ - - if (alignment == 0) - alignment = (int) DEFAULT_ALIGNMENT; - if (size == 0) - /* Default size is what GNU malloc can fit in a 4096-byte block. */ - { - /* 12 is sizeof (mhead) and 4 is EXTRA from GNU malloc. - Use the values for range checking, because if range checking is off, - the extra bytes won't be missed terribly, but if range checking is on - and we used a larger request, a whole extra 4096 bytes would be - allocated. - - These number are irrelevant to the new GNU malloc. I suspect it is - less sensitive to the size of the request. */ - int extra = ((((12 + DEFAULT_ROUNDING - 1) & ~(DEFAULT_ROUNDING - 1)) - + 4 + DEFAULT_ROUNDING - 1) - & ~(DEFAULT_ROUNDING - 1)); - size = 4096 - extra; - } - -# if defined __STDC__ && __STDC__ - h->chunkfun = (struct _obstack_chunk * (*)(void *, long)) chunkfun; - h->freefun = (void (*) (void *, struct _obstack_chunk *)) freefun; -# else - h->chunkfun = (struct _obstack_chunk * (*)()) chunkfun; - h->freefun = freefun; -# endif - h->chunk_size = size; - h->alignment_mask = alignment - 1; - h->use_extra_arg = 0; - - chunk = h->chunk = CALL_CHUNKFUN (h, h -> chunk_size); - if (!chunk) - (*obstack_alloc_failed_handler) (); - h->next_free = h->object_base = chunk->contents; - h->chunk_limit = chunk->limit - = (char *) chunk + h->chunk_size; - chunk->prev = 0; - /* The initial chunk now contains no empty object. */ - h->maybe_empty_object = 0; - h->alloc_failed = 0; - return 1; -} - -int -_obstack_begin_1 (h, size, alignment, chunkfun, freefun, arg) - struct obstack *h; - int size; - int alignment; -# if defined __STDC__ && __STDC__ - POINTER (*chunkfun) (POINTER, long); - void (*freefun) (POINTER, POINTER); -# else - POINTER (*chunkfun) (); - void (*freefun) (); -# endif - POINTER arg; -{ - register struct _obstack_chunk *chunk; /* points to new chunk */ - - if (alignment == 0) - alignment = (int) DEFAULT_ALIGNMENT; - if (size == 0) - /* Default size is what GNU malloc can fit in a 4096-byte block. */ - { - /* 12 is sizeof (mhead) and 4 is EXTRA from GNU malloc. - Use the values for range checking, because if range checking is off, - the extra bytes won't be missed terribly, but if range checking is on - and we used a larger request, a whole extra 4096 bytes would be - allocated. - - These number are irrelevant to the new GNU malloc. I suspect it is - less sensitive to the size of the request. */ - int extra = ((((12 + DEFAULT_ROUNDING - 1) & ~(DEFAULT_ROUNDING - 1)) - + 4 + DEFAULT_ROUNDING - 1) - & ~(DEFAULT_ROUNDING - 1)); - size = 4096 - extra; - } - -# if defined __STDC__ && __STDC__ - h->chunkfun = (struct _obstack_chunk * (*)(void *,long)) chunkfun; - h->freefun = (void (*) (void *, struct _obstack_chunk *)) freefun; -# else - h->chunkfun = (struct _obstack_chunk * (*)()) chunkfun; - h->freefun = freefun; -# endif - h->chunk_size = size; - h->alignment_mask = alignment - 1; - h->extra_arg = arg; - h->use_extra_arg = 1; - - chunk = h->chunk = CALL_CHUNKFUN (h, h -> chunk_size); - if (!chunk) - (*obstack_alloc_failed_handler) (); - h->next_free = h->object_base = chunk->contents; - h->chunk_limit = chunk->limit - = (char *) chunk + h->chunk_size; - chunk->prev = 0; - /* The initial chunk now contains no empty object. */ - h->maybe_empty_object = 0; - h->alloc_failed = 0; - return 1; -} - -/* Allocate a new current chunk for the obstack *H - on the assumption that LENGTH bytes need to be added - to the current object, or a new object of length LENGTH allocated. - Copies any partial object from the end of the old chunk - to the beginning of the new one. */ - -void -_obstack_newchunk (h, length) - struct obstack *h; - int length; -{ - register struct _obstack_chunk *old_chunk = h->chunk; - register struct _obstack_chunk *new_chunk; - register long new_size; - register long obj_size = h->next_free - h->object_base; - register long i; - long already; - char *object_base; - - /* Compute size for new chunk. */ - new_size = (obj_size + length) + (obj_size >> 3) + h->alignment_mask + 100; - if (new_size < h->chunk_size) - new_size = h->chunk_size; - - /* Allocate and initialize the new chunk. */ - new_chunk = CALL_CHUNKFUN (h, new_size); - if (!new_chunk) - (*obstack_alloc_failed_handler) (); - h->chunk = new_chunk; - new_chunk->prev = old_chunk; - new_chunk->limit = h->chunk_limit = (char *) new_chunk + new_size; - - /* Compute an aligned object_base in the new chunk */ - object_base = - __INT_TO_PTR ((__PTR_TO_INT (new_chunk->contents) + h->alignment_mask) - & ~ (h->alignment_mask)); - - /* Move the existing object to the new chunk. - Word at a time is fast and is safe if the object - is sufficiently aligned. */ - if (h->alignment_mask + 1 >= DEFAULT_ALIGNMENT) - { - for (i = obj_size / sizeof (COPYING_UNIT) - 1; - i >= 0; i--) - ((COPYING_UNIT *)object_base)[i] - = ((COPYING_UNIT *)h->object_base)[i]; - /* We used to copy the odd few remaining bytes as one extra COPYING_UNIT, - but that can cross a page boundary on a machine - which does not do strict alignment for COPYING_UNITS. */ - already = obj_size / sizeof (COPYING_UNIT) * sizeof (COPYING_UNIT); - } - else - already = 0; - /* Copy remaining bytes one by one. */ - for (i = already; i < obj_size; i++) - object_base[i] = h->object_base[i]; - - /* If the object just copied was the only data in OLD_CHUNK, - free that chunk and remove it from the chain. - But not if that chunk might contain an empty object. */ - if (h->object_base == old_chunk->contents && ! h->maybe_empty_object) - { - new_chunk->prev = old_chunk->prev; - CALL_FREEFUN (h, old_chunk); - } - - h->object_base = object_base; - h->next_free = h->object_base + obj_size; - /* The new chunk certainly contains no empty object yet. */ - h->maybe_empty_object = 0; -} - -/* Return nonzero if object OBJ has been allocated from obstack H. - This is here for debugging. - If you use it in a program, you are probably losing. */ - -# if defined __STDC__ && __STDC__ -/* Suppress -Wmissing-prototypes warning. We don't want to declare this in - obstack.h because it is just for debugging. */ -int _obstack_allocated_p (struct obstack *h, POINTER obj); -# endif - -int -_obstack_allocated_p (h, obj) - struct obstack *h; - POINTER obj; -{ - register struct _obstack_chunk *lp; /* below addr of any objects in this chunk */ - register struct _obstack_chunk *plp; /* point to previous chunk if any */ - - lp = (h)->chunk; - /* We use >= rather than > since the object cannot be exactly at - the beginning of the chunk but might be an empty object exactly - at the end of an adjacent chunk. */ - while (lp != 0 && ((POINTER) lp >= obj || (POINTER) (lp)->limit < obj)) - { - plp = lp->prev; - lp = plp; - } - return lp != 0; -} - -/* Free objects in obstack H, including OBJ and everything allocate - more recently than OBJ. If OBJ is zero, free everything in H. */ - -# undef obstack_free - -/* This function has two names with identical definitions. - This is the first one, called from non-ANSI code. */ - -void -_obstack_free (h, obj) - struct obstack *h; - POINTER obj; -{ - register struct _obstack_chunk *lp; /* below addr of any objects in this chunk */ - register struct _obstack_chunk *plp; /* point to previous chunk if any */ - - lp = h->chunk; - /* We use >= because there cannot be an object at the beginning of a chunk. - But there can be an empty object at that address - at the end of another chunk. */ - while (lp != 0 && ((POINTER) lp >= obj || (POINTER) (lp)->limit < obj)) - { - plp = lp->prev; - CALL_FREEFUN (h, lp); - lp = plp; - /* If we switch chunks, we can't tell whether the new current - chunk contains an empty object, so assume that it may. */ - h->maybe_empty_object = 1; - } - if (lp) - { - h->object_base = h->next_free = (char *) (obj); - h->chunk_limit = lp->limit; - h->chunk = lp; - } - else if (obj != 0) - /* obj is not in any of the chunks! */ - abort (); -} - -/* This function is used from ANSI code. */ - -void -obstack_free (h, obj) - struct obstack *h; - POINTER obj; -{ - register struct _obstack_chunk *lp; /* below addr of any objects in this chunk */ - register struct _obstack_chunk *plp; /* point to previous chunk if any */ - - lp = h->chunk; - /* We use >= because there cannot be an object at the beginning of a chunk. - But there can be an empty object at that address - at the end of another chunk. */ - while (lp != 0 && ((POINTER) lp >= obj || (POINTER) (lp)->limit < obj)) - { - plp = lp->prev; - CALL_FREEFUN (h, lp); - lp = plp; - /* If we switch chunks, we can't tell whether the new current - chunk contains an empty object, so assume that it may. */ - h->maybe_empty_object = 1; - } - if (lp) - { - h->object_base = h->next_free = (char *) (obj); - h->chunk_limit = lp->limit; - h->chunk = lp; - } - else if (obj != 0) - /* obj is not in any of the chunks! */ - abort (); -} - -int -_obstack_memory_used (h) - struct obstack *h; -{ - register struct _obstack_chunk* lp; - register int nbytes = 0; - - for (lp = h->chunk; lp != 0; lp = lp->prev) - { - nbytes += lp->limit - (char *) lp; - } - return nbytes; -} - -/* Define the error handler. */ -# ifdef _LIBC -# include -# else -# include "gettext.h" -# endif -# define _(msgid) gettext (msgid) - -# if defined _LIBC && defined USE_IN_LIBIO -# include -# define fputs(s, f) _IO_fputs (s, f) -# endif - -# ifndef __attribute__ -/* This feature is available in gcc versions 2.5 and later. */ -# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) -# define __attribute__(Spec) /* empty */ -# endif -# endif - -static void -__attribute__ ((noreturn)) -print_and_abort () -{ - /* Don't change any of these strings. Yes, it would be possible to add - the newline to the string and use fputs or so. But this must not - happen because the "memory exhausted" message appears in other places - like this and the translation should be reused instead of creating - a very similar string which requires a separate translation. */ -# if defined _LIBC && defined USE_IN_LIBIO - if (_IO_fwide (stderr, 0) > 0) - __fwprintf (stderr, L"%s\n", _("memory exhausted")); - else -# endif - fprintf (stderr, "%s\n", _("memory exhausted")); - exit (obstack_exit_failure); -} - -# if 0 -/* These are now turned off because the applications do not use it - and it uses bcopy via obstack_grow, which causes trouble on sysV. */ - -/* Now define the functional versions of the obstack macros. - Define them to simply use the corresponding macros to do the job. */ - -# if defined __STDC__ && __STDC__ -/* These function definitions do not work with non-ANSI preprocessors; - they won't pass through the macro names in parentheses. */ - -/* The function names appear in parentheses in order to prevent - the macro-definitions of the names from being expanded there. */ - -POINTER (obstack_base) (obstack) - struct obstack *obstack; -{ - return obstack_base (obstack); -} - -POINTER (obstack_next_free) (obstack) - struct obstack *obstack; -{ - return obstack_next_free (obstack); -} - -int (obstack_object_size) (obstack) - struct obstack *obstack; -{ - return obstack_object_size (obstack); -} - -int (obstack_room) (obstack) - struct obstack *obstack; -{ - return obstack_room (obstack); -} - -int (obstack_make_room) (obstack, length) - struct obstack *obstack; - int length; -{ - return obstack_make_room (obstack, length); -} - -void (obstack_grow) (obstack, data, length) - struct obstack *obstack; - const POINTER data; - int length; -{ - obstack_grow (obstack, data, length); -} - -void (obstack_grow0) (obstack, data, length) - struct obstack *obstack; - const POINTER data; - int length; -{ - obstack_grow0 (obstack, data, length); -} - -void (obstack_1grow) (obstack, character) - struct obstack *obstack; - int character; -{ - obstack_1grow (obstack, character); -} - -void (obstack_blank) (obstack, length) - struct obstack *obstack; - int length; -{ - obstack_blank (obstack, length); -} - -void (obstack_1grow_fast) (obstack, character) - struct obstack *obstack; - int character; -{ - obstack_1grow_fast (obstack, character); -} - -void (obstack_blank_fast) (obstack, length) - struct obstack *obstack; - int length; -{ - obstack_blank_fast (obstack, length); -} - -POINTER (obstack_finish) (obstack) - struct obstack *obstack; -{ - return obstack_finish (obstack); -} - -POINTER (obstack_alloc) (obstack, length) - struct obstack *obstack; - int length; -{ - return obstack_alloc (obstack, length); -} - -POINTER (obstack_copy) (obstack, address, length) - struct obstack *obstack; - const POINTER address; - int length; -{ - return obstack_copy (obstack, address, length); -} - -POINTER (obstack_copy0) (obstack, address, length) - struct obstack *obstack; - const POINTER address; - int length; -{ - return obstack_copy0 (obstack, address, length); -} - -# endif /* __STDC__ */ - -# endif /* 0 */ - -#endif /* !ELIDE_CODE */ diff --git a/lib/obstack.h b/lib/obstack.h deleted file mode 100644 index c0fc9ac6..00000000 --- a/lib/obstack.h +++ /dev/null @@ -1,613 +0,0 @@ -/* obstack.h - object stack macros - Copyright (C) 1988,89,90,91,92,93,94,96,97,98,99,2003 Free Software Foundation, Inc. - - This file is part of the GNU C Library. Its master source is NOT part of - the C library, however. The master source lives in /gd/gnu/lib. - - NOTE: The canonical source of this file is maintained with the GNU C Library. - Bugs can be reported to bug-glibc@gnu.org. - - 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, - USA. */ - -/* Summary: - -All the apparent functions defined here are macros. The idea -is that you would use these pre-tested macros to solve a -very specific set of problems, and they would run fast. -Caution: no side-effects in arguments please!! They may be -evaluated MANY times!! - -These macros operate a stack of objects. Each object starts life -small, and may grow to maturity. (Consider building a word syllable -by syllable.) An object can move while it is growing. Once it has -been "finished" it never changes address again. So the "top of the -stack" is typically an immature growing object, while the rest of the -stack is of mature, fixed size and fixed address objects. - -These routines grab large chunks of memory, using a function you -supply, called `obstack_chunk_alloc'. On occasion, they free chunks, -by calling `obstack_chunk_free'. You must define them and declare -them before using any obstack macros. - -Each independent stack is represented by a `struct obstack'. -Each of the obstack macros expects a pointer to such a structure -as the first argument. - -One motivation for this package is the problem of growing char strings -in symbol tables. Unless you are "fascist pig with a read-only mind" ---Gosper's immortal quote from HAKMEM item 154, out of context--you -would not like to put any arbitrary upper limit on the length of your -symbols. - -In practice this often means you will build many short symbols and a -few long symbols. At the time you are reading a symbol you don't know -how long it is. One traditional method is to read a symbol into a -buffer, realloc()ating the buffer every time you try to read a symbol -that is longer than the buffer. This is beaut, but you still will -want to copy the symbol from the buffer to a more permanent -symbol-table entry say about half the time. - -With obstacks, you can work differently. Use one obstack for all symbol -names. As you read a symbol, grow the name in the obstack gradually. -When the name is complete, finalize it. Then, if the symbol exists already, -free the newly read name. - -The way we do this is to take a large chunk, allocating memory from -low addresses. When you want to build a symbol in the chunk you just -add chars above the current "high water mark" in the chunk. When you -have finished adding chars, because you got to the end of the symbol, -you know how long the chars are, and you can create a new object. -Mostly the chars will not burst over the highest address of the chunk, -because you would typically expect a chunk to be (say) 100 times as -long as an average object. - -In case that isn't clear, when we have enough chars to make up -the object, THEY ARE ALREADY CONTIGUOUS IN THE CHUNK (guaranteed) -so we just point to it where it lies. No moving of chars is -needed and this is the second win: potentially long strings need -never be explicitly shuffled. Once an object is formed, it does not -change its address during its lifetime. - -When the chars burst over a chunk boundary, we allocate a larger -chunk, and then copy the partly formed object from the end of the old -chunk to the beginning of the new larger chunk. We then carry on -accreting characters to the end of the object as we normally would. - -A special macro is provided to add a single char at a time to a -growing object. This allows the use of register variables, which -break the ordinary 'growth' macro. - -Summary: - We allocate large chunks. - We carve out one object at a time from the current chunk. - Once carved, an object never moves. - We are free to append data of any size to the currently - growing object. - Exactly one object is growing in an obstack at any one time. - You can run one obstack per control block. - You may have as many control blocks as you dare. - Because of the way we do it, you can `unwind' an obstack - back to a previous state. (You may remove objects much - as you would with a stack.) -*/ - - -/* Don't do the contents of this file more than once. */ - -#ifndef _OBSTACK_H -#define _OBSTACK_H 1 - -#ifdef __cplusplus -extern "C" { -#endif - -/* We use subtraction of (char *) 0 instead of casting to int - because on word-addressable machines a simple cast to int - may ignore the byte-within-word field of the pointer. */ - -#ifndef __PTR_TO_INT -# define __PTR_TO_INT(P) ((P) - (char *) 0) -#endif - -#ifndef __INT_TO_PTR -#if defined __STDC__ && __STDC__ -# define __INT_TO_PTR(P) ((void *) ((P) + (char *) 0)) -#else -# define __INT_TO_PTR(P) ((P) + (char *) 0) -#endif -#endif - -/* We need the type of the resulting object. If __PTRDIFF_TYPE__ is - defined, as with GNU C, use that; that way we don't pollute the - namespace with 's symbols. Otherwise, if is - available, include it and use ptrdiff_t. In traditional C, long is - the best that we can do. */ - -#ifdef __PTRDIFF_TYPE__ -# define PTR_INT_TYPE __PTRDIFF_TYPE__ -#else -# ifdef HAVE_STDDEF_H -# include -# define PTR_INT_TYPE ptrdiff_t -# else -# define PTR_INT_TYPE long -# endif -#endif - -#if defined _LIBC || defined HAVE_STRING_H -# include -# define _obstack_memcpy(To, From, N) memcpy ((To), (From), (N)) -#else -# ifdef memcpy -# define _obstack_memcpy(To, From, N) memcpy ((To), (From), (N)) -# else -# define _obstack_memcpy(To, From, N) bcopy ((From), (To), (N)) -# endif -#endif - -struct _obstack_chunk /* Lives at front of each chunk. */ -{ - char *limit; /* 1 past end of this chunk */ - struct _obstack_chunk *prev; /* address of prior chunk or NULL */ - char contents[4]; /* objects begin here */ -}; - -struct obstack /* control current object in current chunk */ -{ - long chunk_size; /* preferred size to allocate chunks in */ - struct _obstack_chunk *chunk; /* address of current struct obstack_chunk */ - char *object_base; /* address of object we are building */ - char *next_free; /* where to add next char to current object */ - char *chunk_limit; /* address of char after current chunk */ - PTR_INT_TYPE temp; /* Temporary for some macros. */ - int alignment_mask; /* Mask of alignment for each object. */ -#if defined __STDC__ && __STDC__ - /* These prototypes vary based on `use_extra_arg', and we use - casts to the prototypeless function type in all assignments, - but having prototypes here quiets -Wstrict-prototypes. */ - struct _obstack_chunk *(*chunkfun) (void *, long); - void (*freefun) (void *, struct _obstack_chunk *); - void *extra_arg; /* first arg for chunk alloc/dealloc funcs */ -#else - struct _obstack_chunk *(*chunkfun) (); /* User's fcn to allocate a chunk. */ - void (*freefun) (); /* User's function to free a chunk. */ - char *extra_arg; /* first arg for chunk alloc/dealloc funcs */ -#endif - unsigned use_extra_arg:1; /* chunk alloc/dealloc funcs take extra arg */ - unsigned maybe_empty_object:1;/* There is a possibility that the current - chunk contains a zero-length object. This - prevents freeing the chunk if we allocate - a bigger chunk to replace it. */ - unsigned alloc_failed:1; /* No longer used, as we now call the failed - handler on error, but retained for binary - compatibility. */ -}; - -/* Declare the external functions we use; they are in obstack.c. */ - -#if defined __STDC__ && __STDC__ -extern void _obstack_newchunk (struct obstack *, int); -extern void _obstack_free (struct obstack *, void *); -extern int _obstack_begin (struct obstack *, int, int, - void *(*) (long), void (*) (void *)); -extern int _obstack_begin_1 (struct obstack *, int, int, - void *(*) (void *, long), - void (*) (void *, void *), void *); -extern int _obstack_memory_used (struct obstack *); -#else -extern void _obstack_newchunk (); -extern void _obstack_free (); -extern int _obstack_begin (); -extern int _obstack_begin_1 (); -extern int _obstack_memory_used (); -#endif - -#if defined __STDC__ && __STDC__ - -/* Do the function-declarations after the structs - but before defining the macros. */ - -void obstack_init (struct obstack *obstack); - -void * obstack_alloc (struct obstack *obstack, int size); - -void * obstack_copy (struct obstack *obstack, const void *address, int size); -void * obstack_copy0 (struct obstack *obstack, const void *address, int size); - -void obstack_free (struct obstack *obstack, void *block); - -void obstack_blank (struct obstack *obstack, int size); - -void obstack_grow (struct obstack *obstack, const void *data, int size); -void obstack_grow0 (struct obstack *obstack, const void *data, int size); - -void obstack_1grow (struct obstack *obstack, int data_char); -void obstack_ptr_grow (struct obstack *obstack, const void *data); -void obstack_int_grow (struct obstack *obstack, int data); - -void * obstack_finish (struct obstack *obstack); - -int obstack_object_size (struct obstack *obstack); - -int obstack_room (struct obstack *obstack); -void obstack_make_room (struct obstack *obstack, int size); -void obstack_1grow_fast (struct obstack *obstack, int data_char); -void obstack_ptr_grow_fast (struct obstack *obstack, const void *data); -void obstack_int_grow_fast (struct obstack *obstack, int data); -void obstack_blank_fast (struct obstack *obstack, int size); - -void * obstack_base (struct obstack *obstack); -void * obstack_next_free (struct obstack *obstack); -int obstack_alignment_mask (struct obstack *obstack); -int obstack_chunk_size (struct obstack *obstack); -int obstack_memory_used (struct obstack *obstack); - -#endif /* __STDC__ */ - -/* Non-ANSI C cannot really support alternative functions for these macros, - so we do not declare them. */ - -/* Error handler called when `obstack_chunk_alloc' failed to allocate - more memory. This can be set to a user defined function which - should either abort gracefully or use longjump - but shouldn't - return. The default action is to print a message and abort. */ -#if defined __STDC__ && __STDC__ -extern void (*obstack_alloc_failed_handler) (void); -#else -extern void (*obstack_alloc_failed_handler) (); -#endif - -/* Exit value used when `print_and_abort' is used. */ -extern int obstack_exit_failure; - -/* Pointer to beginning of object being allocated or to be allocated next. - Note that this might not be the final address of the object - because a new chunk might be needed to hold the final size. */ - -#define obstack_base(h) ((h)->object_base) - -/* Size for allocating ordinary chunks. */ - -#define obstack_chunk_size(h) ((h)->chunk_size) - -/* Pointer to next byte not yet allocated in current chunk. */ - -#define obstack_next_free(h) ((h)->next_free) - -/* Mask specifying low bits that should be clear in address of an object. */ - -#define obstack_alignment_mask(h) ((h)->alignment_mask) - -/* To prevent prototype warnings provide complete argument list in - standard C version. */ -#if defined __STDC__ && __STDC__ - -# define obstack_init(h) \ - _obstack_begin ((h), 0, 0, \ - (void *(*) (long)) obstack_chunk_alloc, \ - (void (*) (void *)) obstack_chunk_free) - -# define obstack_begin(h, size) \ - _obstack_begin ((h), (size), 0, \ - (void *(*) (long)) obstack_chunk_alloc, \ - (void (*) (void *)) obstack_chunk_free) - -# define obstack_specify_allocation(h, size, alignment, chunkfun, freefun) \ - _obstack_begin ((h), (size), (alignment), \ - (void *(*) (long)) (chunkfun), \ - (void (*) (void *)) (freefun)) - -# define obstack_specify_allocation_with_arg(h, size, alignment, chunkfun, freefun, arg) \ - _obstack_begin_1 ((h), (size), (alignment), \ - (void *(*) (void *, long)) (chunkfun), \ - (void (*) (void *, void *)) (freefun), (arg)) - -# define obstack_chunkfun(h, newchunkfun) \ - ((h) -> chunkfun = (struct _obstack_chunk *(*)(void *, long)) (newchunkfun)) - -# define obstack_freefun(h, newfreefun) \ - ((h) -> freefun = (void (*)(void *, struct _obstack_chunk *)) (newfreefun)) - -#else - -# define obstack_init(h) \ - _obstack_begin ((h), 0, 0, \ - (void *(*) ()) obstack_chunk_alloc, \ - (void (*) ()) obstack_chunk_free) - -# define obstack_begin(h, size) \ - _obstack_begin ((h), (size), 0, \ - (void *(*) ()) obstack_chunk_alloc, \ - (void (*) ()) obstack_chunk_free) - -# define obstack_specify_allocation(h, size, alignment, chunkfun, freefun) \ - _obstack_begin ((h), (size), (alignment), \ - (void *(*) ()) (chunkfun), \ - (void (*) ()) (freefun)) - -# define obstack_specify_allocation_with_arg(h, size, alignment, chunkfun, freefun, arg) \ - _obstack_begin_1 ((h), (size), (alignment), \ - (void *(*) ()) (chunkfun), \ - (void (*) ()) (freefun), (arg)) - -# define obstack_chunkfun(h, newchunkfun) \ - ((h) -> chunkfun = (struct _obstack_chunk *(*)()) (newchunkfun)) - -# define obstack_freefun(h, newfreefun) \ - ((h) -> freefun = (void (*)()) (newfreefun)) - -#endif - -#define obstack_1grow_fast(h,achar) (*((h)->next_free)++ = achar) - -#define obstack_blank_fast(h,n) ((h)->next_free += (n)) - -#define obstack_memory_used(h) _obstack_memory_used (h) - -#if defined __GNUC__ && defined __STDC__ && __STDC__ -/* NextStep 2.0 cc is really gcc 1.93 but it defines __GNUC__ = 2 and - does not implement __extension__. But that compiler doesn't define - __GNUC_MINOR__. */ -# if __GNUC__ < 2 || (__NeXT__ && !__GNUC_MINOR__) -# define __extension__ -# endif - -/* For GNU C, if not -traditional, - we can define these macros to compute all args only once - without using a global variable. - Also, we can avoid using the `temp' slot, to make faster code. */ - -# define obstack_object_size(OBSTACK) \ - __extension__ \ - ({ struct obstack const *__o = (OBSTACK); \ - (unsigned) (__o->next_free - __o->object_base); }) - -# define obstack_room(OBSTACK) \ - __extension__ \ - ({ struct obstack const *__o = (OBSTACK); \ - (unsigned) (__o->chunk_limit - __o->next_free); }) - -# define obstack_make_room(OBSTACK,length) \ -__extension__ \ -({ struct obstack *__o = (OBSTACK); \ - int __len = (length); \ - if (__o->chunk_limit - __o->next_free < __len) \ - _obstack_newchunk (__o, __len); \ - (void) 0; }) - -# define obstack_empty_p(OBSTACK) \ - __extension__ \ - ({ struct obstack const *__o = (OBSTACK); \ - (__o->chunk->prev == 0 && __o->next_free - __o->chunk->contents == 0); }) - -# define obstack_grow(OBSTACK,where,length) \ -__extension__ \ -({ struct obstack *__o = (OBSTACK); \ - int __len = (length); \ - if (__o->next_free + __len > __o->chunk_limit) \ - _obstack_newchunk (__o, __len); \ - _obstack_memcpy (__o->next_free, (where), __len); \ - __o->next_free += __len; \ - (void) 0; }) - -# define obstack_grow0(OBSTACK,where,length) \ -__extension__ \ -({ struct obstack *__o = (OBSTACK); \ - int __len = (length); \ - if (__o->next_free + __len + 1 > __o->chunk_limit) \ - _obstack_newchunk (__o, __len + 1); \ - _obstack_memcpy (__o->next_free, (where), __len); \ - __o->next_free += __len; \ - *(__o->next_free)++ = 0; \ - (void) 0; }) - -# define obstack_1grow(OBSTACK,datum) \ -__extension__ \ -({ struct obstack *__o = (OBSTACK); \ - if (__o->next_free + 1 > __o->chunk_limit) \ - _obstack_newchunk (__o, 1); \ - *(__o->next_free)++ = (datum); \ - (void) 0; }) - -/* These assume that the obstack alignment is good enough for pointers - or ints, and that the data added so far to the current object - shares that much alignment. */ - -# define obstack_ptr_grow(OBSTACK,datum) \ -__extension__ \ -({ struct obstack *__o = (OBSTACK); \ - if (__o->next_free + sizeof (void *) > __o->chunk_limit) \ - _obstack_newchunk (__o, sizeof (void *)); \ - *((void **)__o->next_free)++ = (datum); \ - (void) 0; }) - -# define obstack_int_grow(OBSTACK,datum) \ -__extension__ \ -({ struct obstack *__o = (OBSTACK); \ - if (__o->next_free + sizeof (int) > __o->chunk_limit) \ - _obstack_newchunk (__o, sizeof (int)); \ - *((int *)__o->next_free)++ = (datum); \ - (void) 0; }) - -# define obstack_ptr_grow_fast(h,aptr) \ - (*((void **) (h)->next_free)++ = (aptr)) - -# define obstack_int_grow_fast(h,aint) \ - (*((int *) (h)->next_free)++ = (aint)) - -# define obstack_blank(OBSTACK,length) \ -__extension__ \ -({ struct obstack *__o = (OBSTACK); \ - int __len = (length); \ - if (__o->chunk_limit - __o->next_free < __len) \ - _obstack_newchunk (__o, __len); \ - __o->next_free += __len; \ - (void) 0; }) - -# define obstack_alloc(OBSTACK,length) \ -__extension__ \ -({ struct obstack *__h = (OBSTACK); \ - obstack_blank (__h, (length)); \ - obstack_finish (__h); }) - -# define obstack_copy(OBSTACK,where,length) \ -__extension__ \ -({ struct obstack *__h = (OBSTACK); \ - obstack_grow (__h, (where), (length)); \ - obstack_finish (__h); }) - -# define obstack_copy0(OBSTACK,where,length) \ -__extension__ \ -({ struct obstack *__h = (OBSTACK); \ - obstack_grow0 (__h, (where), (length)); \ - obstack_finish (__h); }) - -/* The local variable is named __o1 to avoid a name conflict - when obstack_blank is called. */ -# define obstack_finish(OBSTACK) \ -__extension__ \ -({ struct obstack *__o1 = (OBSTACK); \ - void *value; \ - value = (void *) __o1->object_base; \ - if (__o1->next_free == value) \ - __o1->maybe_empty_object = 1; \ - __o1->next_free \ - = __INT_TO_PTR ((__PTR_TO_INT (__o1->next_free)+__o1->alignment_mask)\ - & ~ (__o1->alignment_mask)); \ - if (__o1->next_free - (char *)__o1->chunk \ - > __o1->chunk_limit - (char *)__o1->chunk) \ - __o1->next_free = __o1->chunk_limit; \ - __o1->object_base = __o1->next_free; \ - value; }) - -# define obstack_free(OBSTACK, OBJ) \ -__extension__ \ -({ struct obstack *__o = (OBSTACK); \ - void *__obj = (OBJ); \ - if (__obj > (void *)__o->chunk && __obj < (void *)__o->chunk_limit) \ - __o->next_free = __o->object_base = (char *)__obj; \ - else (obstack_free) (__o, __obj); }) - -#else /* not __GNUC__ or not __STDC__ */ - -# define obstack_object_size(h) \ - (unsigned) ((h)->next_free - (h)->object_base) - -# define obstack_room(h) \ - (unsigned) ((h)->chunk_limit - (h)->next_free) - -# define obstack_empty_p(h) \ - ((h)->chunk->prev == 0 && (h)->next_free - (h)->chunk->contents == 0) - -/* Note that the call to _obstack_newchunk is enclosed in (..., 0) - so that we can avoid having void expressions - in the arms of the conditional expression. - Casting the third operand to void was tried before, - but some compilers won't accept it. */ - -# define obstack_make_room(h,length) \ -( (h)->temp = (length), \ - (((h)->next_free + (h)->temp > (h)->chunk_limit) \ - ? (_obstack_newchunk ((h), (h)->temp), 0) : 0)) - -# define obstack_grow(h,where,length) \ -( (h)->temp = (length), \ - (((h)->next_free + (h)->temp > (h)->chunk_limit) \ - ? (_obstack_newchunk ((h), (h)->temp), 0) : 0), \ - _obstack_memcpy ((h)->next_free, (where), (h)->temp), \ - (h)->next_free += (h)->temp) - -# define obstack_grow0(h,where,length) \ -( (h)->temp = (length), \ - (((h)->next_free + (h)->temp + 1 > (h)->chunk_limit) \ - ? (_obstack_newchunk ((h), (h)->temp + 1), 0) : 0), \ - _obstack_memcpy ((h)->next_free, (where), (h)->temp), \ - (h)->next_free += (h)->temp, \ - *((h)->next_free)++ = 0) - -# define obstack_1grow(h,datum) \ -( (((h)->next_free + 1 > (h)->chunk_limit) \ - ? (_obstack_newchunk ((h), 1), 0) : 0), \ - (*((h)->next_free)++ = (datum))) - -# define obstack_ptr_grow(h,datum) \ -( (((h)->next_free + sizeof (char *) > (h)->chunk_limit) \ - ? (_obstack_newchunk ((h), sizeof (char *)), 0) : 0), \ - (*((const char **) (((h)->next_free+=sizeof(char *))-sizeof(char *))) = (datum))) - -# define obstack_int_grow(h,datum) \ -( (((h)->next_free + sizeof (int) > (h)->chunk_limit) \ - ? (_obstack_newchunk ((h), sizeof (int)), 0) : 0), \ - (*((int *) (((h)->next_free+=sizeof(int))-sizeof(int))) = (datum))) - -# define obstack_ptr_grow_fast(h,aptr) \ - (*((const char **) (h)->next_free)++ = (aptr)) - -# define obstack_int_grow_fast(h,aint) \ - (*((int *) (h)->next_free)++ = (aint)) - -# define obstack_blank(h,length) \ -( (h)->temp = (length), \ - (((h)->chunk_limit - (h)->next_free < (h)->temp) \ - ? (_obstack_newchunk ((h), (h)->temp), 0) : 0), \ - ((h)->next_free += (h)->temp)) - -# define obstack_alloc(h,length) \ - (obstack_blank ((h), (length)), obstack_finish ((h))) - -# define obstack_copy(h,where,length) \ - (obstack_grow ((h), (where), (length)), obstack_finish ((h))) - -# define obstack_copy0(h,where,length) \ - (obstack_grow0 ((h), (where), (length)), obstack_finish ((h))) - -# define obstack_finish(h) \ -( ((h)->next_free == (h)->object_base \ - ? (((h)->maybe_empty_object = 1), 0) \ - : 0), \ - (h)->temp = __PTR_TO_INT ((h)->object_base), \ - (h)->next_free \ - = __INT_TO_PTR ((__PTR_TO_INT ((h)->next_free)+(h)->alignment_mask) \ - & ~ ((h)->alignment_mask)), \ - (((h)->next_free - (char *) (h)->chunk \ - > (h)->chunk_limit - (char *) (h)->chunk) \ - ? ((h)->next_free = (h)->chunk_limit) : 0), \ - (h)->object_base = (h)->next_free, \ - __INT_TO_PTR ((h)->temp)) - -# if defined __STDC__ && __STDC__ -# define obstack_free(h,obj) \ -( (h)->temp = (char *) (obj) - (char *) (h)->chunk, \ - (((h)->temp > 0 && (h)->temp < (h)->chunk_limit - (char *) (h)->chunk)\ - ? (int) ((h)->next_free = (h)->object_base \ - = (h)->temp + (char *) (h)->chunk) \ - : (((obstack_free) ((h), (h)->temp + (char *) (h)->chunk), 0), 0))) -# else -# define obstack_free(h,obj) \ -( (h)->temp = (char *) (obj) - (char *) (h)->chunk, \ - (((h)->temp > 0 && (h)->temp < (h)->chunk_limit - (char *) (h)->chunk)\ - ? (int) ((h)->next_free = (h)->object_base \ - = (h)->temp + (char *) (h)->chunk) \ - : (_obstack_free ((h), (h)->temp + (char *) (h)->chunk), 0))) -# endif - -#endif /* not __GNUC__ or not __STDC__ */ - -#ifdef __cplusplus -} /* C++ */ -#endif - -#endif /* obstack.h */ diff --git a/lib/quote.c b/lib/quote.c deleted file mode 100644 index 5f11d836..00000000 --- a/lib/quote.c +++ /dev/null @@ -1,41 +0,0 @@ -/* quote.c - quote arguments for output - Copyright (C) 1998, 1999, 2000, 2001, 2003 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -/* Written by Paul Eggert */ - -#if HAVE_CONFIG_H -# include -#endif - -#include "quotearg.h" -#include "quote.h" - -/* Return an unambiguous printable representation of NAME, - allocated in slot N, suitable for diagnostics. */ -char const * -quote_n (int n, char const *name) -{ - return quotearg_n_style (n, locale_quoting_style, name); -} - -/* Return an unambiguous printable representation of NAME, - suitable for diagnostics. */ -char const * -quote (char const *name) -{ - return quote_n (0, name); -} diff --git a/lib/quote.h b/lib/quote.h deleted file mode 100644 index c750b1e7..00000000 --- a/lib/quote.h +++ /dev/null @@ -1,28 +0,0 @@ -/* quote.h - prototypes for quote.c - Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - - -#ifndef PARAMS -# if defined PROTOTYPES || (defined __STDC__ && __STDC__) -# define PARAMS(Args) Args -# else -# define PARAMS(Args) () -# endif -#endif - -char const *quote_n PARAMS ((int n, char const *name)); -char const *quote PARAMS ((char const *name)); diff --git a/lib/quotearg.c b/lib/quotearg.c deleted file mode 100644 index bffa14b7..00000000 --- a/lib/quotearg.c +++ /dev/null @@ -1,630 +0,0 @@ -/* quotearg.c - quote arguments for output - Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -/* Written by Paul Eggert */ - -#if HAVE_CONFIG_H -# include -#endif - -#include "quotearg.h" - -#include "xalloc.h" - -#include -#include -#include -#include -#include - -#include "gettext.h" -#define _(msgid) gettext (msgid) -#define N_(msgid) msgid - -#if HAVE_WCHAR_H - -/* BSD/OS 4.1 wchar.h requires FILE and struct tm to be declared. */ -# include -# include - -# include -#endif - -#if !HAVE_MBRTOWC -/* Disable multibyte processing entirely. Since MB_CUR_MAX is 1, the - other macros are defined only for documentation and to satisfy C - syntax. */ -# undef MB_CUR_MAX -# define MB_CUR_MAX 1 -# define mbrtowc(pwc, s, n, ps) ((*(pwc) = *(s)) != 0) -# define iswprint(wc) isprint ((unsigned char) (wc)) -# undef HAVE_MBSINIT -#endif - -#if !defined mbsinit && !HAVE_MBSINIT -# define mbsinit(ps) 1 -#endif - -#ifndef iswprint -# if HAVE_WCTYPE_H -# include -# endif -# if !defined iswprint && !HAVE_ISWPRINT -# define iswprint(wc) 1 -# endif -#endif - -#ifndef SIZE_MAX -# define SIZE_MAX ((size_t) -1) -#endif - -#define INT_BITS (sizeof (int) * CHAR_BIT) - -struct quoting_options -{ - /* Basic quoting style. */ - enum quoting_style style; - - /* Quote the characters indicated by this bit vector even if the - quoting style would not normally require them to be quoted. */ - int quote_these_too[(UCHAR_MAX / INT_BITS) + 1]; -}; - -/* Names of quoting styles. */ -char const *const quoting_style_args[] = -{ - "literal", - "shell", - "shell-always", - "c", - "escape", - "locale", - "clocale", - 0 -}; - -/* Correspondences to quoting style names. */ -enum quoting_style const quoting_style_vals[] = -{ - literal_quoting_style, - shell_quoting_style, - shell_always_quoting_style, - c_quoting_style, - escape_quoting_style, - locale_quoting_style, - clocale_quoting_style -}; - -/* The default quoting options. */ -static struct quoting_options default_quoting_options; - -/* Allocate a new set of quoting options, with contents initially identical - to O if O is not null, or to the default if O is null. - It is the caller's responsibility to free the result. */ -struct quoting_options * -clone_quoting_options (struct quoting_options *o) -{ - int e = errno; - struct quoting_options *p = xmalloc (sizeof *p); - *p = *(o ? o : &default_quoting_options); - errno = e; - return p; -} - -/* Get the value of O's quoting style. If O is null, use the default. */ -enum quoting_style -get_quoting_style (struct quoting_options *o) -{ - return (o ? o : &default_quoting_options)->style; -} - -/* In O (or in the default if O is null), - set the value of the quoting style to S. */ -void -set_quoting_style (struct quoting_options *o, enum quoting_style s) -{ - (o ? o : &default_quoting_options)->style = s; -} - -/* In O (or in the default if O is null), - set the value of the quoting options for character C to I. - Return the old value. Currently, the only values defined for I are - 0 (the default) and 1 (which means to quote the character even if - it would not otherwise be quoted). */ -int -set_char_quoting (struct quoting_options *o, char c, int i) -{ - unsigned char uc = c; - int *p = (o ? o : &default_quoting_options)->quote_these_too + uc / INT_BITS; - int shift = uc % INT_BITS; - int r = (*p >> shift) & 1; - *p ^= ((i & 1) ^ r) << shift; - return r; -} - -/* MSGID approximates a quotation mark. Return its translation if it - has one; otherwise, return either it or "\"", depending on S. */ -static char const * -gettext_quote (char const *msgid, enum quoting_style s) -{ - char const *translation = _(msgid); - if (translation == msgid && s == clocale_quoting_style) - translation = "\""; - return translation; -} - -/* Place into buffer BUFFER (of size BUFFERSIZE) a quoted version of - argument ARG (of size ARGSIZE), using QUOTING_STYLE and the - non-quoting-style part of O to control quoting. - Terminate the output with a null character, and return the written - size of the output, not counting the terminating null. - If BUFFERSIZE is too small to store the output string, return the - value that would have been returned had BUFFERSIZE been large enough. - If ARGSIZE is -1, use the string length of the argument for ARGSIZE. - - This function acts like quotearg_buffer (BUFFER, BUFFERSIZE, ARG, - ARGSIZE, O), except it uses QUOTING_STYLE instead of the quoting - style specified by O, and O may not be null. */ - -static size_t -quotearg_buffer_restyled (char *buffer, size_t buffersize, - char const *arg, size_t argsize, - enum quoting_style quoting_style, - struct quoting_options const *o) -{ - size_t i; - size_t len = 0; - char const *quote_string = 0; - size_t quote_string_len = 0; - int backslash_escapes = 0; - int unibyte_locale = MB_CUR_MAX == 1; - -#define STORE(c) \ - do \ - { \ - if (len < buffersize) \ - buffer[len] = (c); \ - len++; \ - } \ - while (0) - - switch (quoting_style) - { - case c_quoting_style: - STORE ('"'); - backslash_escapes = 1; - quote_string = "\""; - quote_string_len = 1; - break; - - case escape_quoting_style: - backslash_escapes = 1; - break; - - case locale_quoting_style: - case clocale_quoting_style: - { - /* Get translations for open and closing quotation marks. - - The message catalog should translate "`" to a left - quotation mark suitable for the locale, and similarly for - "'". If the catalog has no translation, - locale_quoting_style quotes `like this', and - clocale_quoting_style quotes "like this". - - For example, an American English Unicode locale should - translate "`" to U+201C (LEFT DOUBLE QUOTATION MARK), and - should translate "'" to U+201D (RIGHT DOUBLE QUOTATION - MARK). A British English Unicode locale should instead - translate these to U+2018 (LEFT SINGLE QUOTATION MARK) and - U+2019 (RIGHT SINGLE QUOTATION MARK), respectively. */ - - char const *left = gettext_quote (N_("`"), quoting_style); - char const *right = gettext_quote (N_("'"), quoting_style); - for (quote_string = left; *quote_string; quote_string++) - STORE (*quote_string); - backslash_escapes = 1; - quote_string = right; - quote_string_len = strlen (quote_string); - } - break; - - case shell_always_quoting_style: - STORE ('\''); - quote_string = "'"; - quote_string_len = 1; - break; - - default: - break; - } - - for (i = 0; ! (argsize == SIZE_MAX ? arg[i] == '\0' : i == argsize); i++) - { - unsigned char c; - unsigned char esc; - - if (backslash_escapes - && quote_string_len - && i + quote_string_len <= argsize - && memcmp (arg + i, quote_string, quote_string_len) == 0) - STORE ('\\'); - - c = arg[i]; - switch (c) - { - case '\0': - if (backslash_escapes) - { - STORE ('\\'); - STORE ('0'); - STORE ('0'); - c = '0'; - } - break; - - case '?': - switch (quoting_style) - { - case shell_quoting_style: - goto use_shell_always_quoting_style; - - case c_quoting_style: - if (i + 2 < argsize && arg[i + 1] == '?') - switch (arg[i + 2]) - { - case '!': case '\'': - case '(': case ')': case '-': case '/': - case '<': case '=': case '>': - /* Escape the second '?' in what would otherwise be - a trigraph. */ - c = arg[i + 2]; - i += 2; - STORE ('?'); - STORE ('\\'); - STORE ('?'); - break; - } - break; - - default: - break; - } - break; - - case '\a': esc = 'a'; goto c_escape; - case '\b': esc = 'b'; goto c_escape; - case '\f': esc = 'f'; goto c_escape; - case '\n': esc = 'n'; goto c_and_shell_escape; - case '\r': esc = 'r'; goto c_and_shell_escape; - case '\t': esc = 't'; goto c_and_shell_escape; - case '\v': esc = 'v'; goto c_escape; - case '\\': esc = c; goto c_and_shell_escape; - - c_and_shell_escape: - if (quoting_style == shell_quoting_style) - goto use_shell_always_quoting_style; - c_escape: - if (backslash_escapes) - { - c = esc; - goto store_escape; - } - break; - - case '#': case '~': - if (i != 0) - break; - /* Fall through. */ - case ' ': - case '!': /* special in bash */ - case '"': case '$': case '&': - case '(': case ')': case '*': case ';': - case '<': case '>': case '[': - case '^': /* special in old /bin/sh, e.g. SunOS 4.1.4 */ - case '`': case '|': - /* A shell special character. In theory, '$' and '`' could - be the first bytes of multibyte characters, which means - we should check them with mbrtowc, but in practice this - doesn't happen so it's not worth worrying about. */ - if (quoting_style == shell_quoting_style) - goto use_shell_always_quoting_style; - break; - - case '\'': - switch (quoting_style) - { - case shell_quoting_style: - goto use_shell_always_quoting_style; - - case shell_always_quoting_style: - STORE ('\''); - STORE ('\\'); - STORE ('\''); - break; - - default: - break; - } - break; - - case '%': case '+': case ',': case '-': case '.': case '/': - case '0': case '1': case '2': case '3': case '4': case '5': - case '6': case '7': case '8': case '9': case ':': case '=': - case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': - case 'G': case 'H': case 'I': case 'J': case 'K': case 'L': - case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R': - case 'S': case 'T': case 'U': case 'V': case 'W': case 'X': - case 'Y': case 'Z': case ']': case '_': case 'a': case 'b': - case 'c': case 'd': case 'e': case 'f': case 'g': case 'h': - case 'i': case 'j': case 'k': case 'l': case 'm': case 'n': - case 'o': case 'p': case 'q': case 'r': case 's': case 't': - case 'u': case 'v': case 'w': case 'x': case 'y': case 'z': - case '{': case '}': - /* These characters don't cause problems, no matter what the - quoting style is. They cannot start multibyte sequences. */ - break; - - default: - /* If we have a multibyte sequence, copy it until we reach - its end, find an error, or come back to the initial shift - state. For C-like styles, if the sequence has - unprintable characters, escape the whole sequence, since - we can't easily escape single characters within it. */ - { - /* Length of multibyte sequence found so far. */ - size_t m; - - int printable; - - if (unibyte_locale) - { - m = 1; - printable = isprint (c); - } - else - { - mbstate_t mbstate; - memset (&mbstate, 0, sizeof mbstate); - - m = 0; - printable = 1; - if (argsize == SIZE_MAX) - argsize = strlen (arg); - - do - { - wchar_t w; - size_t bytes = mbrtowc (&w, &arg[i + m], - argsize - (i + m), &mbstate); - if (bytes == 0) - break; - else if (bytes == (size_t) -1) - { - printable = 0; - break; - } - else if (bytes == (size_t) -2) - { - printable = 0; - while (i + m < argsize && arg[i + m]) - m++; - break; - } - else - { - if (! iswprint (w)) - printable = 0; - m += bytes; - } - } - while (! mbsinit (&mbstate)); - } - - if (1 < m || (backslash_escapes && ! printable)) - { - /* Output a multibyte sequence, or an escaped - unprintable unibyte character. */ - size_t ilim = i + m; - - for (;;) - { - if (backslash_escapes && ! printable) - { - STORE ('\\'); - STORE ('0' + (c >> 6)); - STORE ('0' + ((c >> 3) & 7)); - c = '0' + (c & 7); - } - if (ilim <= i + 1) - break; - STORE (c); - c = arg[++i]; - } - - goto store_c; - } - } - } - - if (! (backslash_escapes - && o->quote_these_too[c / INT_BITS] & (1 << (c % INT_BITS)))) - goto store_c; - - store_escape: - STORE ('\\'); - - store_c: - STORE (c); - } - - if (quote_string) - for (; *quote_string; quote_string++) - STORE (*quote_string); - - if (len < buffersize) - buffer[len] = '\0'; - return len; - - use_shell_always_quoting_style: - return quotearg_buffer_restyled (buffer, buffersize, arg, argsize, - shell_always_quoting_style, o); -} - -/* Place into buffer BUFFER (of size BUFFERSIZE) a quoted version of - argument ARG (of size ARGSIZE), using O to control quoting. - If O is null, use the default. - Terminate the output with a null character, and return the written - size of the output, not counting the terminating null. - If BUFFERSIZE is too small to store the output string, return the - value that would have been returned had BUFFERSIZE been large enough. - If ARGSIZE is -1, use the string length of the argument for ARGSIZE. */ -size_t -quotearg_buffer (char *buffer, size_t buffersize, - char const *arg, size_t argsize, - struct quoting_options const *o) -{ - struct quoting_options const *p = o ? o : &default_quoting_options; - int e = errno; - size_t r = quotearg_buffer_restyled (buffer, buffersize, arg, argsize, - p->style, p); - errno = e; - return r; -} - -/* Use storage slot N to return a quoted version of argument ARG. - ARG is of size ARGSIZE, but if that is -1, ARG is a null-terminated string. - OPTIONS specifies the quoting options. - The returned value points to static storage that can be - reused by the next call to this function with the same value of N. - N must be nonnegative. N is deliberately declared with type "int" - to allow for future extensions (using negative values). */ -static char * -quotearg_n_options (int n, char const *arg, size_t argsize, - struct quoting_options const *options) -{ - int e = errno; - - /* Preallocate a slot 0 buffer, so that the caller can always quote - one small component of a "memory exhausted" message in slot 0. */ - static char slot0[256]; - static unsigned int nslots = 1; - unsigned int n0 = n; - struct slotvec - { - size_t size; - char *val; - }; - static struct slotvec slotvec0 = {sizeof slot0, slot0}; - static struct slotvec *slotvec = &slotvec0; - - if (n < 0) - abort (); - - if (nslots <= n0) - { - unsigned int n1 = n0 + 1; - size_t s = n1 * sizeof *slotvec; - - if (SIZE_MAX / UINT_MAX <= sizeof *slotvec - && n1 != s / sizeof *slotvec) - xalloc_die (); - - if (slotvec == &slotvec0) - { - slotvec = xmalloc (sizeof *slotvec); - *slotvec = slotvec0; - } - slotvec = xrealloc (slotvec, s); - memset (slotvec + nslots, 0, (n1 - nslots) * sizeof *slotvec); - nslots = n1; - } - - { - size_t size = slotvec[n].size; - char *val = slotvec[n].val; - size_t qsize = quotearg_buffer (val, size, arg, argsize, options); - - if (size <= qsize) - { - slotvec[n].size = size = qsize + 1; - slotvec[n].val = val = xrealloc (val == slot0 ? 0 : val, size); - quotearg_buffer (val, size, arg, argsize, options); - } - - errno = e; - return val; - } -} - -char * -quotearg_n (int n, char const *arg) -{ - return quotearg_n_options (n, arg, SIZE_MAX, &default_quoting_options); -} - -char * -quotearg (char const *arg) -{ - return quotearg_n (0, arg); -} - -/* Return quoting options for STYLE, with no extra quoting. */ -static struct quoting_options -quoting_options_from_style (enum quoting_style style) -{ - struct quoting_options o; - o.style = style; - memset (o.quote_these_too, 0, sizeof o.quote_these_too); - return o; -} - -char * -quotearg_n_style (int n, enum quoting_style s, char const *arg) -{ - struct quoting_options const o = quoting_options_from_style (s); - return quotearg_n_options (n, arg, SIZE_MAX, &o); -} - -char * -quotearg_n_style_mem (int n, enum quoting_style s, - char const *arg, size_t argsize) -{ - struct quoting_options const o = quoting_options_from_style (s); - return quotearg_n_options (n, arg, argsize, &o); -} - -char * -quotearg_style (enum quoting_style s, char const *arg) -{ - return quotearg_n_style (0, s, arg); -} - -char * -quotearg_char (char const *arg, char ch) -{ - struct quoting_options options; - options = default_quoting_options; - set_char_quoting (&options, ch, 1); - return quotearg_n_options (0, arg, SIZE_MAX, &options); -} - -char * -quotearg_colon (char const *arg) -{ - return quotearg_char (arg, ':'); -} diff --git a/lib/quotearg.h b/lib/quotearg.h deleted file mode 100644 index efc93317..00000000 --- a/lib/quotearg.h +++ /dev/null @@ -1,114 +0,0 @@ -/* quotearg.h - quote arguments for output - - Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software - Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -/* Written by Paul Eggert */ - -#ifndef QUOTEARG_H_ -# define QUOTEARG_H_ 1 - -# include - -/* Basic quoting styles. */ -enum quoting_style - { - literal_quoting_style, /* --quoting-style=literal */ - shell_quoting_style, /* --quoting-style=shell */ - shell_always_quoting_style, /* --quoting-style=shell-always */ - c_quoting_style, /* --quoting-style=c */ - escape_quoting_style, /* --quoting-style=escape */ - locale_quoting_style, /* --quoting-style=locale */ - clocale_quoting_style /* --quoting-style=clocale */ - }; - -/* For now, --quoting-style=literal is the default, but this may change. */ -# ifndef DEFAULT_QUOTING_STYLE -# define DEFAULT_QUOTING_STYLE literal_quoting_style -# endif - -/* Names of quoting styles and their corresponding values. */ -extern char const *const quoting_style_args[]; -extern enum quoting_style const quoting_style_vals[]; - -struct quoting_options; - -/* The functions listed below set and use a hidden variable - that contains the default quoting style options. */ - -/* Allocate a new set of quoting options, with contents initially identical - to O if O is not null, or to the default if O is null. - It is the caller's responsibility to free the result. */ -struct quoting_options *clone_quoting_options (struct quoting_options *o); - -/* Get the value of O's quoting style. If O is null, use the default. */ -enum quoting_style get_quoting_style (struct quoting_options *o); - -/* In O (or in the default if O is null), - set the value of the quoting style to S. */ -void set_quoting_style (struct quoting_options *o, enum quoting_style s); - -/* In O (or in the default if O is null), - set the value of the quoting options for character C to I. - Return the old value. Currently, the only values defined for I are - 0 (the default) and 1 (which means to quote the character even if - it would not otherwise be quoted). */ -int set_char_quoting (struct quoting_options *o, char c, int i); - -/* Place into buffer BUFFER (of size BUFFERSIZE) a quoted version of - argument ARG (of size ARGSIZE), using O to control quoting. - If O is null, use the default. - Terminate the output with a null character, and return the written - size of the output, not counting the terminating null. - If BUFFERSIZE is too small to store the output string, return the - value that would have been returned had BUFFERSIZE been large enough. - If ARGSIZE is -1, use the string length of the argument for ARGSIZE. */ -size_t quotearg_buffer (char *buffer, size_t buffersize, - char const *arg, size_t argsize, - struct quoting_options const *o); - -/* Use storage slot N to return a quoted version of the string ARG. - Use the default quoting options. - The returned value points to static storage that can be - reused by the next call to this function with the same value of N. - N must be nonnegative. */ -char *quotearg_n (int n, char const *arg); - -/* Equivalent to quotearg_n (0, ARG). */ -char *quotearg (char const *arg); - -/* Use style S and storage slot N to return a quoted version of the string ARG. - This is like quotearg_n (N, ARG), except that it uses S with no other - options to specify the quoting method. */ -char *quotearg_n_style (int n, enum quoting_style s, char const *arg); - -/* Use style S and storage slot N to return a quoted version of the - argument ARG of size ARGSIZE. This is like quotearg_n_style - (N, S, ARG), except it can quote null bytes. */ -char *quotearg_n_style_mem (int n, enum quoting_style s, - char const *arg, size_t argsize); - -/* Equivalent to quotearg_n_style (0, S, ARG). */ -char *quotearg_style (enum quoting_style s, char const *arg); - -/* Like quotearg (ARG), except also quote any instances of CH. */ -char *quotearg_char (char const *arg, char ch); - -/* Equivalent to quotearg_char (ARG, ':'). */ -char *quotearg_colon (char const *arg); - -#endif /* !QUOTEARG_H_ */ diff --git a/lib/realloc.c b/lib/realloc.c deleted file mode 100644 index 5c94a0a2..00000000 --- a/lib/realloc.c +++ /dev/null @@ -1,44 +0,0 @@ -/* Work around bug on some systems where realloc (NULL, 0) fails. - Copyright (C) 1997 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -/* written by Jim Meyering */ - -#if HAVE_CONFIG_H -# include -#endif -#undef realloc - -#include - -char *malloc (); -char *realloc (); - -/* Change the size of an allocated block of memory P to N bytes, - with error checking. If N is zero, change it to 1. If P is NULL, - use malloc. */ - -char * -rpl_realloc (p, n) - char *p; - size_t n; -{ - if (n == 0) - n = 1; - if (p == 0) - return malloc (n); - return realloc (p, n); -} diff --git a/lib/stdbool_.h b/lib/stdbool_.h deleted file mode 100644 index 69f6ef72..00000000 --- a/lib/stdbool_.h +++ /dev/null @@ -1,47 +0,0 @@ -/* Copyright (C) 2001-2002 Free Software Foundation, Inc. - Written by Bruno Haible , 2001. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#ifndef _STDBOOL_H -#define _STDBOOL_H - -/* ISO C 99 for platforms that lack it. */ - -/* 7.16. Boolean type and values */ - -/* BeOS already #defines false 0, true 1. We use the same - definitions below, but temporarily we have to #undef them. */ -#ifdef __BEOS__ -# undef false -# undef true -#endif - -/* For the sake of symbolic names in gdb, define _Bool as an enum type. */ -#ifndef __cplusplus -# if !@HAVE__BOOL@ -typedef enum { false = 0, true = 1 } _Bool; -# endif -#else -typedef bool _Bool; -#endif -#define bool _Bool - -/* The other macros must be usable in preprocessor directives. */ -#define false 0 -#define true 1 -#define __bool_true_false_are_defined 1 - -#endif /* _STDBOOL_H */ diff --git a/lib/stpcpy.c b/lib/stpcpy.c deleted file mode 100644 index a01636cd..00000000 --- a/lib/stpcpy.c +++ /dev/null @@ -1,50 +0,0 @@ -/* stpcpy.c -- copy a string and return pointer to end of new string - Copyright (C) 1992, 1995, 1997, 1998 Free Software Foundation, Inc. - - NOTE: The canonical source of this file is maintained with the GNU C Library. - Bugs can be reported to bug-glibc@prep.ai.mit.edu. - - This program is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by the - Free Software Foundation; either version 2, or (at your option) any - later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, - USA. */ - -#ifdef HAVE_CONFIG_H -# include -#endif - -#include - -#undef __stpcpy -#undef stpcpy - -#ifndef weak_alias -# define __stpcpy stpcpy -#endif - -/* Copy SRC to DEST, returning the address of the terminating '\0' in DEST. */ -char * -__stpcpy (char *dest, const char *src) -{ - register char *d = dest; - register const char *s = src; - - do - *d++ = *s; - while (*s++ != '\0'); - - return d - 1; -} -#ifdef weak_alias -weak_alias (__stpcpy, stpcpy) -#endif diff --git a/lib/strcasecmp.c b/lib/strcasecmp.c deleted file mode 100644 index cf4ab88d..00000000 --- a/lib/strcasecmp.c +++ /dev/null @@ -1,66 +0,0 @@ -/* strcasecmp.c -- case insensitive string comparator - Copyright (C) 1998, 1999 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#if HAVE_CONFIG_H -# include -#endif - -#ifdef LENGTH_LIMIT -# define STRXCASECMP_FUNCTION strncasecmp -# define STRXCASECMP_DECLARE_N , size_t n -# define LENGTH_LIMIT_EXPR(Expr) Expr -#else -# define STRXCASECMP_FUNCTION strcasecmp -# define STRXCASECMP_DECLARE_N /* empty */ -# define LENGTH_LIMIT_EXPR(Expr) 0 -#endif - -#include -#include - -#define TOLOWER(Ch) (isupper (Ch) ? tolower (Ch) : (Ch)) - -/* Compare {{no more than N characters of }}strings S1 and S2, - ignoring case, returning less than, equal to or - greater than zero if S1 is lexicographically less - than, equal to or greater than S2. */ - -int -STRXCASECMP_FUNCTION (const char *s1, const char *s2 STRXCASECMP_DECLARE_N) -{ - register const unsigned char *p1 = (const unsigned char *) s1; - register const unsigned char *p2 = (const unsigned char *) s2; - unsigned char c1, c2; - - if (p1 == p2 || LENGTH_LIMIT_EXPR (n == 0)) - return 0; - - do - { - c1 = TOLOWER (*p1); - c2 = TOLOWER (*p2); - - if (LENGTH_LIMIT_EXPR (--n == 0) || c1 == '\0') - break; - - ++p1; - ++p2; - } - while (c1 == c2); - - return c1 - c2; -} diff --git a/lib/strchr.c b/lib/strchr.c deleted file mode 100644 index 87c91750..00000000 --- a/lib/strchr.c +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright (C) 2001 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#if HAVE_CONFIG_H -# include -#endif - -#if HAVE_STRING_H -# include -#else -# include -#endif - -char * -strchr (const char *s, int c) -{ - return index (s, c); -} diff --git a/lib/strncasecmp.c b/lib/strncasecmp.c deleted file mode 100644 index 68d95aac..00000000 --- a/lib/strncasecmp.c +++ /dev/null @@ -1,2 +0,0 @@ -#define LENGTH_LIMIT -#include "strcasecmp.c" diff --git a/lib/strnlen.c b/lib/strnlen.c deleted file mode 100644 index e7ad6d2f..00000000 --- a/lib/strnlen.c +++ /dev/null @@ -1,63 +0,0 @@ -/* Find the length of STRING, but scan at most MAXLEN characters. - Copyright (C) 1996, 1997, 1998, 2000-2003 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public License as - published by the Free Software Foundation; either version 2 of the - License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If not, - write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ - -#if HAVE_CONFIG_H -# include -#endif -#undef strnlen - -#if HAVE_STRING_H -# if !STDC_HEADERS && HAVE_MEMORY_H -# include -# endif -# include -#else -# include -#endif - -#ifndef HAVE_DECL_MEMCHR -"this configure-time declaration test was not run" -#endif -#if !HAVE_DECL_MEMCHR -char *memchr (); -#endif - -#undef __strnlen -#undef strnlen - -#ifndef _LIBC -# define strnlen rpl_strnlen -#endif - -#ifndef weak_alias -# define __strnlen strnlen -#endif - -/* Find the length of STRING, but scan at most MAXLEN characters. - If no '\0' terminator is found in that many characters, return MAXLEN. */ - -size_t -__strnlen (const char *string, size_t maxlen) -{ - const char *end = memchr (string, '\0', maxlen); - return end ? (size_t) (end - string) : maxlen; -} -#ifdef weak_alias -weak_alias (__strnlen, strnlen) -#endif diff --git a/lib/strrchr.c b/lib/strrchr.c deleted file mode 100644 index bc380c4c..00000000 --- a/lib/strrchr.c +++ /dev/null @@ -1,30 +0,0 @@ -/* Portable version of strrchr(). - This function is in the public domain. */ - -/* - -@deftypefn Supplemental char* strrchr (const char *@var{s}, int @var{c}) - -Returns a pointer to the last occurrence of the character @var{c} in -the string @var{s}, or @code{NULL} if not found. If @var{c} is itself the -null character, the results are undefined. - -@end deftypefn - -*/ - -#include - -char * -strrchr (s, c) - register const char *s; - int c; -{ - char *rtnval = 0; - - do { - if (*s == c) - rtnval = (char*) s; - } while (*s++); - return (rtnval); -} diff --git a/lib/strspn.c b/lib/strspn.c deleted file mode 100644 index bf785ef0..00000000 --- a/lib/strspn.c +++ /dev/null @@ -1,58 +0,0 @@ -/* Copyright (C) 1991, 1997 Free Software Foundation, Inc. - - NOTE: The canonical source of this file is maintained with the GNU - C Library. Bugs can be reported to bug-glibc@prep.ai.mit.edu. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#if HAVE_CONFIG_H -# include -#endif - -#if defined _LIBC || HAVE_STRING_H -# include -#else -# include -# ifndef strchr -# define strchr index -# endif -#endif - -#undef strspn - -/* Return the length of the maximum initial segment - of S which contains only characters in ACCEPT. */ -size_t -strspn (s, accept) - const char *s; - const char *accept; -{ - const char *p; - const char *a; - size_t count = 0; - - for (p = s; *p != '\0'; ++p) - { - for (a = accept; *a != '\0'; ++a) - if (*p == *a) - break; - if (*a == '\0') - return count; - else - ++count; - } - - return count; -} diff --git a/lib/strtol.c b/lib/strtol.c deleted file mode 100644 index 0c9c2767..00000000 --- a/lib/strtol.c +++ /dev/null @@ -1,472 +0,0 @@ -/* Convert string representation of a number into an integer value. - Copyright (C) 1991, 92, 94, 95, 96, 97, 98, 99 Free Software Foundation, Inc. - NOTE: The canonical source of this file is maintained with the GNU C - Library. Bugs can be reported to bug-glibc@gnu.org. - - This program is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by the - Free Software Foundation; either version 2, or (at your option) any - later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#if HAVE_CONFIG_H -# include -#endif - -#ifdef _LIBC -# define USE_NUMBER_GROUPING -# define STDC_HEADERS -# define HAVE_LIMITS_H -#endif - -#include -#include -#ifndef errno -extern int errno; -#endif -#ifndef __set_errno -# define __set_errno(Val) errno = (Val) -#endif - -#ifdef HAVE_LIMITS_H -# include -#endif - -#ifdef STDC_HEADERS -# include -# include -# include -#else -# ifndef NULL -# define NULL 0 -# endif -#endif - -#ifdef USE_NUMBER_GROUPING -# include "../locale/localeinfo.h" -#endif - -/* Nonzero if we are defining `strtoul' or `strtoull', operating on - unsigned integers. */ -#ifndef UNSIGNED -# define UNSIGNED 0 -# define INT LONG int -#else -# define INT unsigned LONG int -#endif - -/* Determine the name. */ -#ifdef USE_IN_EXTENDED_LOCALE_MODEL -# if UNSIGNED -# ifdef USE_WIDE_CHAR -# ifdef QUAD -# define strtol __wcstoull_l -# else -# define strtol __wcstoul_l -# endif -# else -# ifdef QUAD -# define strtol __strtoull_l -# else -# define strtol __strtoul_l -# endif -# endif -# else -# ifdef USE_WIDE_CHAR -# ifdef QUAD -# define strtol __wcstoll_l -# else -# define strtol __wcstol_l -# endif -# else -# ifdef QUAD -# define strtol __strtoll_l -# else -# define strtol __strtol_l -# endif -# endif -# endif -#else -# if UNSIGNED -# ifdef USE_WIDE_CHAR -# ifdef QUAD -# define strtol wcstoull -# else -# define strtol wcstoul -# endif -# else -# ifdef QUAD -# define strtol strtoull -# else -# define strtol strtoul -# endif -# endif -# else -# ifdef USE_WIDE_CHAR -# ifdef QUAD -# define strtol wcstoll -# else -# define strtol wcstol -# endif -# else -# ifdef QUAD -# define strtol strtoll -# endif -# endif -# endif -#endif - -/* If QUAD is defined, we are defining `strtoll' or `strtoull', - operating on `long long int's. */ -#ifdef QUAD -# define LONG long long -# define STRTOL_LONG_MIN LONG_LONG_MIN -# define STRTOL_LONG_MAX LONG_LONG_MAX -# define STRTOL_ULONG_MAX ULONG_LONG_MAX - -/* The extra casts work around common compiler bugs, - e.g. Cray C 5.0.3.0 when t == time_t. */ -# ifndef TYPE_SIGNED -# define TYPE_SIGNED(t) (! ((t) 0 < (t) -1)) -# endif -# ifndef TYPE_MINIMUM -# define TYPE_MINIMUM(t) ((t) (TYPE_SIGNED (t) \ - ? ~ (t) 0 << (sizeof (t) * CHAR_BIT - 1) \ - : (t) 0)) -# endif -# ifndef TYPE_MAXIMUM -# define TYPE_MAXIMUM(t) ((t) (~ (t) 0 - TYPE_MINIMUM (t))) -# endif - -# ifndef ULONG_LONG_MAX -# define ULONG_LONG_MAX TYPE_MAXIMUM (unsigned long long) -# endif -# ifndef LONG_LONG_MAX -# define LONG_LONG_MAX TYPE_MAXIMUM (long long int) -# endif -# ifndef LONG_LONG_MIN -# define LONG_LONG_MIN TYPE_MINIMUM (long long int) -# endif - -# if __GNUC__ == 2 && __GNUC_MINOR__ < 7 - /* Work around gcc bug with using this constant. */ - static const unsigned long long int maxquad = ULONG_LONG_MAX; -# undef STRTOL_ULONG_MAX -# define STRTOL_ULONG_MAX maxquad -# endif -#else -# define LONG long - -# ifndef ULONG_MAX -# define ULONG_MAX ((unsigned long) ~(unsigned long) 0) -# endif -# ifndef LONG_MAX -# define LONG_MAX ((long int) (ULONG_MAX >> 1)) -# endif -# define STRTOL_LONG_MIN LONG_MIN -# define STRTOL_LONG_MAX LONG_MAX -# define STRTOL_ULONG_MAX ULONG_MAX -#endif - - -/* We use this code also for the extended locale handling where the - function gets as an additional argument the locale which has to be - used. To access the values we have to redefine the _NL_CURRENT - macro. */ -#ifdef USE_IN_EXTENDED_LOCALE_MODEL -# undef _NL_CURRENT -# define _NL_CURRENT(category, item) \ - (current->values[_NL_ITEM_INDEX (item)].string) -# define LOCALE_PARAM , loc -# define LOCALE_PARAM_DECL __locale_t loc; -#else -# define LOCALE_PARAM -# define LOCALE_PARAM_DECL -#endif - -#if defined _LIBC || defined HAVE_WCHAR_H -# include -#endif - -#ifdef USE_WIDE_CHAR -# include -# define L_(Ch) L##Ch -# define UCHAR_TYPE wint_t -# define STRING_TYPE wchar_t -# ifdef USE_IN_EXTENDED_LOCALE_MODEL -# define ISSPACE(Ch) __iswspace_l ((Ch), loc) -# define ISALPHA(Ch) __iswalpha_l ((Ch), loc) -# define TOUPPER(Ch) __towupper_l ((Ch), loc) -# else -# define ISSPACE(Ch) iswspace (Ch) -# define ISALPHA(Ch) iswalpha (Ch) -# define TOUPPER(Ch) towupper (Ch) -# endif -#else -# if defined STDC_HEADERS || (!defined isascii && !defined HAVE_ISASCII) -# define IN_CTYPE_DOMAIN(c) 1 -# else -# define IN_CTYPE_DOMAIN(c) isascii(c) -# endif -# define L_(Ch) Ch -# define UCHAR_TYPE unsigned char -# define STRING_TYPE char -# ifdef USE_IN_EXTENDED_LOCALE_MODEL -# define ISSPACE(Ch) __isspace_l ((Ch), loc) -# define ISALPHA(Ch) __isalpha_l ((Ch), loc) -# define TOUPPER(Ch) __toupper_l ((Ch), loc) -# else -# define ISSPACE(Ch) (IN_CTYPE_DOMAIN (Ch) && isspace (Ch)) -# define ISALPHA(Ch) (IN_CTYPE_DOMAIN (Ch) && isalpha (Ch)) -# define TOUPPER(Ch) (IN_CTYPE_DOMAIN (Ch) ? toupper (Ch) : (Ch)) -# endif -#endif - -/* For compilers which are ansi but don't define __STDC__, like SGI - Irix-4.0.5 cc, also check whether PROTOTYPES is defined. */ -#if defined (__STDC__) || defined (PROTOTYPES) -# define INTERNAL(X) INTERNAL1(X) -# define INTERNAL1(X) __##X##_internal -# define WEAKNAME(X) WEAKNAME1(X) -#else -# define INTERNAL(X) __/**/X/**/_internal -#endif - -#ifdef USE_NUMBER_GROUPING -/* This file defines a function to check for correct grouping. */ -# include "grouping.h" -#endif - - - -/* Convert NPTR to an `unsigned long int' or `long int' in base BASE. - If BASE is 0 the base is determined by the presence of a leading - zero, indicating octal or a leading "0x" or "0X", indicating hexadecimal. - If BASE is < 2 or > 36, it is reset to 10. - If ENDPTR is not NULL, a pointer to the character after the last - one converted is stored in *ENDPTR. */ - -INT -INTERNAL (strtol) (nptr, endptr, base, group LOCALE_PARAM) - const STRING_TYPE *nptr; - STRING_TYPE **endptr; - int base; - int group; - LOCALE_PARAM_DECL -{ - int negative; - register unsigned LONG int cutoff; - register unsigned int cutlim; - register unsigned LONG int i; - register const STRING_TYPE *s; - register UCHAR_TYPE c; - const STRING_TYPE *save, *end; - int overflow; - -#ifdef USE_NUMBER_GROUPING -# ifdef USE_IN_EXTENDED_LOCALE_MODEL - struct locale_data *current = loc->__locales[LC_NUMERIC]; -# endif - /* The thousands character of the current locale. */ - wchar_t thousands = L'\0'; - /* The numeric grouping specification of the current locale, - in the format described in . */ - const char *grouping; - - if (group) - { - grouping = _NL_CURRENT (LC_NUMERIC, GROUPING); - if (*grouping <= 0 || *grouping == CHAR_MAX) - grouping = NULL; - else - { - /* Figure out the thousands separator character. */ -# if defined _LIBC || defined _HAVE_BTOWC - thousands = __btowc (*_NL_CURRENT (LC_NUMERIC, THOUSANDS_SEP)); - if (thousands == WEOF) - thousands = L'\0'; -# endif - if (thousands == L'\0') - grouping = NULL; - } - } - else - grouping = NULL; -#endif - - if (base < 0 || base == 1 || base > 36) - { - __set_errno (EINVAL); - return 0; - } - - save = s = nptr; - - /* Skip white space. */ - while (ISSPACE (*s)) - ++s; - if (*s == L_('\0')) - goto noconv; - - /* Check for a sign. */ - if (*s == L_('-')) - { - negative = 1; - ++s; - } - else if (*s == L_('+')) - { - negative = 0; - ++s; - } - else - negative = 0; - - /* Recognize number prefix and if BASE is zero, figure it out ourselves. */ - if (*s == L_('0')) - { - if ((base == 0 || base == 16) && TOUPPER (s[1]) == L_('X')) - { - s += 2; - base = 16; - } - else if (base == 0) - base = 8; - } - else if (base == 0) - base = 10; - - /* Save the pointer so we can check later if anything happened. */ - save = s; - -#ifdef USE_NUMBER_GROUPING - if (group) - { - /* Find the end of the digit string and check its grouping. */ - end = s; - for (c = *end; c != L_('\0'); c = *++end) - if ((wchar_t) c != thousands - && ((wchar_t) c < L_('0') || (wchar_t) c > L_('9')) - && (!ISALPHA (c) || (int) (TOUPPER (c) - L_('A') + 10) >= base)) - break; - if (*s == thousands) - end = s; - else - end = correctly_grouped_prefix (s, end, thousands, grouping); - } - else -#endif - end = NULL; - - cutoff = STRTOL_ULONG_MAX / (unsigned LONG int) base; - cutlim = STRTOL_ULONG_MAX % (unsigned LONG int) base; - - overflow = 0; - i = 0; - for (c = *s; c != L_('\0'); c = *++s) - { - if (s == end) - break; - if (c >= L_('0') && c <= L_('9')) - c -= L_('0'); - else if (ISALPHA (c)) - c = TOUPPER (c) - L_('A') + 10; - else - break; - if ((int) c >= base) - break; - /* Check for overflow. */ - if (i > cutoff || (i == cutoff && c > cutlim)) - overflow = 1; - else - { - i *= (unsigned LONG int) base; - i += c; - } - } - - /* Check if anything actually happened. */ - if (s == save) - goto noconv; - - /* Store in ENDPTR the address of one character - past the last character we converted. */ - if (endptr != NULL) - *endptr = (STRING_TYPE *) s; - -#if !UNSIGNED - /* Check for a value that is within the range of - `unsigned LONG int', but outside the range of `LONG int'. */ - if (overflow == 0 - && i > (negative - ? -((unsigned LONG int) (STRTOL_LONG_MIN + 1)) + 1 - : (unsigned LONG int) STRTOL_LONG_MAX)) - overflow = 1; -#endif - - if (overflow) - { - __set_errno (ERANGE); -#if UNSIGNED - return STRTOL_ULONG_MAX; -#else - return negative ? STRTOL_LONG_MIN : STRTOL_LONG_MAX; -#endif - } - - /* Return the result of the appropriate sign. */ - return negative ? -i : i; - -noconv: - /* We must handle a special case here: the base is 0 or 16 and the - first two characters are '0' and 'x', but the rest are no - hexadecimal digits. This is no error case. We return 0 and - ENDPTR points to the `x`. */ - if (endptr != NULL) - { - if (save - nptr >= 2 && TOUPPER (save[-1]) == L_('X') - && save[-2] == L_('0')) - *endptr = (STRING_TYPE *) &save[-1]; - else - /* There was no number to convert. */ - *endptr = (STRING_TYPE *) nptr; - } - - return 0L; -} - -/* External user entry point. */ - -#if _LIBC - 0 == 0 -# undef PARAMS -# if defined (__STDC__) && __STDC__ -# define PARAMS(Args) Args -# else -# define PARAMS(Args) () -# endif - -/* Prototype. */ -INT strtol PARAMS ((const STRING_TYPE *nptr, STRING_TYPE **endptr, int base)); -#endif - - -INT -#ifdef weak_function -weak_function -#endif -strtol (nptr, endptr, base LOCALE_PARAM) - const STRING_TYPE *nptr; - STRING_TYPE **endptr; - int base; - LOCALE_PARAM_DECL -{ - return INTERNAL (strtol) (nptr, endptr, base, 0 LOCALE_PARAM); -} diff --git a/lib/strtoul.c b/lib/strtoul.c deleted file mode 100644 index cfe239cd..00000000 --- a/lib/strtoul.c +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright (C) 1991, 1999, 2001 Free Software Foundation, Inc. - -NOTE: The canonical source of this file is maintained with the GNU C Library. -Bugs can be reported to bug-glibc@prep.ai.mit.edu. - -This program is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software Foundation, -Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#define UNSIGNED 1 - -#include "strtol.c" diff --git a/lib/unlocked-io.h b/lib/unlocked-io.h deleted file mode 100644 index a7240fb9..00000000 --- a/lib/unlocked-io.h +++ /dev/null @@ -1,90 +0,0 @@ -/* Prefer faster, non-thread-safe stdio functions if available. - - Copyright (C) 2001, 2002 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify it - under the terms of the GNU Library 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 - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, - USA. */ - -/* Written by Jim Meyering. */ - -#ifndef UNLOCKED_IO_H -# define UNLOCKED_IO_H 1 - -# ifndef USE_UNLOCKED_IO -# define USE_UNLOCKED_IO 1 -# endif - -# if USE_UNLOCKED_IO - -/* These are wrappers for functions/macros from GNU libc. - The standard I/O functions are thread-safe. These *_unlocked ones are - more efficient but not thread-safe. That they're not thread-safe is - fine since all of the applications in this package are single threaded. */ - -# if HAVE_DECL_CLEARERR_UNLOCKED -# undef clearerr -# define clearerr(x) clearerr_unlocked (x) -# endif -# if HAVE_DECL_FEOF_UNLOCKED -# undef feof -# define feof(x) feof_unlocked (x) -# endif -# if HAVE_DECL_FERROR_UNLOCKED -# undef ferror -# define ferror(x) ferror_unlocked (x) -# endif -# if HAVE_DECL_FFLUSH_UNLOCKED -# undef fflush -# define fflush(x) fflush_unlocked (x) -# endif -# if HAVE_DECL_FGETS_UNLOCKED -# undef fgets -# define fgets(x,y,z) fgets_unlocked (x,y,z) -# endif -# if HAVE_DECL_FPUTC_UNLOCKED -# undef fputc -# define fputc(x,y) fputc_unlocked (x,y) -# endif -# if HAVE_DECL_FPUTS_UNLOCKED -# undef fputs -# define fputs(x,y) fputs_unlocked (x,y) -# endif -# if HAVE_DECL_FREAD_UNLOCKED -# undef fread -# define fread(w,x,y,z) fread_unlocked (w,x,y,z) -# endif -# if HAVE_DECL_FWRITE_UNLOCKED -# undef fwrite -# define fwrite(w,x,y,z) fwrite_unlocked (w,x,y,z) -# endif -# if HAVE_DECL_GETC_UNLOCKED -# undef getc -# define getc(x) getc_unlocked (x) -# endif -# if HAVE_DECL_GETCHAR_UNLOCKED -# undef getchar -# define getchar() getchar_unlocked () -# endif -# if HAVE_DECL_PUTC_UNLOCKED -# undef putc -# define putc(x,y) putc_unlocked (x,y) -# endif -# if HAVE_DECL_PUTCHAR_UNLOCKED -# undef putchar -# define putchar(x) putchar_unlocked (x) -# endif - -# endif /* USE_UNLOCKED_IO */ -#endif /* UNLOCKED_IO_H */ diff --git a/lib/xalloc.h b/lib/xalloc.h deleted file mode 100644 index 5b623da2..00000000 --- a/lib/xalloc.h +++ /dev/null @@ -1,89 +0,0 @@ -/* xalloc.h -- malloc with out-of-memory checking - Copyright (C) 1990-1998, 1999, 2000 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#ifndef XALLOC_H_ -# define XALLOC_H_ - -# include - -# ifndef PARAMS -# if defined PROTOTYPES || (defined __STDC__ && __STDC__) -# define PARAMS(Args) Args -# else -# define PARAMS(Args) () -# endif -# endif - -# ifndef __attribute__ -# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8) || __STRICT_ANSI__ -# define __attribute__(x) -# endif -# endif - -# ifndef ATTRIBUTE_NORETURN -# define ATTRIBUTE_NORETURN __attribute__ ((__noreturn__)) -# endif - -/* Exit value when the requested amount of memory is not available. - It is initialized to EXIT_FAILURE, but the caller may set it to - some other value. */ -extern int xalloc_exit_failure; - -/* If this pointer is non-zero, run the specified function upon each - allocation failure. It is initialized to zero. */ -extern void (*xalloc_fail_func) PARAMS ((void)); - -/* If XALLOC_FAIL_FUNC is undefined or a function that returns, this - message is output. It is translated via gettext. - Its value is "memory exhausted". */ -extern char const xalloc_msg_memory_exhausted[]; - -/* This function is always triggered when memory is exhausted. It is - in charge of honoring the three previous items. This is the - function to call when one wants the program to die because of a - memory allocation failure. */ -extern void xalloc_die PARAMS ((void)) ATTRIBUTE_NORETURN; - -void *xmalloc PARAMS ((size_t n)); -void *xcalloc PARAMS ((size_t n, size_t s)); -void *xrealloc PARAMS ((void *p, size_t n)); -char *xstrdup PARAMS ((const char *str)); - -# define XMALLOC(Type, N_items) ((Type *) xmalloc (sizeof (Type) * (N_items))) -# define XCALLOC(Type, N_items) ((Type *) xcalloc (sizeof (Type), (N_items))) -# define XREALLOC(Ptr, Type, N_items) \ - ((Type *) xrealloc ((void *) (Ptr), sizeof (Type) * (N_items))) - -/* Declare and alloc memory for VAR of type TYPE. */ -# define NEW(Type, Var) Type *(Var) = XMALLOC (Type, 1) - -/* Free VAR only if non NULL. */ -# define XFREE(Var) \ - do { \ - if (Var) \ - free (Var); \ - } while (0) - -/* Return a pointer to a malloc'ed copy of the array SRC of NUM elements. */ -# define CCLONE(Src, Num) \ - (memcpy (xmalloc (sizeof (*Src) * (Num)), (Src), sizeof (*Src) * (Num))) - -/* Return a malloc'ed copy of SRC. */ -# define CLONE(Src) CCLONE (Src, 1) - - -#endif /* !XALLOC_H_ */ diff --git a/lib/xmalloc.c b/lib/xmalloc.c deleted file mode 100644 index 3affee7a..00000000 --- a/lib/xmalloc.c +++ /dev/null @@ -1,113 +0,0 @@ -/* xmalloc.c -- malloc with out of memory checking - Copyright (C) 1990-1999, 2000, 2002 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#if HAVE_CONFIG_H -# include -#endif - -#include - -#if STDC_HEADERS -# include -#else -void *calloc (); -void *malloc (); -void *realloc (); -void free (); -#endif - -#include "gettext.h" -#define _(msgid) gettext (msgid) -#define N_(msgid) msgid - -#include "error.h" -#include "xalloc.h" - -#ifndef EXIT_FAILURE -# define EXIT_FAILURE 1 -#endif - -/* The following tests require AC_PREREQ(2.54). */ - -#ifndef HAVE_MALLOC -"you must run the autoconf test for a GNU libc compatible malloc" -#endif - -#ifndef HAVE_REALLOC -"you must run the autoconf test for a GNU libc compatible realloc" -#endif - -/* Exit value when the requested amount of memory is not available. - The caller may set it to some other value. */ -int xalloc_exit_failure = EXIT_FAILURE; - -/* If non NULL, call this function when memory is exhausted. */ -void (*xalloc_fail_func) PARAMS ((void)) = 0; - -/* If XALLOC_FAIL_FUNC is NULL, or does return, display this message - before exiting when memory is exhausted. Goes through gettext. */ -char const xalloc_msg_memory_exhausted[] = N_("memory exhausted"); - -void -xalloc_die (void) -{ - if (xalloc_fail_func) - (*xalloc_fail_func) (); - error (xalloc_exit_failure, 0, "%s", _(xalloc_msg_memory_exhausted)); - /* The `noreturn' cannot be given to error, since it may return if - its first argument is 0. To help compilers understand the - xalloc_die does terminate, call exit. */ - exit (EXIT_FAILURE); -} - -/* Allocate N bytes of memory dynamically, with error checking. */ - -void * -xmalloc (size_t n) -{ - void *p; - - p = malloc (n); - if (p == 0) - xalloc_die (); - return p; -} - -/* Change the size of an allocated block of memory P to N bytes, - with error checking. */ - -void * -xrealloc (void *p, size_t n) -{ - p = realloc (p, n); - if (p == 0) - xalloc_die (); - return p; -} - -/* Allocate memory for N elements of S bytes, with error checking. */ - -void * -xcalloc (size_t n, size_t s) -{ - void *p; - - p = calloc (n, s); - if (p == 0) - xalloc_die (); - return p; -} diff --git a/lib/xstrdup.c b/lib/xstrdup.c deleted file mode 100644 index cb1efa8c..00000000 --- a/lib/xstrdup.c +++ /dev/null @@ -1,38 +0,0 @@ -/* xstrdup.c -- copy a string with out of memory checking - Copyright (C) 1990, 1996, 1998, 2001 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#if HAVE_CONFIG_H -# include -#endif - -#if STDC_HEADERS || HAVE_STRING_H -# include -#else -# include -#endif - -#include - -#include "xalloc.h" - -/* Return a newly allocated copy of STRING. */ - -char * -xstrdup (const char *string) -{ - return strcpy (xmalloc (strlen (string) + 1), string); -} diff --git a/lib/xstrndup.c b/lib/xstrndup.c deleted file mode 100644 index 594a6c9f..00000000 --- a/lib/xstrndup.c +++ /dev/null @@ -1,51 +0,0 @@ -/* Copyright (C) 2001 Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by the - Free Software Foundation; either version 2, or (at your option) any - later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#if HAVE_CONFIG_H -# include -#endif - -#if STDC_HEADERS || HAVE_STRING_H -# include -#else -# include -#endif - -#include - -#include "xalloc.h" - -#ifndef HAVE_DECL_STRNLEN -"this configure-time declaration test was not run" -#endif -#if !HAVE_DECL_STRNLEN -size_t strnlen (); -#endif - -char *xstrndup (const char *s, size_t n); - -char * -xstrndup (const char *s, size_t n) -{ - size_t len = strnlen (s, n); - char *new = xmalloc (len + 1); - - if (new == NULL) - return NULL; - - new[len] = '\0'; - return (char *) memcpy (new, s, len); -} diff --git a/m4/.cvsignore b/m4/.cvsignore index d24a47f5..1fb1732e 100644 --- a/m4/.cvsignore +++ b/m4/.cvsignore @@ -1,8 +1,12 @@ -Makefile -Makefile.in +alloca.m4 codeset.m4 +dirname.m4 +dos.m4 +error.m4 +getopt.m4 gettext.m4 glibc21.m4 +hash.m4 iconv.m4 intdiv0.m4 inttypes-pri.m4 @@ -13,9 +17,20 @@ lcmessage.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 +mbrtowc.m4 +mbswidth.m4 nls.m4 +obstack.m4 +onceonly.m4 po.m4 progtest.m4 +quote.m4 +quotearg.m4 +stdbool.m4 stdint_h.m4 +stpcpy.m4 +strnlen.m4 uintmax_t.m4 ulonglong.m4 +unlocked-io.m4 +xalloc.m4 diff --git a/m4/Makefile.am b/m4/Makefile.am deleted file mode 100644 index 9e002b69..00000000 --- a/m4/Makefile.am +++ /dev/null @@ -1,13 +0,0 @@ -## Process this file with automake to produce Makefile.in -*-Makefile-*- -EXTRA_DIST = \ - alloca.m4 dirname.m4 dmalloc.m4 dos.m4 error.m4 getopt.m4 hash.m4 \ - m4.m4 malloc.m4 \ - mbrtowc.m4 mbswidth.m4 memchr.m4 memcmp.m4 memrchr.m4 \ - obstack.m4 onceonly.m4 \ - prereq.m4 quote.m4 quotearg.m4 \ - realloc.m4 stdbool.m4 \ - stpcpy.m4 strnlen.m4 strtol.m4 strtoul.m4 \ - subpipe.m4 timevar.m4 unlocked-io.m4 warning.m4 xalloc.m4 \ - gettext.m4 iconv.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 progtest.m4 \ - codeset.m4 glibc21.m4 intdiv0.m4 inttypes-pri.m4 inttypes.m4 inttypes_h.m4 \ - isc-posix.m4 lcmessage.m4 nls.m4 po.m4 stdint_h.m4 uintmax_t.m4 ulonglong.m4 diff --git a/m4/alloca.m4 b/m4/alloca.m4 deleted file mode 100644 index 4df039d2..00000000 --- a/m4/alloca.m4 +++ /dev/null @@ -1,36 +0,0 @@ -# alloca.m4 serial 2 (gettext-0.12) -dnl Copyright (C) 2002-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -AC_DEFUN([gl_FUNC_ALLOCA], -[ - dnl Work around a bug of AC_EGREP_CPP in autoconf-2.57. - AC_REQUIRE([AC_PROG_CPP]) - AC_REQUIRE([AC_PROG_EGREP]) - - AC_REQUIRE([AC_FUNC_ALLOCA]) - if test $ac_cv_func_alloca_works = no; then - gl_PREREQ_ALLOCA - fi - - # Define an additional variable used in the Makefile substitution. - - AC_EGREP_CPP([Need own alloca], [ -#if defined __GNUC__ || defined _MSC_VER || !HAVE_ALLOCA_H - Need own alloca -#endif - ], - ALLOCA_H=alloca.h, - ALLOCA_H=) - AC_SUBST([ALLOCA_H]) -]) - -# Prerequisites of lib/alloca.c. -# STACK_DIRECTION is already handled by AC_FUNC_ALLOCA. -AC_DEFUN([gl_PREREQ_ALLOCA], [ - AC_CHECK_HEADERS_ONCE(stdlib.h string.h) -]) diff --git a/m4/dirname.m4 b/m4/dirname.m4 deleted file mode 100644 index 8b04bcab..00000000 --- a/m4/dirname.m4 +++ /dev/null @@ -1,25 +0,0 @@ -# dirname.m4 serial 1 -dnl Copyright (C) 2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -AC_DEFUN([gl_DIRNAME], -[ - dnl Prerequisites of lib/dirname.h. - AC_REQUIRE([jm_AC_DOS]) - - dnl Prerequisites of lib/dirname.c. - AC_REQUIRE([AC_HEADER_STDC]) - AC_CHECK_HEADERS_ONCE(string.h) - - dnl Prerequisites of lib/basename.c. - AC_REQUIRE([AC_HEADER_STDC]) - AC_CHECK_HEADERS_ONCE(string.h) - - dnl Prerequisites of lib/stripslash.c. - AC_REQUIRE([AC_HEADER_STDC]) - AC_CHECK_HEADERS_ONCE(string.h) -]) diff --git a/m4/dos.m4 b/m4/dos.m4 deleted file mode 100644 index 868626e7..00000000 --- a/m4/dos.m4 +++ /dev/null @@ -1,53 +0,0 @@ -#serial 5 - -# Define some macros required for proper operation of code in lib/*.c -# on MSDOS/Windows systems. - -# From Jim Meyering. - -AC_DEFUN([jm_AC_DOS], - [ - AC_CACHE_CHECK([whether system is Windows or MSDOS], [ac_cv_win_or_dos], - [ - AC_TRY_COMPILE([], - [#if !defined _WIN32 && !defined __WIN32__ && !defined __MSDOS__ -neither MSDOS nor Windows -#endif], - [ac_cv_win_or_dos=yes], - [ac_cv_win_or_dos=no]) - ]) - - if test x"$ac_cv_win_or_dos" = xyes; then - ac_fs_accepts_drive_letter_prefix=1 - ac_fs_backslash_is_file_name_separator=1 - else - ac_fs_accepts_drive_letter_prefix=0 - ac_fs_backslash_is_file_name_separator=0 - fi - - AH_VERBATIM(FILESYSTEM_PREFIX_LEN, - [#if FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX -# define FILESYSTEM_PREFIX_LEN(Filename) \ - ((Filename)[0] && (Filename)[1] == ':' ? 2 : 0) -#else -# define FILESYSTEM_PREFIX_LEN(Filename) 0 -#endif]) - - AC_DEFINE_UNQUOTED([FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX], - $ac_fs_accepts_drive_letter_prefix, - [Define on systems for which file names may have a so-called - `drive letter' prefix, define this to compute the length of that - prefix, including the colon.]) - - AH_VERBATIM(ISSLASH, - [#if FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR -# define ISSLASH(C) ((C) == '/' || (C) == '\\') -#else -# define ISSLASH(C) ((C) == '/') -#endif]) - - AC_DEFINE_UNQUOTED([FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR], - $ac_fs_backslash_is_file_name_separator, - [Define if the backslash character may also serve as a file name - component separator.]) - ]) diff --git a/m4/error.m4 b/m4/error.m4 deleted file mode 100644 index 14e23a71..00000000 --- a/m4/error.m4 +++ /dev/null @@ -1,18 +0,0 @@ -#serial 7 - -AC_DEFUN([gl_ERROR], -[ - AC_FUNC_ERROR_AT_LINE - dnl Note: AC_FUNC_ERROR_AT_LINE does AC_LIBSOURCES([error.h, error.c]). - jm_PREREQ_ERROR -]) - -# Prerequisites of lib/error.c. -AC_DEFUN([jm_PREREQ_ERROR], -[ - AC_REQUIRE([AC_HEADER_STDC]) - AC_REQUIRE([AC_FUNC_VPRINTF]) - AC_CHECK_FUNCS(strerror) - AC_CHECK_DECLS([strerror]) - AC_FUNC_STRERROR_R -]) diff --git a/m4/getopt.m4 b/m4/getopt.m4 deleted file mode 100644 index 558558de..00000000 --- a/m4/getopt.m4 +++ /dev/null @@ -1,13 +0,0 @@ -# getopt.m4 serial 1 -dnl Copyright (C) 2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -AC_DEFUN([gl_GETOPT], -[ - dnl Prerequisites of lib/getopt.c. - AC_CHECK_HEADERS_ONCE(string.h) -]) diff --git a/m4/hash.m4 b/m4/hash.m4 deleted file mode 100644 index b88c6ec9..00000000 --- a/m4/hash.m4 +++ /dev/null @@ -1,15 +0,0 @@ -# hash.m4 serial 1 -dnl Copyright (C) 2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -AC_DEFUN([gl_HASH], -[ - dnl Prerequisites of lib/hash.c. - AC_CHECK_HEADERS_ONCE(stdlib.h) - AC_HEADER_STDBOOL - AC_CHECK_DECLS_ONCE(free malloc) -]) diff --git a/m4/malloc.m4 b/m4/malloc.m4 deleted file mode 100644 index 2452acf0..00000000 --- a/m4/malloc.m4 +++ /dev/null @@ -1,25 +0,0 @@ -# malloc.m4 serial 7 -dnl Copyright (C) 2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Jim Meyering. -dnl Determine whether malloc accepts 0 as its argument. -dnl If it doesn't, arrange to use the replacement function. - -AC_DEFUN([jm_FUNC_MALLOC], -[ - AC_REQUIRE([AC_FUNC_MALLOC]) - dnl autoconf < 2.57 used the symbol ac_cv_func_malloc_works. - if test X"$ac_cv_func_malloc_0_nonnull" = Xno || test X"$ac_cv_func_malloc_works" = Xno; then - gl_PREREQ_MALLOC - fi -]) - -# Prerequisites of lib/malloc.c. -AC_DEFUN([gl_PREREQ_MALLOC], [ - : -]) diff --git a/m4/mbrtowc.m4 b/m4/mbrtowc.m4 deleted file mode 100644 index 21e9daab..00000000 --- a/m4/mbrtowc.m4 +++ /dev/null @@ -1,27 +0,0 @@ -# mbrtowc.m4 serial 5 -dnl Copyright (C) 2001-2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Paul Eggert - -dnl This file can be removed, and jm_FUNC_MBRTOWC replaced with -dnl AC_FUNC_MBRTOWC, when autoconf 2.57 can be assumed everywhere. - -AC_DEFUN([jm_FUNC_MBRTOWC], -[ - AC_CACHE_CHECK([whether mbrtowc and mbstate_t are properly declared], - jm_cv_func_mbrtowc, - [AC_TRY_LINK( - [#include ], - [mbstate_t state; return ! (sizeof state && mbrtowc);], - jm_cv_func_mbrtowc=yes, - jm_cv_func_mbrtowc=no)]) - if test $jm_cv_func_mbrtowc = yes; then - AC_DEFINE(HAVE_MBRTOWC, 1, - [Define to 1 if mbrtowc and mbstate_t are properly declared.]) - fi -]) diff --git a/m4/mbswidth.m4 b/m4/mbswidth.m4 deleted file mode 100644 index d7981ca3..00000000 --- a/m4/mbswidth.m4 +++ /dev/null @@ -1,36 +0,0 @@ -#serial 9 - -dnl autoconf tests required for use of mbswidth.c -dnl From Bruno Haible. - -AC_DEFUN([gl_MBSWIDTH], -[ - AC_CHECK_HEADERS_ONCE(wchar.h wctype.h) - AC_CHECK_FUNCS_ONCE(isascii iswprint mbsinit) - AC_CHECK_FUNCS(iswcntrl wcwidth) - jm_FUNC_MBRTOWC - - AC_CACHE_CHECK([whether wcwidth is declared], ac_cv_have_decl_wcwidth, - [AC_TRY_COMPILE([ -/* AIX 3.2.5 declares wcwidth in . */ -#if HAVE_STRING_H -# include -#endif -#if HAVE_WCHAR_H -# include -#endif -], [ -#ifndef wcwidth - char *p = (char *) wcwidth; -#endif -], ac_cv_have_decl_wcwidth=yes, ac_cv_have_decl_wcwidth=no)]) - if test $ac_cv_have_decl_wcwidth = yes; then - ac_val=1 - else - ac_val=0 - fi - AC_DEFINE_UNQUOTED(HAVE_DECL_WCWIDTH, $ac_val, - [Define to 1 if you have the declaration of wcwidth(), and to 0 otherwise.]) - - AC_TYPE_MBSTATE_T -]) diff --git a/m4/memchr.m4 b/m4/memchr.m4 deleted file mode 100644 index 7b6cfc43..00000000 --- a/m4/memchr.m4 +++ /dev/null @@ -1,21 +0,0 @@ -# memchr.m4 serial 1 -dnl Copyright (C) 2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -AC_DEFUN([gl_FUNC_MEMCHR], -[ - AC_REPLACE_FUNCS(memchr) - if test $ac_cv_func_memchr = no; then - jm_PREREQ_MEMCHR - fi -]) - -# Prerequisites of lib/memchr.c. -AC_DEFUN([jm_PREREQ_MEMCHR], [ - AC_CHECK_HEADERS_ONCE(limits.h stdlib.h) - AC_CHECK_HEADERS(bp-sym.h) -]) diff --git a/m4/memcmp.m4 b/m4/memcmp.m4 deleted file mode 100644 index 4442e47b..00000000 --- a/m4/memcmp.m4 +++ /dev/null @@ -1,22 +0,0 @@ -# memcmp.m4 serial 8 -dnl Copyright (C) 2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -AC_DEFUN([jm_FUNC_MEMCMP], -[ - AC_REQUIRE([AC_FUNC_MEMCMP]) - if test $ac_cv_func_memcmp_working = no; then - AC_DEFINE(memcmp, rpl_memcmp, - [Define to rpl_memcmp if the replacement function should be used.]) - gl_PREREQ_MEMCMP - fi -]) - -# Prerequisites of lib/memcmp.c. -AC_DEFUN([gl_PREREQ_MEMCMP], [ - AC_CHECK_HEADERS_ONCE(string.h) -]) diff --git a/m4/memrchr.m4 b/m4/memrchr.m4 deleted file mode 100644 index c489ec3d..00000000 --- a/m4/memrchr.m4 +++ /dev/null @@ -1,23 +0,0 @@ -# memrchr.m4 serial 1 -dnl Copyright (C) 2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -AC_DEFUN([gl_FUNC_MEMRCHR], -[ - dnl Persuade glibc to declare memrchr(). - AC_REQUIRE([AC_GNU_SOURCE]) - - AC_REPLACE_FUNCS(memrchr) - if test $ac_cv_func_memrchr = no; then - gl_PREREQ_MEMRCHR - fi -]) - -# Prerequisites of lib/memrchr.c. -AC_DEFUN([gl_PREREQ_MEMRCHR], [ - AC_CHECK_HEADERS_ONCE(limits.h) -]) diff --git a/m4/obstack.m4 b/m4/obstack.m4 deleted file mode 100644 index cd962729..00000000 --- a/m4/obstack.m4 +++ /dev/null @@ -1,24 +0,0 @@ -# obstack.m4 serial 1 -dnl Copyright (C) 2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -AC_DEFUN([gl_OBSTACK], -[ - dnl Prerequisites of lib/obstack.h. - AC_CHECK_HEADERS_ONCE(stddef.h string.h) - - AC_FUNC_OBSTACK - dnl Note: AC_FUNC_OBSTACK does AC_LIBSOURCES([obstack.h, obstack.c]). - if test $ac_cv_func_obstack = no; then - gl_PREREQ_OBSTACK - fi -]) - -# Prerequisites of lib/obstack.c. -AC_DEFUN([gl_PREREQ_OBSTACK], [ - AC_CHECK_HEADERS_ONCE(stdlib.h) -]) diff --git a/m4/onceonly.m4 b/m4/onceonly.m4 deleted file mode 100644 index 50b33f48..00000000 --- a/m4/onceonly.m4 +++ /dev/null @@ -1,63 +0,0 @@ -# onceonly.m4 serial 3 (gettext-0.12) -dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl This file defines some "once only" variants of standard autoconf macros. -dnl AC_CHECK_HEADERS_ONCE like AC_CHECK_HEADERS -dnl AC_CHECK_FUNCS_ONCE like AC_CHECK_FUNCS -dnl AC_CHECK_DECLS_ONCE like AC_CHECK_DECLS -dnl AC_REQUIRE([AC_HEADER_STDC]) like AC_HEADER_STDC -dnl The advantage is that the check for each of the headers/functions/decls -dnl will be put only once into the 'configure' file. It keeps the size of -dnl the 'configure' file down, and avoids redundant output when 'configure' -dnl is run. -dnl The drawback is that the checks cannot be conditionalized. If you write -dnl if some_condition; then gl_CHECK_HEADERS(stdlib.h); fi -dnl inside an AC_DEFUNed function, the gl_CHECK_HEADERS macro call expands to -dnl empty, and the check will be inserted before the body of the AC_DEFUNed -dnl function. - -dnl Autoconf version 2.57 or newer is recommended. -AC_PREREQ(2.54) - -# AC_CHECK_HEADERS_ONCE(HEADER1 HEADER2 ...) is a once-only variant of -# AC_CHECK_HEADERS(HEADER1 HEADER2 ...). -AC_DEFUN([AC_CHECK_HEADERS_ONCE], [ - : - AC_FOREACH([gl_HEADER_NAME], [$1], [ - AC_DEFUN([gl_CHECK_HEADER_]m4_quote(translit(m4_defn([gl_HEADER_NAME]), - [-./], [___])), [ - AC_CHECK_HEADERS(gl_HEADER_NAME) - ]) - AC_REQUIRE([gl_CHECK_HEADER_]m4_quote(translit(gl_HEADER_NAME, - [-./], [___]))) - ]) -]) - -# AC_CHECK_FUNCS_ONCE(FUNC1 FUNC2 ...) is a once-only variant of -# AC_CHECK_FUNCS(FUNC1 FUNC2 ...). -AC_DEFUN([AC_CHECK_FUNCS_ONCE], [ - : - AC_FOREACH([gl_FUNC_NAME], [$1], [ - AC_DEFUN([gl_CHECK_FUNC_]m4_defn([gl_FUNC_NAME]), [ - AC_CHECK_FUNCS(m4_defn([gl_FUNC_NAME])) - ]) - AC_REQUIRE([gl_CHECK_FUNC_]m4_defn([gl_FUNC_NAME])) - ]) -]) - -# AC_CHECK_DECLS_ONCE(DECL1 DECL2 ...) is a once-only variant of -# AC_CHECK_DECLS(DECL1, DECL2, ...). -AC_DEFUN([AC_CHECK_DECLS_ONCE], [ - : - AC_FOREACH([gl_DECL_NAME], [$1], [ - AC_DEFUN([gl_CHECK_DECL_]m4_defn([gl_DECL_NAME]), [ - AC_CHECK_DECLS(m4_defn([gl_DECL_NAME])) - ]) - AC_REQUIRE([gl_CHECK_DECL_]m4_defn([gl_DECL_NAME])) - ]) -]) diff --git a/m4/prereq.m4 b/m4/prereq.m4 deleted file mode 100644 index 3c5d16ae..00000000 --- a/m4/prereq.m4 +++ /dev/null @@ -1,63 +0,0 @@ -#serial 27 - -dnl These are the prerequisite macros for files in the lib/ -dnl directories of the fileutils, sh-utils, and textutils packages. - -AC_DEFUN([jm_PREREQ], -[ - gl_BACKUPFILE - jm_PREREQ_C_STACK - gl_CANON_HOST - gl_DIRNAME - jm_PREREQ_ERROR - gl_EXCLUDE - gl_GETPAGESIZE - gl_HARD_LOCALE - gl_HASH - gl_HUMAN - gl_MBSWIDTH - gl_FUNC_MEMCHR - gl_PHYSMEM - gl_POSIXVER - gl_QUOTEARG - gl_READUTMP - gl_REGEX - jm_PREREQ_STAT - gl_FUNC_STRNLEN - gl_XGETCWD - gl_XREADLINK -]) - -AC_DEFUN([jm_PREREQ_STAT], -[ - AC_CHECK_HEADERS(sys/sysmacros.h sys/statvfs.h sys/vfs.h inttypes.h) - AC_CHECK_HEADERS(sys/param.h sys/mount.h) - AC_CHECK_FUNCS(statvfs) - jm_AC_TYPE_LONG_LONG - - statxfs_includes="\ -$ac_includes_default -#if HAVE_SYS_STATVFS_H -# include -#endif -#if HAVE_SYS_VFS_H -# include -#endif -#if ( ! HAVE_SYS_STATVFS_H && ! HAVE_SYS_VFS_H && HAVE_SYS_MOUNT_H && HAVE_SYS_PARAM_H ) -/* NetBSD 1.5.2 needs these, for the declaration of struct statfs. */ -# include -# include -#endif -" - AC_CHECK_MEMBERS([struct statfs.f_basetype],,,[$statxfs_includes]) - AC_CHECK_MEMBERS([struct statvfs.f_basetype],,,[$statxfs_includes]) - AC_CHECK_MEMBERS([struct statfs.f_fstypename],,,[$statxfs_includes]) - AC_CHECK_MEMBERS([struct statfs.f_type],,,[$statxfs_includes]) - AC_CHECK_MEMBERS([struct statvfs.f_type],,,[$statxfs_includes]) - AC_CHECK_MEMBERS([struct statfs.f_fsid.__val],,,[$statxfs_includes]) - AC_CHECK_MEMBERS([struct statvfs.f_fsid.__val],,,[$statxfs_includes]) - AC_CHECK_MEMBERS([struct statfs.f_namemax],,,[$statxfs_includes]) - AC_CHECK_MEMBERS([struct statvfs.f_namemax],,,[$statxfs_includes]) - AC_CHECK_MEMBERS([struct statfs.f_namelen],,,[$statxfs_includes]) - AC_CHECK_MEMBERS([struct statvfs.f_namelen],,,[$statxfs_includes]) -]) diff --git a/m4/quote.m4 b/m4/quote.m4 deleted file mode 100644 index 14ce1b61..00000000 --- a/m4/quote.m4 +++ /dev/null @@ -1,13 +0,0 @@ -# quote.m4 serial 2 -dnl Copyright (C) 2002, 2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -AC_DEFUN([gl_QUOTE], -[ - dnl Prerequisites of lib/quote.c. - dnl (none) -]) diff --git a/m4/quotearg.m4 b/m4/quotearg.m4 deleted file mode 100644 index 2fba109f..00000000 --- a/m4/quotearg.m4 +++ /dev/null @@ -1,16 +0,0 @@ -# quotearg.m4 serial 1 -dnl Copyright (C) 2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -AC_DEFUN([gl_QUOTEARG], -[ - dnl Prerequisites of lib/quotearg.c. - AC_CHECK_HEADERS_ONCE(wchar.h wctype.h) - AC_CHECK_FUNCS_ONCE(iswprint mbsinit) - AC_TYPE_MBSTATE_T - jm_FUNC_MBRTOWC -]) diff --git a/m4/realloc.m4 b/m4/realloc.m4 deleted file mode 100644 index 9f746f19..00000000 --- a/m4/realloc.m4 +++ /dev/null @@ -1,25 +0,0 @@ -# realloc.m4 serial 7 -dnl Copyright (C) 2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -dnl From Jim Meyering. -dnl Determine whether realloc works when both arguments are 0. -dnl If it doesn't, arrange to use the replacement function. - -AC_DEFUN([jm_FUNC_REALLOC], -[ - AC_REQUIRE([AC_FUNC_REALLOC]) - dnl autoconf < 2.57 used the symbol ac_cv_func_realloc_works. - if test X"$ac_cv_func_realloc_0_nonnull" = Xno || test X"$ac_cv_func_realloc_works" = Xno; then - gl_PREREQ_REALLOC - fi -]) - -# Prerequisites of lib/realloc.c. -AC_DEFUN([gl_PREREQ_REALLOC], [ - : -]) diff --git a/m4/stdbool.m4 b/m4/stdbool.m4 deleted file mode 100644 index ed000c81..00000000 --- a/m4/stdbool.m4 +++ /dev/null @@ -1,89 +0,0 @@ -# Check for stdbool.h that conforms to C99. - -# Copyright (C) 2002-2003 Free Software Foundation, Inc. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. - -# Prepare for substituting if it is not supported. - -AC_DEFUN([AM_STDBOOL_H], -[ - AC_REQUIRE([AC_HEADER_STDBOOL]) - - # Define two additional variables used in the Makefile substitution. - - if test "$ac_cv_header_stdbool_h" = yes; then - STDBOOL_H='' - else - STDBOOL_H='stdbool.h' - fi - AC_SUBST([STDBOOL_H]) - - if test "$ac_cv_type__Bool" = yes; then - HAVE__BOOL=1 - else - HAVE__BOOL=0 - fi - AC_SUBST([HAVE__BOOL]) -]) - -# This macro is only needed in autoconf <= 2.54. Newer versions of autoconf -# have this macro built-in. - -AC_DEFUN([AC_HEADER_STDBOOL], - [AC_CACHE_CHECK([for stdbool.h that conforms to C99], - [ac_cv_header_stdbool_h], - [AC_TRY_COMPILE( - [ - #include - #ifndef bool - "error: bool is not defined" - #endif - #ifndef false - "error: false is not defined" - #endif - #if false - "error: false is not 0" - #endif - #ifndef true - "error: false is not defined" - #endif - #if true != 1 - "error: true is not 1" - #endif - #ifndef __bool_true_false_are_defined - "error: __bool_true_false_are_defined is not defined" - #endif - - struct s { _Bool s: 1; _Bool t; } s; - - char a[true == 1 ? 1 : -1]; - char b[false == 0 ? 1 : -1]; - char c[__bool_true_false_are_defined == 1 ? 1 : -1]; - char d[(bool) -0.5 == true ? 1 : -1]; - bool e = &s; - char f[(_Bool) -0.0 == false ? 1 : -1]; - char g[true]; - char h[sizeof (_Bool)]; - char i[sizeof s.t]; - ], - [ return !a + !b + !c + !d + !e + !f + !g + !h + !i; ], - [ac_cv_header_stdbool_h=yes], - [ac_cv_header_stdbool_h=no])]) - AC_CHECK_TYPES([_Bool]) - if test $ac_cv_header_stdbool_h = yes; then - AC_DEFINE(HAVE_STDBOOL_H, 1, [Define to 1 if stdbool.h conforms to C99.]) - fi]) diff --git a/m4/stpcpy.m4 b/m4/stpcpy.m4 deleted file mode 100644 index b3282661..00000000 --- a/m4/stpcpy.m4 +++ /dev/null @@ -1,24 +0,0 @@ -# stpcpy.m4 serial 1 -dnl Copyright (C) 2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -AC_DEFUN([gl_FUNC_STPCPY], -[ - dnl Persuade glibc to declare stpcpy(). - AC_REQUIRE([AC_GNU_SOURCE]) - - AC_REPLACE_FUNCS(stpcpy) - if test $ac_cv_func_stpcpy = no; then - gl_PREREQ_STPCPY - fi -]) - -# Prerequisites of lib/stpcpy.c. -AC_DEFUN([gl_PREREQ_STPCPY], [ - : -]) - diff --git a/m4/strnlen.m4 b/m4/strnlen.m4 deleted file mode 100644 index 89cca67e..00000000 --- a/m4/strnlen.m4 +++ /dev/null @@ -1,32 +0,0 @@ -# strnlen.m4 serial 2 -dnl Copyright (C) 2002-2003 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -AC_DEFUN([gl_FUNC_STRNLEN], -[ - dnl Persuade glibc to declare strnlen(). - AC_REQUIRE([AC_GNU_SOURCE]) - - AC_FUNC_STRNLEN - if test $ac_cv_func_strnlen_working = no; then - # This is necessary because automake-1.6.1 doens't understand - # that the above use of AC_FUNC_STRNLEN means we may have to use - # lib/strnlen.c. - #AC_LIBOBJ(strnlen) - AC_DEFINE(strnlen, rpl_strnlen, - [Define to rpl_strnlen if the replacement function should be used.]) - gl_PREREQ_STRNLEN - fi -]) - -# Prerequisites of lib/strnlen.c. -AC_DEFUN([gl_PREREQ_STRNLEN], [ - AC_REQUIRE([AC_HEADER_STDC]) - AC_CHECK_HEADERS_ONCE(memory.h string.h) - AC_CHECK_DECLS(memchr) -]) - diff --git a/m4/strtol.m4 b/m4/strtol.m4 deleted file mode 100644 index 59a74f65..00000000 --- a/m4/strtol.m4 +++ /dev/null @@ -1,22 +0,0 @@ -# strtol.m4 serial 1 -dnl Copyright (C) 2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -AC_DEFUN([gl_FUNC_STRTOL], -[ - AC_REPLACE_FUNCS(strtol) - if test $ac_cv_func_strtol = no; then - gl_PREREQ_STRTOL - fi -]) - -# Prerequisites of lib/strtol.c. -AC_DEFUN([gl_PREREQ_STRTOL], [ - AC_REQUIRE([AC_HEADER_STDC]) - AC_CHECK_HEADERS_ONCE(limits.h) - AC_CHECK_FUNCS_ONCE(isascii) -]) diff --git a/m4/strtoul.m4 b/m4/strtoul.m4 deleted file mode 100644 index a76fef6d..00000000 --- a/m4/strtoul.m4 +++ /dev/null @@ -1,20 +0,0 @@ -# strtoul.m4 serial 1 -dnl Copyright (C) 2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -AC_DEFUN([gl_FUNC_STRTOUL], -[ - AC_REPLACE_FUNCS(strtoul) - if test $ac_cv_func_strtoul = no; then - gl_PREREQ_STRTOUL - fi -]) - -# Prerequisites of lib/strtoul.c. -AC_DEFUN([gl_PREREQ_STRTOUL], [ - gl_PREREQ_STRTOL -]) diff --git a/m4/unlocked-io.m4 b/m4/unlocked-io.m4 deleted file mode 100644 index f0c15d99..00000000 --- a/m4/unlocked-io.m4 +++ /dev/null @@ -1,22 +0,0 @@ -#serial 7 -*- autoconf -*- - -dnl From Jim Meyering. -dnl -dnl See if the glibc *_unlocked I/O macros or functions are available. -dnl Use only those *_unlocked macros or functions that are declared -dnl (because some of them were declared in Solaris 2.5.1 but were removed -dnl in Solaris 2.6, whereas we want binaries built on Solaris 2.5.1 to run -dnl on Solaris 2.6). - -AC_DEFUN([jm_FUNC_GLIBC_UNLOCKED_IO], -[ - dnl Persuade glibc to declare fgets_unlocked(), fputs_unlocked() - dnl etc. - AC_REQUIRE([AC_GNU_SOURCE]) - - AC_CHECK_DECLS_ONCE( - [clearerr_unlocked feof_unlocked ferror_unlocked - fflush_unlocked fgets_unlocked fputc_unlocked fputs_unlocked - fread_unlocked fwrite_unlocked getc_unlocked - getchar_unlocked putc_unlocked putchar_unlocked]) -]) diff --git a/m4/xalloc.m4 b/m4/xalloc.m4 deleted file mode 100644 index 1826bdcc..00000000 --- a/m4/xalloc.m4 +++ /dev/null @@ -1,26 +0,0 @@ -# xalloc.m4 serial 1 -dnl Copyright (C) 2002 Free Software Foundation, Inc. -dnl This file is free software, distributed under the terms of the GNU -dnl General Public License. As a special exception to the GNU General -dnl Public License, this file may be distributed as part of a program -dnl that contains a configuration script generated by Autoconf, under -dnl the same distribution terms as the rest of that program. - -AC_DEFUN([gl_XALLOC], -[ - gl_PREREQ_XMALLOC - gl_PREREQ_XSTRDUP -]) - -# Prerequisites of lib/xmalloc.c. -AC_DEFUN([gl_PREREQ_XMALLOC], [ - AC_REQUIRE([AC_HEADER_STDC]) - AC_REQUIRE([jm_FUNC_MALLOC]) - AC_REQUIRE([jm_FUNC_REALLOC]) -]) - -# Prerequisites of lib/xstrdup.c. -AC_DEFUN([gl_PREREQ_XSTRDUP], [ - AC_REQUIRE([AC_HEADER_STDC]) - AC_CHECK_HEADERS_ONCE(string.h) -]) diff --git a/po/.cvsignore b/po/.cvsignore index cb912ac0..e060f7ff 100644 --- a/po/.cvsignore +++ b/po/.cvsignore @@ -1,13 +1,14 @@ -ChangeLog +*.gmo +*.po +LINGUAS Makefile Makefile.in +Makefile.in.in +Makevars Makevars.template POTFILES -bison.pot -stamp-po -*.gmo -Makefile.in Rules-quot +bison.pot boldquot.sed en@boldquot.header en@quot.header @@ -15,3 +16,4 @@ insert-header.sin quot.sed remove-potcdate.sed remove-potcdate.sin +stamp-po diff --git a/po/ChangeLog b/po/ChangeLog deleted file mode 100644 index 970a0c67..00000000 --- a/po/ChangeLog +++ /dev/null @@ -1,70 +0,0 @@ -2002-08-08 gettextize - - * Rules-quot: New file, from gettext-0.11.5. - * boldquot.sed: New file, from gettext-0.11.5. - * en@boldquot.header: New file, from gettext-0.11.5. - * en@quot.header: New file, from gettext-0.11.5. - * insert-header.sin: New file, from gettext-0.11.5. - * quot.sed: New file, from gettext-0.11.5. - * remove-potcdate.sin: New file, from gettext-0.11.5. - -2001-10-10 gettextize - - * Makefile.in.in: Upgrade to gettext-0.10.40. - * cat-id-tbl.c: Remove file. - -2001-10-08 gettextize - - * Makefile.in.in: Upgrade to gettext-0.10.40. - -2001-10-04 gettextize - - * Makefile.in.in: Upgrade to gettext-0.10.40. - * cat-id-tbl.c: Remove file. - -2001-09-27 gettextize - - * Makefile.in.in: Upgrade to gettext-0.10.40. - * cat-id-tbl.c: Remove file. - -2001-08-03 gettextize - - * Makefile.in.in: Upgrade to gettext-0.10.39. - * cat-id-tbl.c: Remove file. - -2001-07-14 gettextize - - * Makefile.in.in: Upgrade to gettext-0.10.38. - * cat-id-tbl.c: Remove file. - * stamp-cat-id: Remove file. - -2000-11-02 Akim Demaille - - * POTFILES.in: Adjust. - -1999-07-26 Jesse Thilo - - * po/ru.po: Added Russian translation. - -1999-06-14 Jesse Thilo - - * po/POTFILES.in: Got rid of version.c. - -1999-04-18 Jesse Thilo - - * po/de.po, po/es.po, po/fr.po, po/nl.po, po/POTFILES.in: - Adjusted paths to reflect directory reorganization. - -1999-03-23 Jesse Thilo - - * po/.cvsignore: Added i18n support. - -1999-03-15 Jesse Thilo - - * po/es.po, po/fr.po, po/nl.po, po/de.po: - Added PO files from Translation Project. - -1999-02-05 Jesse Thilo - - * po/Makefile.in.in, po/POTFILES.in: - Add `po' directory skeleton. diff --git a/po/LINGUAS b/po/LINGUAS deleted file mode 100644 index 5e5aec3c..00000000 --- a/po/LINGUAS +++ /dev/null @@ -1,16 +0,0 @@ -da -de -es -et -fr -hr -id -it -ja -ms -nl -pt_BR -ro -ru -sv -tr diff --git a/po/Makefile.in.in b/po/Makefile.in.in deleted file mode 100644 index 27b721aa..00000000 --- a/po/Makefile.in.in +++ /dev/null @@ -1,353 +0,0 @@ -# Makefile for PO directory in any package using GNU gettext. -# Copyright (C) 1995-1997, 2000-2003 by Ulrich Drepper -# -# This file can be copied and used freely without restrictions. It can -# be used in projects which are not available under the GNU General Public -# License but which still want to provide support for the GNU gettext -# functionality. -# Please note that the actual code of GNU gettext is covered by the GNU -# General Public License and is *not* in the public domain. - -PACKAGE = @PACKAGE@ -VERSION = @VERSION@ - -SHELL = /bin/sh -@SET_MAKE@ - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -VPATH = @srcdir@ - -prefix = @prefix@ -exec_prefix = @exec_prefix@ -datadir = @datadir@ -localedir = $(datadir)/locale -gettextsrcdir = $(datadir)/gettext/po - -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -MKINSTALLDIRS = @MKINSTALLDIRS@ -mkinstalldirs = $(SHELL) $(MKINSTALLDIRS) - -GMSGFMT = @GMSGFMT@ -MSGFMT = @MSGFMT@ -XGETTEXT = @XGETTEXT@ -MSGMERGE = msgmerge -MSGMERGE_UPDATE = @MSGMERGE@ --update -MSGINIT = msginit -MSGCONV = msgconv -MSGFILTER = msgfilter - -POFILES = @POFILES@ -GMOFILES = @GMOFILES@ -UPDATEPOFILES = @UPDATEPOFILES@ -DUMMYPOFILES = @DUMMYPOFILES@ -DISTFILES.common = Makefile.in.in remove-potcdate.sin \ -$(DISTFILES.common.extra1) $(DISTFILES.common.extra2) $(DISTFILES.common.extra3) -DISTFILES = $(DISTFILES.common) Makevars POTFILES.in $(DOMAIN).pot stamp-po \ -$(POFILES) $(GMOFILES) \ -$(DISTFILES.extra1) $(DISTFILES.extra2) $(DISTFILES.extra3) - -POTFILES = \ - -CATALOGS = @CATALOGS@ - -# Makevars gets inserted here. (Don't remove this line!) - -.SUFFIXES: -.SUFFIXES: .po .gmo .mo .sed .sin .nop .po-update - -.po.mo: - @echo "$(MSGFMT) -c -o $@ $<"; \ - $(MSGFMT) -c -o t-$@ $< && mv t-$@ $@ - -.po.gmo: - @lang=`echo $* | sed -e 's,.*/,,'`; \ - test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ - echo "$${cdcmd}rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics -o $${lang}.gmo $${lang}.po"; \ - cd $(srcdir) && rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics -o t-$${lang}.gmo $${lang}.po && mv t-$${lang}.gmo $${lang}.gmo - -.sin.sed: - sed -e '/^#/d' $< > t-$@ - mv t-$@ $@ - - -all: all-@USE_NLS@ - -all-yes: stamp-po -all-no: - -# stamp-po is a timestamp denoting the last time at which the CATALOGS have -# been loosely updated. Its purpose is that when a developer or translator -# checks out the package via CVS, and the $(DOMAIN).pot file is not in CVS, -# "make" will update the $(DOMAIN).pot and the $(CATALOGS), but subsequent -# invocations of "make" will do nothing. This timestamp would not be necessary -# if updating the $(CATALOGS) would always touch them; however, the rule for -# $(POFILES) has been designed to not touch files that don't need to be -# changed. -stamp-po: $(srcdir)/$(DOMAIN).pot - test -z "$(CATALOGS)" || $(MAKE) $(CATALOGS) - @echo "touch stamp-po" - @echo timestamp > stamp-poT - @mv stamp-poT stamp-po - -# Note: Target 'all' must not depend on target '$(DOMAIN).pot-update', -# otherwise packages like GCC can not be built if only parts of the source -# have been downloaded. - -# This target rebuilds $(DOMAIN).pot; it is an expensive operation. -# Note that $(DOMAIN).pot is not touched if it doesn't need to be changed. -$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed - $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ - --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) \ - --files-from=$(srcdir)/POTFILES.in \ - --copyright-holder='$(COPYRIGHT_HOLDER)' \ - --msgid-bugs-address='$(MSGID_BUGS_ADDRESS)' - test ! -f $(DOMAIN).po || { \ - if test -f $(srcdir)/$(DOMAIN).pot; then \ - sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1po && \ - sed -f remove-potcdate.sed < $(DOMAIN).po > $(DOMAIN).2po && \ - if cmp $(DOMAIN).1po $(DOMAIN).2po >/dev/null 2>&1; then \ - rm -f $(DOMAIN).1po $(DOMAIN).2po $(DOMAIN).po; \ - else \ - rm -f $(DOMAIN).1po $(DOMAIN).2po $(srcdir)/$(DOMAIN).pot && \ - mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ - fi; \ - else \ - mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ - fi; \ - } - -# This rule has no dependencies: we don't need to update $(DOMAIN).pot at -# every "make" invocation, only create it when it is missing. -# Only "make $(DOMAIN).pot-update" or "make dist" will force an update. -$(srcdir)/$(DOMAIN).pot: - $(MAKE) $(DOMAIN).pot-update - -# This target rebuilds a PO file if $(DOMAIN).pot has changed. -# Note that a PO file is not touched if it doesn't need to be changed. -$(POFILES): $(srcdir)/$(DOMAIN).pot - @lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \ - test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ - echo "$${cdcmd}$(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot"; \ - cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot - - -install: install-exec install-data -install-exec: -install-data: install-data-@USE_NLS@ - if test "$(PACKAGE)" = "gettext-tools"; then \ - $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \ - for file in $(DISTFILES.common) Makevars.template; do \ - $(INSTALL_DATA) $(srcdir)/$$file \ - $(DESTDIR)$(gettextsrcdir)/$$file; \ - done; \ - for file in Makevars; do \ - rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ - done; \ - else \ - : ; \ - fi -install-data-no: all -install-data-yes: all - $(mkinstalldirs) $(DESTDIR)$(datadir) - @catalogs='$(CATALOGS)'; \ - for cat in $$catalogs; do \ - cat=`basename $$cat`; \ - lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ - dir=$(localedir)/$$lang/LC_MESSAGES; \ - $(mkinstalldirs) $(DESTDIR)$$dir; \ - if test -r $$cat; then realcat=$$cat; else realcat=$(srcdir)/$$cat; fi; \ - $(INSTALL_DATA) $$realcat $(DESTDIR)$$dir/$(DOMAIN).mo; \ - echo "installing $$realcat as $(DESTDIR)$$dir/$(DOMAIN).mo"; \ - for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ - if test -n "$$lc"; then \ - if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \ - link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \ - mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ - mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ - (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ - for file in *; do \ - if test -f $$file; then \ - ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \ - fi; \ - done); \ - rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ - else \ - if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ - :; \ - else \ - rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ - mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ - fi; \ - fi; \ - rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ - ln -s ../LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \ - ln $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \ - cp -p $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ - echo "installing $$realcat link as $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo"; \ - fi; \ - done; \ - done - -install-strip: install - -installdirs: installdirs-exec installdirs-data -installdirs-exec: -installdirs-data: installdirs-data-@USE_NLS@ - if test "$(PACKAGE)" = "gettext-tools"; then \ - $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \ - else \ - : ; \ - fi -installdirs-data-no: -installdirs-data-yes: - $(mkinstalldirs) $(DESTDIR)$(datadir) - @catalogs='$(CATALOGS)'; \ - for cat in $$catalogs; do \ - cat=`basename $$cat`; \ - lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ - dir=$(localedir)/$$lang/LC_MESSAGES; \ - $(mkinstalldirs) $(DESTDIR)$$dir; \ - for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ - if test -n "$$lc"; then \ - if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \ - link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \ - mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ - mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ - (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ - for file in *; do \ - if test -f $$file; then \ - ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \ - fi; \ - done); \ - rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ - else \ - if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ - :; \ - else \ - rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ - mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ - fi; \ - fi; \ - fi; \ - done; \ - done - -# Define this as empty until I found a useful application. -installcheck: - -uninstall: uninstall-exec uninstall-data -uninstall-exec: -uninstall-data: uninstall-data-@USE_NLS@ - if test "$(PACKAGE)" = "gettext-tools"; then \ - for file in $(DISTFILES.common) Makevars.template; do \ - rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ - done; \ - else \ - : ; \ - fi -uninstall-data-no: -uninstall-data-yes: - catalogs='$(CATALOGS)'; \ - for cat in $$catalogs; do \ - cat=`basename $$cat`; \ - lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ - for lc in LC_MESSAGES $(EXTRA_LOCALE_CATEGORIES); do \ - rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ - done; \ - done - -check: all - -info dvi ps pdf html tags TAGS ctags CTAGS ID: - -mostlyclean: - rm -f remove-potcdate.sed - rm -f stamp-poT - rm -f core core.* $(DOMAIN).po $(DOMAIN).1po $(DOMAIN).2po *.new.po - rm -fr *.o - -clean: mostlyclean - -distclean: clean - rm -f Makefile Makefile.in POTFILES *.mo - -maintainer-clean: distclean - @echo "This command is intended for maintainers to use;" - @echo "it deletes files that may require special tools to rebuild." - rm -f stamp-po $(GMOFILES) - -distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) -dist distdir: - $(MAKE) update-po - @$(MAKE) dist2 -# This is a separate target because 'update-po' must be executed before. -dist2: $(DISTFILES) - dists="$(DISTFILES)"; \ - if test "$(PACKAGE)" = "gettext-tools"; then \ - dists="$$dists Makevars.template"; \ - fi; \ - if test -f $(srcdir)/ChangeLog; then \ - dists="$$dists ChangeLog"; \ - fi; \ - for i in 0 1 2 3 4 5 6 7 8 9; do \ - if test -f $(srcdir)/ChangeLog.$$i; then \ - dists="$$dists ChangeLog.$$i"; \ - fi; \ - done; \ - if test -f $(srcdir)/LINGUAS; then dists="$$dists LINGUAS"; fi; \ - for file in $$dists; do \ - if test -f $$file; then \ - cp -p $$file $(distdir); \ - else \ - cp -p $(srcdir)/$$file $(distdir); \ - fi; \ - done - -update-po: Makefile - $(MAKE) $(DOMAIN).pot-update - test -z "$(UPDATEPOFILES)" || $(MAKE) $(UPDATEPOFILES) - $(MAKE) update-gmo - -# General rule for updating PO files. - -.nop.po-update: - @lang=`echo $@ | sed -e 's/\.po-update$$//'`; \ - if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH; fi; \ - tmpdir=`pwd`; \ - echo "$$lang:"; \ - test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ - echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \ - cd $(srcdir); \ - if $(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$tmpdir/$$lang.new.po; then \ - if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ - rm -f $$tmpdir/$$lang.new.po; \ - else \ - if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ - :; \ - else \ - echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ - exit 1; \ - fi; \ - fi; \ - else \ - echo "msgmerge for $$lang.po failed!" 1>&2; \ - rm -f $$tmpdir/$$lang.new.po; \ - fi - -$(DUMMYPOFILES): - -update-gmo: Makefile $(GMOFILES) - @: - -Makefile: Makefile.in.in $(top_builddir)/config.status @POMAKEFILEDEPS@ - cd $(top_builddir) \ - && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \ - $(SHELL) ./config.status - -force: - -# Tell versions [3.59,3.63) of GNU make not to export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/po/Makevars b/po/Makevars deleted file mode 100644 index 4fad0308..00000000 --- a/po/Makevars +++ /dev/null @@ -1,41 +0,0 @@ -# Makefile variables for PO directory in any package using GNU gettext. - -# Usually the message domain is the same as the package name. -DOMAIN = $(PACKAGE) - -# These two variables depend on the location of this directory. -subdir = po -top_builddir = .. - -# These options get passed to xgettext. -XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ - -# This is the copyright holder that gets inserted into the header of the -# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding -# package. (Note that the msgstr strings, extracted from the package's -# sources, belong to the copyright holder of the package.) Translators are -# expected to transfer the copyright for their translations to this person -# or entity, or to disclaim their copyright. The empty string stands for -# the public domain; in this case the translators are expected to disclaim -# their copyright. -COPYRIGHT_HOLDER = Free Software Foundation, Inc. - -# This is the email address or URL to which the translators shall report -# bugs in the untranslated strings: -# - Strings which are not entire sentences, see the maintainer guidelines -# in the GNU gettext documentation, section 'Preparing Strings'. -# - Strings which use unclear terms or require additional context to be -# understood. -# - Strings which make invalid assumptions about notation of date, time or -# money. -# - Pluralisation problems. -# - Incorrect English spelling. -# - Incorrect formatting. -# It can be your email address, or a mailing list address where translators -# can write to without being subscribed, or the URL of a web page through -# which the translators can contact you. -MSGID_BUGS_ADDRESS = bug-bison@gnu.org - -# This is the list of locale categories, beyond LC_MESSAGES, for which the -# message catalogs shall be used. It is usually empty. -EXTRA_LOCALE_CATEGORIES = diff --git a/po/da.po b/po/da.po deleted file mode 100644 index 7d78f7eb..00000000 --- a/po/da.po +++ /dev/null @@ -1,710 +0,0 @@ -# Danish messages for bison. -# Copyright © 2001, 2002 Free Software Foundation, Inc. -# Keld Simonsen , 2002. -# Byrial Ole Jensen , 2002-2003. -# -msgid "" -msgstr "" -"Project-Id-Version: bison 1.875a\n" -"Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2003-08-25 17:14+0200\n" -"PO-Revision-Date: 2003-04-12 22:57+0200\n" -"Last-Translator: Byrial Ole Jensen \n" -"Language-Team: Danish \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=iso-8859-1\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: src/complain.c:56 lib/error.c:135 lib/error.c:163 -msgid "Unknown system error" -msgstr "Ukendt systemfejl" - -#: src/complain.c:79 src/complain.c:94 -msgid "warning: " -msgstr "advarsel: " - -#: src/complain.c:150 src/complain.c:166 -msgid "fatal error: " -msgstr "fatal fejl: " - -#: src/conflicts.c:75 -#, c-format -msgid " Conflict between rule %d and token %s resolved as shift" -msgstr " Konflikt mellem regel %d og element %s løstes som skift" - -#: src/conflicts.c:83 -#, c-format -msgid " Conflict between rule %d and token %s resolved as reduce" -msgstr " Konflikt mellem regel %d og element %s løstes som reducér" - -#: src/conflicts.c:90 -#, c-format -msgid " Conflict between rule %d and token %s resolved as an error" -msgstr " Konflikt mellem regel %d og element %s løstes som en fejl" - -#: src/conflicts.c:398 -#, c-format -msgid "conflicts: %d shift/reduce, %d reduce/reduce\n" -msgstr "konflikter: %d skift/reducér, %d reducér/reducér\n" - -#: src/conflicts.c:401 -#, c-format -msgid "conflicts: %d shift/reduce\n" -msgstr "konflikter: %d skift/reducér\n" - -#: src/conflicts.c:403 -#, c-format -msgid "conflicts: %d reduce/reduce\n" -msgstr "konflikter: %d reducér/reducér\n" - -#: src/conflicts.c:421 -#, c-format -msgid "State %d " -msgstr "Tilstand %d " - -#: src/conflicts.c:498 -#, c-format -msgid "expected %d shift/reduce conflict" -msgid_plural "expected %d shift/reduce conflicts" -msgstr[0] "forventede %d skift/reducér-konflikt" -msgstr[1] "forventede %d skift/reducér-konflikter" - -#: src/conflicts.c:503 -msgid "expected 0 reduce/reduce conflicts" -msgstr "forventede 0 reducér/reducér-konflikter" - -#: src/files.c:99 -#, c-format -msgid "cannot open file `%s'" -msgstr "kan ikke åbne filen \"%s\"" - -#: src/files.c:115 -msgid "I/O error" -msgstr "Fejl ved ind- eller udlæsning" - -#: src/files.c:118 -msgid "cannot close file" -msgstr "kan ikke lukke fil" - -#: src/files.c:336 -#, c-format -msgid "conflicting outputs to file %s" -msgstr "konfliktende uddata til filen %s" - -#: src/getargs.c:186 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "Prøv med \"%s --help\" for mere information.\n" - -#: src/getargs.c:192 -msgid "GNU bison generates parsers for LALR(1) grammars.\n" -msgstr "GNU bison genererer fortolkere til LALR(1)-grammatiker.\n" - -#: src/getargs.c:196 -#, c-format -msgid "Usage: %s [OPTION]... FILE\n" -msgstr "Brug: %s [FLAG]... FIL\n" - -#: src/getargs.c:200 -msgid "" -"If a long option shows an argument as mandatory, then it is mandatory\n" -"for the equivalent short option also. Similarly for optional arguments.\n" -msgstr "" -"Hvis et lang flag viser et argument som obligatorisk, er det også\n" -"obligatorisk for det tilsvarende korte flag. Tilsvarende\n" -"for valgfrie argumenter.\n" - -#: src/getargs.c:206 -msgid "" -"Operation modes:\n" -" -h, --help display this help and exit\n" -" -V, --version output version information and exit\n" -" -y, --yacc emulate POSIX yacc\n" -msgstr "" -"Arbejdstilstande:\n" -" -h, --help vis denne hjælpetekst og afslut\n" -" -V, --version vis versionsinformation og afslut\n" -" -y, --yacc emulér POSIX-yacc\n" - -#: src/getargs.c:213 -msgid "" -"Parser:\n" -" -S, --skeleton=FILE specify the skeleton to use\n" -" -t, --debug instrument the parser for debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n" -" -l, --no-lines don't generate `#line' directives\n" -" -n, --no-parser generate the tables only\n" -" -k, --token-table include a table of token names\n" -msgstr "" -"Fortolker:\n" -" -S, --skeleton=FIL angiv skeletfilen som skal bruges\n" -" -t, --debug instrumentér fortolkeren for fejlsøgning\n" -" --locations aktivér tilstandsberegning\n" -" -p, --name-prefix=PRÆFIKS tilføj PRÆFIKS for eksterne symboler\n" -" -l, --no-lines generér ikke \"#line\"-direktiver\n" -" -n, --no-parser generér kun tabellerne\n" -" -k, --token-table inkludér en tabel over elementnavne\n" - -#: src/getargs.c:225 -msgid "" -"Output:\n" -" -d, --defines also produce a header file\n" -" -r, --report=THINGS also produce details on the automaton\n" -" -v, --verbose same as `--report=state'\n" -" -b, --file-prefix=PREFIX specify a PREFIX for output files\n" -" -o, --output=FILE leave output to FILE\n" -" -g, --graph also produce a VCG description of the " -"automaton\n" -msgstr "" -"Uddata:\n" -" -d, --defines lav også en hovedfil\n" -" -r, --report=SAGER lav også detaljer om automaten\n" -" -v, --verbose samme som \"--report=state\"\n" -" -b, --file-prefix=PRÆFIKS angiv et PRÆFIKS for uddatafiler\n" -" -o, --output=FIL læg uddata i FIL\n" -" -g, --graph lav også en VCG-beskrivelse af automaten\n" - -#: src/getargs.c:236 -msgid "" -"THINGS is a list of comma separated words that can include:\n" -" `state' describe the states\n" -" `itemset' complete the core item sets with their closure\n" -" `lookahead' explicitly associate lookaheads to items\n" -" `solved' describe shift/reduce conflicts solving\n" -" `all' include all the above information\n" -" `none' disable the report\n" -msgstr "" -"TING er en liste med kommaseparerede ord som kan indeholde:\n" -" \"state\" beskriv tilstandene\n" -" \"itemset\" komplettér kerneobjektmængderne med deres afslutninger\n" -" \"lookahead\" kobl udtrykkeligt fremadkig til objekter\n" -" \"solved\" beskriv løsninger af skift/reducér-konflikter\n" -" \"all\" inkludér al ovenstående information\n" -" \"none\" deaktivér rapporten\n" - -#: src/getargs.c:247 -msgid "Report bugs to .\n" -msgstr "" -"Rapportér fejl til .\n" -"Rapportér synpunkter om oversættelsen til .\n" - -#: src/getargs.c:264 -#, c-format -msgid "bison (GNU Bison) %s" -msgstr "bison (GNU Bison) %s" - -#: src/getargs.c:266 -msgid "Written by Robert Corbett and Richard Stallman.\n" -msgstr "Skrevet af Robert Corbett og Richard Stallman.\n" - -#: src/getargs.c:270 -#, c-format -msgid "Copyright (C) %d Free Software Foundation, Inc.\n" -msgstr "Copyright © %d Free Software Foundation, Inc.\n" - -#: src/getargs.c:272 -msgid "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"Dette er frit programmel, se kildekoden for kopieringsbetingelser. Der\n" -"gives INGEN garanti, endog ikke for SALGBARHED eller EGNETHED FOR NOGET\n" -"BESTEMT FORMÅL.\n" - -#: src/getargs.c:438 -#, c-format -msgid "missing operand after `%s'" -msgstr "manglende operand efter \"%s\"" - -#: src/getargs.c:440 -#, c-format -msgid "extra operand `%s'" -msgstr "overtallig operand \"%s\"" - -#: src/gram.c:139 -msgid "empty" -msgstr "tom" - -#: src/gram.c:233 -msgid "Grammar" -msgstr "Grammatik" - -#: src/gram.c:321 src/reduce.c:394 -msgid "warning" -msgstr "advarsel" - -#: src/main.c:124 -msgid "rule never reduced because of conflicts" -msgstr "regel aldrig reduceret på grund af konflikter" - -#: src/parse-gram.y:353 -msgid "POSIX forbids declarations in the grammar" -msgstr "POSIX forbyder deklarationer i grammatikken" - -#: src/parse-gram.y:476 -msgid "missing identifier in parameter declaration" -msgstr "manglende identifikator i parameterdeklaration" - -#: src/print.c:49 -#, c-format -msgid " type %d is %s\n" -msgstr " type %d er %s\n" - -#: src/print.c:165 -#, c-format -msgid "shift, and go to state %d\n" -msgstr "skift, og gå til tilstand %d\n" - -#: src/print.c:167 -#, c-format -msgid "go to state %d\n" -msgstr "gå til tilstand %d\n" - -#: src/print.c:204 -msgid "error (nonassociative)\n" -msgstr "fejl (ikke-associativ)\n" - -#: src/print.c:292 -#, c-format -msgid "reduce using rule %d (%s)" -msgstr "reducér med regel %d (%s)" - -#: src/print.c:294 -msgid "accept" -msgstr "acceptér" - -#: src/print.c:325 src/print.c:391 -msgid "$default" -msgstr "$default" - -#: src/print.c:420 -#, c-format -msgid "state %d" -msgstr "tilstand %d" - -#: src/print.c:456 -msgid "Terminals, with rules where they appear" -msgstr "Terminaler, med regler hvor de forekommer" - -#: src/print.c:483 -msgid "Nonterminals, with rules where they appear" -msgstr "Ikke-terminaler, med regler hvor de forekommer" - -#: src/print.c:512 -msgid " on left:" -msgstr " til venstre:" - -#: src/print.c:527 -msgid " on right:" -msgstr " til højre:" - -#: src/print.c:555 -msgid "Rules never reduced" -msgstr "Aldrig reducerede regler" - -#: src/reader.c:53 -#, c-format -msgid "multiple %s declarations" -msgstr "flere %s-deklarationer" - -#: src/reader.c:115 -#, c-format -msgid "result type clash on merge function %s: <%s> != <%s>" -msgstr "resultattypekonflikt ved sammenfletningsfunktion %s: <%s> != <%s>" - -#: src/reader.c:213 -#, c-format -msgid "rule given for %s, which is a token" -msgstr "regel givet for %s som er et element" - -#: src/reader.c:242 -#, c-format -msgid "type clash on default action: <%s> != <%s>" -msgstr "typekonflikt for standardhandling: <%s> != <%s>" - -#: src/reader.c:248 -msgid "empty rule for typed nonterminal, and no action" -msgstr "tom regel for typet ikke-terminal, og ingen handling" - -#: src/reader.c:318 src/reader.c:332 src/reader.c:345 -#, c-format -msgid "only one %s allowed per rule" -msgstr "kun en %s tilladt per regel" - -#: src/reader.c:328 src/reader.c:343 -#, c-format -msgid "%s affects only GLR parsers" -msgstr "%s påvirker kun GLR-fortolkere" - -#: src/reader.c:330 -#, c-format -msgid "%s must be followed by positive number" -msgstr "%s skal følges af et positivt tal" - -#: src/reader.c:487 -msgid "no rules in the input grammar" -msgstr "ingen regler i inddatagrammatikken" - -#: src/reduce.c:242 -msgid "useless rule" -msgstr "ubrugelig regel" - -#: src/reduce.c:303 -#, c-format -msgid "useless nonterminal: %s" -msgstr "ubrugelig ikke-terminal: %s" - -#: src/reduce.c:351 -msgid "Useless nonterminals" -msgstr "Ubrugelige ikke-terminaler" - -#: src/reduce.c:364 -msgid "Terminals which are not used" -msgstr "Terminaler som ikke bruges" - -#: src/reduce.c:373 -msgid "Useless rules" -msgstr "Ubrugelige regler" - -#: src/reduce.c:389 -#, c-format -msgid "%d rule never reduced\n" -msgid_plural "%d rules never reduced\n" -msgstr[0] "%d regel reduceres aldrig\n" -msgstr[1] "%d regler reduceres aldrig\n" - -#: src/reduce.c:397 -#, c-format -msgid "%d useless nonterminal" -msgid_plural "%d useless nonterminals" -msgstr[0] "%d ubrugelig ikke-terminal" -msgstr[1] "%d ubrugelige ikke-terminaler" - -#: src/reduce.c:403 -msgid " and " -msgstr " og " - -#: src/reduce.c:406 -#, c-format -msgid "%d useless rule" -msgid_plural "%d useless rules" -msgstr[0] "%d ubrugelig regel" -msgstr[1] "%d ubrugelige regler" - -#: src/reduce.c:436 -#, c-format -msgid "start symbol %s does not derive any sentence" -msgstr "startsymbolet %s genererer ingen sætninger" - -#: src/scan-gram.l:160 -msgid "stray `,' treated as white space" -msgstr "Malplaceret \",\" behandlet som blanktegn" - -#: src/scan-gram.l:221 -#, c-format -msgid "invalid directive: %s" -msgstr "ugyldigt direktiv: %s" - -#: src/scan-gram.l:241 src/scan-gram.l:804 src/scan-gram.l:873 -#, c-format -msgid "integer out of range: %s" -msgstr "heltal uden for gyldigshedsområdet: %s" - -#: src/scan-gram.l:283 -#, c-format -msgid "invalid character: %s" -msgstr "ugyldigt tegn: %s" - -#: src/scan-gram.l:412 src/scan-gram.l:422 src/scan-gram.l:441 -#, c-format -msgid "invalid escape sequence: %s" -msgstr "ugyldig undvigesekvens: %s" - -#: src/scan-gram.l:446 -#, c-format -msgid "unrecognized escape sequence: %s" -msgstr "ukendt undvigesekvens: %s" - -#: src/scan-gram.l:534 -#, c-format -msgid "missing `{' in `%s'" -msgstr "manglende \"{\" i \"%s\"" - -#: src/scan-gram.l:774 -#, c-format -msgid "$$ of `%s' has no declared type" -msgstr "$$ for \"%s\" har ingen erklæret type" - -#: src/scan-gram.l:795 -#, c-format -msgid "$%d of `%s' has no declared type" -msgstr "$%d for \"%s\" har ingen erklæret type" - -#: src/scan-gram.l:840 src/scan-gram.l:908 -#, c-format -msgid "invalid value: %s" -msgstr "fejlagtig værdi: %s" - -#: src/scan-gram.l:996 -#, c-format -msgid "missing `%s' at end of file" -msgstr "manglende \"%s\" ved slutningen af filen" - -#: src/symlist.c:97 src/symlist.c:108 -msgid "invalid $ value" -msgstr "fejlagtig $-værdi" - -#: src/symtab.c:84 -#, c-format -msgid "type redeclaration for %s" -msgstr "gentagen typeerklæring for %s" - -#: src/symtab.c:101 src/symtab.c:119 -#, c-format -msgid "%s redeclaration for %s" -msgstr "gentagen %s-erklæring for %s" - -#: src/symtab.c:138 -#, c-format -msgid "redefining precedence of %s" -msgstr "redefinition af præcedens for %s" - -#: src/symtab.c:156 -#, c-format -msgid "symbol %s redefined" -msgstr "symbol %s redefineret" - -#: src/symtab.c:179 -#, c-format -msgid "redefining user token number of %s" -msgstr "redefinition af elementnummer for %s" - -#: src/symtab.c:206 -#, c-format -msgid "symbol %s is used, but is not defined as a token and has no rules" -msgstr "" -"symbol %s bruges, men er ikke defineret som et element og har ingen regler" - -#: src/symtab.c:231 -#, c-format -msgid "symbol `%s' used more than once as a literal string" -msgstr "symbol \"%s\" bruges mere end en gang som en bogstavelig streng" - -#: src/symtab.c:234 -#, c-format -msgid "symbol `%s' given more than one literal string" -msgstr "symbol \"%s\" har fået mere end én bogstavelig streng" - -#: src/symtab.c:270 -#, c-format -msgid "conflicting precedences for %s and %s" -msgstr "modstridige præcedenser mellem %s og %s" - -#: src/symtab.c:282 -#, c-format -msgid "conflicting associativities for %s (%s) and %s (%s)" -msgstr "modstridige associativiteter for %s (%s) og %s (%s)" - -#: src/symtab.c:367 -#, c-format -msgid "tokens %s and %s both assigned number %d" -msgstr "elementerne %s og %s har begge fået nummer %d" - -#: src/symtab.c:590 -#, c-format -msgid "the start symbol %s is undefined" -msgstr "startsymbolet %s er udefineret" - -#: src/symtab.c:594 -#, c-format -msgid "the start symbol %s is a token" -msgstr "startsymbolet %s er et element" - -#: lib/argmatch.c:135 -#, c-format -msgid "invalid argument %s for %s" -msgstr "ugyldigt argument %s til %s" - -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "flertydigt argument %s til %s" - -#: lib/argmatch.c:155 -msgid "Valid arguments are:" -msgstr "Gyldige argumenter er:" - -#: lib/bitset_stats.c:179 -#, c-format -msgid "%u bitset_allocs, %u freed (%.2f%%).\n" -msgstr "%u bitmængdeallokeringer, %u frigjort (%.2f%%).\n" - -#: lib/bitset_stats.c:182 -#, c-format -msgid "%u bitset_sets, %u cached (%.2f%%)\n" -msgstr "%u bitmængdeindstillinger, %u cachede (%.2f%%)\n" - -#: lib/bitset_stats.c:185 -#, c-format -msgid "%u bitset_resets, %u cached (%.2f%%)\n" -msgstr "%u bitmængdenulstillinger, %u cachede (%.2f%%)\n" - -#: lib/bitset_stats.c:188 -#, c-format -msgid "%u bitset_tests, %u cached (%.2f%%)\n" -msgstr "%u bitmængdetest, %u cachede (%.2f%%)\n" - -#: lib/bitset_stats.c:192 -#, c-format -msgid "%u bitset_lists\n" -msgstr "%u bitmængdelister\n" - -#: lib/bitset_stats.c:194 -msgid "count log histogram\n" -msgstr "kaldsloghistogram\n" - -#: lib/bitset_stats.c:197 -msgid "size log histogram\n" -msgstr "størrelsesloghistogram\n" - -#: lib/bitset_stats.c:200 -msgid "density histogram\n" -msgstr "densitetshistogram\n" - -#: lib/bitset_stats.c:214 -msgid "" -"Bitset statistics:\n" -"\n" -msgstr "" -"Bitmængdestatistik:\n" -"\n" - -#: lib/bitset_stats.c:217 -#, c-format -msgid "Accumulated runs = %u\n" -msgstr "Akkumulerede kørsler = %u\n" - -#: lib/bitset_stats.c:261 lib/bitset_stats.c:266 -msgid "Could not read stats file." -msgstr "Kunne ikke læse statistikfil." - -#: lib/bitset_stats.c:263 -msgid "Bad stats file size.\n" -msgstr "Dårlig statistikfilstørrelse.\n" - -#: lib/bitset_stats.c:289 lib/bitset_stats.c:291 -msgid "Could not write stats file." -msgstr "Kunne ikke skrive statistikfil." - -#: lib/bitset_stats.c:294 -msgid "Could not open stats file for writing." -msgstr "Kunne ikke åbne statistikfil for skrivning." - -#: lib/getopt.c:688 lib/getopt.c:700 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: flaget \"%s\" er flertydigt\n" - -#: lib/getopt.c:733 lib/getopt.c:737 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: flaget \"--%s\" tager intet argument\n" - -#: lib/getopt.c:746 lib/getopt.c:751 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: flaget \"%c%s\" tager intet argument\n" - -#: lib/getopt.c:787 lib/getopt.c:800 lib/getopt.c:1089 lib/getopt.c:1102 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: flaget \"%s\" behøver et argument\n" - -#: lib/getopt.c:838 lib/getopt.c:841 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: ukendt flag \"--%s\"\n" - -#: lib/getopt.c:849 lib/getopt.c:852 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: ukendt flag \"%c%s\"\n" - -#: lib/getopt.c:899 lib/getopt.c:902 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: ikke tilladt flag -- %c\n" - -#: lib/getopt.c:908 lib/getopt.c:911 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: ugyldigt flag --%c\n" - -#: lib/getopt.c:958 lib/getopt.c:969 lib/getopt.c:1155 lib/getopt.c:1168 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: flaget behøver et argument -- %c\n" - -#: lib/getopt.c:1021 lib/getopt.c:1032 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: flaget \"-W %s\" er flertydigt\n" - -#: lib/getopt.c:1056 lib/getopt.c:1068 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: flaget \"-W %s\" tager intet argument\n" - -#: lib/obstack.c:487 lib/obstack.c:490 lib/xmalloc.c:63 -msgid "memory exhausted" -msgstr "hukommelsen opbrugt" - -# Når vi går over til Unicode mere allmænt måske vi bør oversættta båda disse -# med U+201D (RIGHT DOUBLE QUOTATION MARK) på svenska. Eller? -# -#: lib/quotearg.c:236 -msgid "`" -msgstr "\"" - -#: lib/quotearg.c:237 -msgid "'" -msgstr "\"" - -#: lib/subpipe.c:187 -#, c-format -msgid "subsidiary program `%s' could not be invoked" -msgstr "hjælpeprogrammet \"%s\" kunne ikke startes" - -#: lib/subpipe.c:189 -#, c-format -msgid "subsidiary program `%s' not found" -msgstr "hjælpeprogrammet \"%s\" ikke fundet" - -#: lib/subpipe.c:191 -#, c-format -msgid "subsidiary program `%s' failed" -msgstr "hjælpeprogrammet \"%s\" fejlede" - -#: lib/subpipe.c:192 -#, c-format -msgid "subsidiary program `%s' failed (exit status %d)" -msgstr "hjælpeprogrammet \"%s\" fejlede med afslutningskode %d" - -#: lib/timevar.c:476 -msgid "" -"\n" -"Execution times (seconds)\n" -msgstr "" -"\n" -"Udførelsestider (sekunder)\n" - -#: lib/timevar.c:526 -msgid " TOTAL :" -msgstr " TOTALT :" - -#: lib/timevar.c:562 -#, c-format -msgid "time in %s: %ld.%06ld (%ld%%)\n" -msgstr "tid i %s: %ld.%06ld (%ld%%)\n" diff --git a/po/de.po b/po/de.po deleted file mode 100644 index 697c1709..00000000 --- a/po/de.po +++ /dev/null @@ -1,1011 +0,0 @@ -# German translation for message of GNU bison. -# Copyright (C) 1996 Free Software Foundation, Inc. -# Ulrich Drepper , 1996. -# Michael Piefel , 2002. -# -msgid "" -msgstr "" -"Project-Id-Version: bison 1.875\n" -"Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2003-08-25 17:14+0200\n" -"PO-Revision-Date: 2003-01-02 12:38:45+0100\n" -"Last-Translator: Michael Piefel \n" -"Language-Team: German \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8-bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" - -#: src/complain.c:56 lib/error.c:135 lib/error.c:163 -msgid "Unknown system error" -msgstr "Unbekannter Systemfehler" - -#: src/complain.c:79 src/complain.c:94 -msgid "warning: " -msgstr "Warnung: " - -#: src/complain.c:150 src/complain.c:166 -msgid "fatal error: " -msgstr "fataler Fehler: " - -#: src/conflicts.c:75 -#, c-format -msgid " Conflict between rule %d and token %s resolved as shift" -msgstr "" -" Konflikt zwischen Regel %d and Token %s wurde durch Schieben gelöst" - -#: src/conflicts.c:83 -#, c-format -msgid " Conflict between rule %d and token %s resolved as reduce" -msgstr "" -" Konflikt zwischen Regel %d and Token %s wurde durch Reduzierung gelöst" - -#: src/conflicts.c:90 -#, c-format -msgid " Conflict between rule %d and token %s resolved as an error" -msgstr "" -" Konflikt zwischen Regel %d and Token %s wurde als Fehler betrachtet" - -#: src/conflicts.c:398 -#, c-format -msgid "conflicts: %d shift/reduce, %d reduce/reduce\n" -msgstr "Konflikte: %d Schiebe/Reduziere, %d Reduziere/Reduziere\n" - -#: src/conflicts.c:401 -#, c-format -msgid "conflicts: %d shift/reduce\n" -msgstr "Konflikte: %d Schiebe/Reduziere\n" - -#: src/conflicts.c:403 -#, c-format -msgid "conflicts: %d reduce/reduce\n" -msgstr "Konflikte: %d Reduziere/Reduziere\n" - -#: src/conflicts.c:421 -#, c-format -msgid "State %d " -msgstr "Zustand %d " - -#: src/conflicts.c:498 -#, c-format -msgid "expected %d shift/reduce conflict" -msgid_plural "expected %d shift/reduce conflicts" -msgstr[0] "erwartete %d Schiebe/Reduziere-Konflikt" -msgstr[1] "erwartete %d Schiebe/Reduziere-Konflikte" - -#: src/conflicts.c:503 -msgid "expected 0 reduce/reduce conflicts" -msgstr "erwartete 0 Reduziere/Reduziere-Konflikte" - -#: src/files.c:99 -#, c-format -msgid "cannot open file `%s'" -msgstr "kann Datei »%s« nicht öffnen" - -#: src/files.c:115 -msgid "I/O error" -msgstr "E/A-Fehler" - -#: src/files.c:118 -msgid "cannot close file" -msgstr "kann Datei nicht schließen" - -#: src/files.c:336 -#, c-format -msgid "conflicting outputs to file %s" -msgstr "widersprüchliche Ausgaben in Datei %s" - -#: src/getargs.c:186 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "»%s --help« gibt weitere Informationen.\n" - -#: src/getargs.c:192 -msgid "GNU bison generates parsers for LALR(1) grammars.\n" -msgstr "GNU bison generiert Parser für LALR(1)-Grammatiken.\n" - -#: src/getargs.c:196 -#, c-format -msgid "Usage: %s [OPTION]... FILE\n" -msgstr "Aufruf: %s [OPTION]... DATEI\n" - -#: src/getargs.c:200 -msgid "" -"If a long option shows an argument as mandatory, then it is mandatory\n" -"for the equivalent short option also. Similarly for optional arguments.\n" -msgstr "" -"Wenn eine lange Option ein Argument als erforderlich anzeigt, dann ist es " -"auch\n" -"für die äquivalente kurze Option erforderlich. Ähnlich für optionale " -"Argumente.\n" - -#: src/getargs.c:206 -msgid "" -"Operation modes:\n" -" -h, --help display this help and exit\n" -" -V, --version output version information and exit\n" -" -y, --yacc emulate POSIX yacc\n" -msgstr "" -"Arbeitsmodi:\n" -" -h, --help diese Hilfe anzeigen und beenden.\n" -" -v, --version Versionsinformation anzeigen und beenden.\n" -" -y, --yacc POSIX' yacc emulieren\n" - -#: src/getargs.c:213 -msgid "" -"Parser:\n" -" -S, --skeleton=FILE specify the skeleton to use\n" -" -t, --debug instrument the parser for debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n" -" -l, --no-lines don't generate `#line' directives\n" -" -n, --no-parser generate the tables only\n" -" -k, --token-table include a table of token names\n" -msgstr "" -"Parser:\n" -" -S, --skeleton=DATEI zu benutzende Skelettdatei angeben\n" -" -t, --debug den Parser auf Debugging-Unterstützung " -"vorbereiten\n" -" --locations Standortberechnung ermöglichen\n" -" -p, --name-prefix=PRÄFIX PRÄFIX vor alle externen Symbole setzen\n" -" -l, --no-lines keine »#line«-Direktiven erzeugen\n" -" -n, --no-parser nur die Tabellen generieren\n" -" -k, --token-table einer Tabellen der Token-Namen mit " -"einschließen\n" - -#: src/getargs.c:225 -msgid "" -"Output:\n" -" -d, --defines also produce a header file\n" -" -r, --report=THINGS also produce details on the automaton\n" -" -v, --verbose same as `--report=state'\n" -" -b, --file-prefix=PREFIX specify a PREFIX for output files\n" -" -o, --output=FILE leave output to FILE\n" -" -g, --graph also produce a VCG description of the " -"automaton\n" -msgstr "" -"Ausgabe:\n" -" -d, --defines auch eine Header-Datei herstellen\n" -" -r, --report=DINGE auch Details des Automaten ausgeben\n" -" -v, --verbose auch eine Erklärung des Automaten herstellen\n" -" -b, --file-prefix=PRÄFIX einen PRÄFIX für Ausgabe-Dateien angeben\n" -" -o, --output=DATEI Ausgabe in DATEI schreiben\n" -" -g, --graph auch eine VCG-Beschreibung des Automaten " -"herstellen\n" - -#: src/getargs.c:236 -msgid "" -"THINGS is a list of comma separated words that can include:\n" -" `state' describe the states\n" -" `itemset' complete the core item sets with their closure\n" -" `lookahead' explicitly associate lookaheads to items\n" -" `solved' describe shift/reduce conflicts solving\n" -" `all' include all the above information\n" -" `none' disable the report\n" -msgstr "" -"DINGE ist eine Liste kommagetrennter Wörter aus:\n" -" »state« die Zustänge beschreiben\n" -" »itemset« die Kernsybolmengen mit ihrem Abschluss vervollständigen\n" -" »lookahead« explizit Vorschau mit Symbolen verbinden\n" -" »solved« Schiebe-/Reduzier-Konfliktlösung beschreiben\n" -" »all« alle oben genannten Informationen\n" -" »none« den Report abschalten\n" - -#: src/getargs.c:247 -msgid "Report bugs to .\n" -msgstr "" -"Berichten Sie Fehler (auf Englisch, mit LC_ALL=C) an .\n" - -#: src/getargs.c:264 -#, c-format -msgid "bison (GNU Bison) %s" -msgstr "bison (GNU Bison) %s" - -#: src/getargs.c:266 -msgid "Written by Robert Corbett and Richard Stallman.\n" -msgstr "Geschrieben von Robert Corbett und Richard Stallman.\n" - -#: src/getargs.c:270 -#, c-format -msgid "Copyright (C) %d Free Software Foundation, Inc.\n" -msgstr "Copyright © %d Free Software Foundation, Inc.\n" - -#: src/getargs.c:272 -msgid "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"Dies ist freie Software; die Kopierbedingungen stehen in den Quellen. Es\n" -"gibt keine Garantie; auch nicht für VERKAUFBARKEIT oder FÜR SPEZIELLE " -"ZWECKE.\n" - -#: src/getargs.c:438 -#, c-format -msgid "missing operand after `%s'" -msgstr "fehlender Operand nach »%s«" - -#: src/getargs.c:440 -#, c-format -msgid "extra operand `%s'" -msgstr "zusätzlicher Operand »%s«" - -#: src/gram.c:139 -msgid "empty" -msgstr "leer" - -#: src/gram.c:233 -msgid "Grammar" -msgstr "Grammatik" - -#: src/gram.c:321 src/reduce.c:394 -msgid "warning" -msgstr "Warnung" - -#: src/main.c:124 -msgid "rule never reduced because of conflicts" -msgstr "Regel nie reduziert wegen Konflikten" - -#: src/parse-gram.y:353 -msgid "POSIX forbids declarations in the grammar" -msgstr "POSIX verbietet Deklarationen in der Grammatik" - -#: src/parse-gram.y:476 -msgid "missing identifier in parameter declaration" -msgstr "fehlender Bezeichner in Parameterdeklaration" - -#: src/print.c:49 -#, c-format -msgid " type %d is %s\n" -msgstr " Typ %d ist %s\n" - -#: src/print.c:165 -#, c-format -msgid "shift, and go to state %d\n" -msgstr "schiebe und gehe zu Zustand %d über\n" - -#: src/print.c:167 -#, c-format -msgid "go to state %d\n" -msgstr "gehe zu Zustand %d über\n" - -#: src/print.c:204 -msgid "error (nonassociative)\n" -msgstr "Fehler (nicht assoziativ)\n" - -#: src/print.c:292 -#, c-format -msgid "reduce using rule %d (%s)" -msgstr "reduziere mit Regel %d (%s)" - -#: src/print.c:294 -msgid "accept" -msgstr "annehmen" - -#: src/print.c:325 src/print.c:391 -msgid "$default" -msgstr "$default" - -#: src/print.c:420 -#, c-format -msgid "state %d" -msgstr "Zustand %d" - -#: src/print.c:456 -msgid "Terminals, with rules where they appear" -msgstr "Terminale und die Regeln, in denen sie verwendet werden" - -#: src/print.c:483 -msgid "Nonterminals, with rules where they appear" -msgstr "Nicht-Terminal und die Regeln, in denen sie verwendet werden" - -#: src/print.c:512 -msgid " on left:" -msgstr " auf der linken Seite:" - -#: src/print.c:527 -msgid " on right:" -msgstr " auf der rechten Seite:" - -#: src/print.c:555 -msgid "Rules never reduced" -msgstr "niemals reduzierte Regeln" - -#: src/reader.c:53 -#, c-format -msgid "multiple %s declarations" -msgstr "mehr als eine %s-Deklaration" - -#: src/reader.c:115 -#, c-format -msgid "result type clash on merge function %s: <%s> != <%s>" -msgstr "Rückgabetyp-Konflikt in merge-Funktion %s: <%s> != <%s>" - -#: src/reader.c:213 -#, c-format -msgid "rule given for %s, which is a token" -msgstr "Regel für %s vorhanden, welches aber ein Token ist" - -#: src/reader.c:242 -#, c-format -msgid "type clash on default action: <%s> != <%s>" -msgstr "Typkonflikt bei Default-Aktion: <%s> != <%s>) " - -#: src/reader.c:248 -msgid "empty rule for typed nonterminal, and no action" -msgstr "leere Regel für Nicht-Terminal mit Typ und keine Aktion" - -#: src/reader.c:318 src/reader.c:332 src/reader.c:345 -#, c-format -msgid "only one %s allowed per rule" -msgstr "nur ein %s pro Regel erlaubt" - -#: src/reader.c:328 src/reader.c:343 -#, c-format -msgid "%s affects only GLR parsers" -msgstr "%s betrifft nur GLR-Parser" - -#: src/reader.c:330 -#, c-format -msgid "%s must be followed by positive number" -msgstr "%s muss von positiver Zahl gefolgt sein" - -#: src/reader.c:487 -msgid "no rules in the input grammar" -msgstr "Eingabegrammatik enthält keine Regeln" - -#: src/reduce.c:242 -msgid "useless rule" -msgstr "nutzlose Regel" - -#: src/reduce.c:303 -#, c-format -msgid "useless nonterminal: %s" -msgstr "nutzloses Nicht-Terminal: %s" - -#: src/reduce.c:351 -msgid "Useless nonterminals" -msgstr "Nutzlose Nicht-Terminale" - -#: src/reduce.c:364 -msgid "Terminals which are not used" -msgstr "Nicht genutzte Terminale" - -#: src/reduce.c:373 -msgid "Useless rules" -msgstr "Nutzlose Regeln" - -#: src/reduce.c:389 -#, c-format -msgid "%d rule never reduced\n" -msgid_plural "%d rules never reduced\n" -msgstr[0] "%d Regel wurde niemals reduziert\n" -msgstr[1] "%d Regeln wurden niemals reduziert\n" - -#: src/reduce.c:397 -#, c-format -msgid "%d useless nonterminal" -msgid_plural "%d useless nonterminals" -msgstr[0] "%d nutzloses Nicht-Terminal" -msgstr[1] "%d nutzlose Nicht-Terminale" - -#: src/reduce.c:403 -msgid " and " -msgstr " und " - -#: src/reduce.c:406 -#, c-format -msgid "%d useless rule" -msgid_plural "%d useless rules" -msgstr[0] "%d nutzlose Regel" -msgstr[1] "%d nutzlose Regeln" - -#: src/reduce.c:436 -#, c-format -msgid "start symbol %s does not derive any sentence" -msgstr "es lassen sich keine Sätze vom Startsymbol %s ableiten" - -#: src/scan-gram.l:160 -msgid "stray `,' treated as white space" -msgstr "überzähliges »,« als Freiraum betrachtet" - -#: src/scan-gram.l:221 -#, c-format -msgid "invalid directive: %s" -msgstr "ungültige Direktive: %s" - -#: src/scan-gram.l:241 src/scan-gram.l:804 src/scan-gram.l:873 -#, c-format -msgid "integer out of range: %s" -msgstr "Ganzzahl außerhalb des Wertebereichs: %s" - -#: src/scan-gram.l:283 -#, c-format -msgid "invalid character: %s" -msgstr "ungültiges Zeichen: %s" - -#: src/scan-gram.l:412 src/scan-gram.l:422 src/scan-gram.l:441 -#, c-format -msgid "invalid escape sequence: %s" -msgstr "unzulässiges Fluchtzeichen: %s" - -#: src/scan-gram.l:446 -#, c-format -msgid "unrecognized escape sequence: %s" -msgstr "unbekanntes Fluchtzeichen: %s" - -#: src/scan-gram.l:534 -#, c-format -msgid "missing `{' in `%s'" -msgstr "fehlende »{« in »%s«" - -#: src/scan-gram.l:774 -#, c-format -msgid "$$ of `%s' has no declared type" -msgstr "$$ von »%s« hat keinen deklarierten Typ" - -#: src/scan-gram.l:795 -#, c-format -msgid "$%d of `%s' has no declared type" -msgstr "$%d von »%s« hat keinen deklarierten Typ" - -#: src/scan-gram.l:840 src/scan-gram.l:908 -#, c-format -msgid "invalid value: %s" -msgstr "unzulässiger Wert: %s" - -#: src/scan-gram.l:996 -#, c-format -msgid "missing `%s' at end of file" -msgstr "fehlendes »%s« am Ende der Datei" - -#: src/symlist.c:97 src/symlist.c:108 -msgid "invalid $ value" -msgstr "unzulässiger $-Wert" - -#: src/symtab.c:84 -#, c-format -msgid "type redeclaration for %s" -msgstr "erneute Deklaration des Typs für %s" - -#: src/symtab.c:101 src/symtab.c:119 -#, c-format -msgid "%s redeclaration for %s" -msgstr "%s erneute Deklaration für %s" - -#: src/symtab.c:138 -#, c-format -msgid "redefining precedence of %s" -msgstr "Vorrang von %s wird erneut definiert" - -#: src/symtab.c:156 -#, c-format -msgid "symbol %s redefined" -msgstr "Symbol %s noch einmal definiert" - -#: src/symtab.c:179 -#, c-format -msgid "redefining user token number of %s" -msgstr "Nutzertokennummer von %s erneut definiert" - -#: src/symtab.c:206 -#, c-format -msgid "symbol %s is used, but is not defined as a token and has no rules" -msgstr "" -"Symbol %s wird benutzt, ist aber nicht als Token definiert und hat keine " -"Regel" - -#: src/symtab.c:231 -#, c-format -msgid "symbol `%s' used more than once as a literal string" -msgstr "Symbol »%s« wird mehr als einmal als literale Zeichenkette benutzt" - -#: src/symtab.c:234 -#, c-format -msgid "symbol `%s' given more than one literal string" -msgstr "Symbol »%s« wird mehr als eine literale Zeichenkette gegeben" - -#: src/symtab.c:270 -#, c-format -msgid "conflicting precedences for %s and %s" -msgstr "Vorrang für %s und %s widersprechen sich" - -#: src/symtab.c:282 -#, c-format -msgid "conflicting associativities for %s (%s) and %s (%s)" -msgstr "Assoziativitäts-Werte für %s (%s) und %s (%s) widersprechen sich" - -#: src/symtab.c:367 -#, c-format -msgid "tokens %s and %s both assigned number %d" -msgstr "Token %s und %s haben die selbe Nummer %d" - -#: src/symtab.c:590 -#, c-format -msgid "the start symbol %s is undefined" -msgstr "das Startsymbol %s ist undefiniert" - -#: src/symtab.c:594 -#, c-format -msgid "the start symbol %s is a token" -msgstr "das Startsymbol %s ist ein Token" - -#: lib/argmatch.c:135 -#, c-format -msgid "invalid argument %s for %s" -msgstr "unzulässiges Argument %s für %s" - -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "mehrdeutiges Argument %s für %s" - -#: lib/argmatch.c:155 -msgid "Valid arguments are:" -msgstr "Gültige Argumente sind:" - -#: lib/bitset_stats.c:179 -#, c-format -msgid "%u bitset_allocs, %u freed (%.2f%%).\n" -msgstr "%u bitset_allocs, %u freigegeben (%.2f%%).\n" - -#: lib/bitset_stats.c:182 -#, c-format -msgid "%u bitset_sets, %u cached (%.2f%%)\n" -msgstr "%u bitset_sets, %u zwischengespeichert (%.2f%%)\n" - -#: lib/bitset_stats.c:185 -#, c-format -msgid "%u bitset_resets, %u cached (%.2f%%)\n" -msgstr "%u bitset_resets, %u zwischengespeichert (%.2f%%)\n" - -#: lib/bitset_stats.c:188 -#, c-format -msgid "%u bitset_tests, %u cached (%.2f%%)\n" -msgstr "%u bitset_tests, %u zwischengespeichert (%.2f%%)\n" - -#: lib/bitset_stats.c:192 -#, c-format -msgid "%u bitset_lists\n" -msgstr "%u bitset_lists\n" - -#: lib/bitset_stats.c:194 -msgid "count log histogram\n" -msgstr "Zähler-Histogramm\n" - -#: lib/bitset_stats.c:197 -msgid "size log histogram\n" -msgstr "Größe-Histogramm\n" - -#: lib/bitset_stats.c:200 -msgid "density histogram\n" -msgstr "Dichte-Histogramm\n" - -#: lib/bitset_stats.c:214 -msgid "" -"Bitset statistics:\n" -"\n" -msgstr "" -"Bitset-Statistiken:\n" -"\n" - -#: lib/bitset_stats.c:217 -#, c-format -msgid "Accumulated runs = %u\n" -msgstr "Gesammelte Durchläufe = %u\n" - -#: lib/bitset_stats.c:261 lib/bitset_stats.c:266 -msgid "Could not read stats file." -msgstr "Konnte Statistik-Datei nicht lesen." - -#: lib/bitset_stats.c:263 -msgid "Bad stats file size.\n" -msgstr "Ungültige Statistik-Datei-Größe.\n" - -#: lib/bitset_stats.c:289 lib/bitset_stats.c:291 -msgid "Could not write stats file." -msgstr "Konnte Statistik-Datei nicht schreiben." - -#: lib/bitset_stats.c:294 -msgid "Could not open stats file for writing." -msgstr "Konnte Statistik-Datei nicht zum Schreiben öffnen." - -#: lib/getopt.c:688 lib/getopt.c:700 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: Option »%s« ist mehrdeutig\n" - -#: lib/getopt.c:733 lib/getopt.c:737 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: Option »--%s« erlaubt kein Argument\n" - -#: lib/getopt.c:746 lib/getopt.c:751 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: Option »%c%s« erlaubt kein Argument\n" - -#: lib/getopt.c:787 lib/getopt.c:800 lib/getopt.c:1089 lib/getopt.c:1102 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: Option »%s« erfordert ein Argument\n" - -#: lib/getopt.c:838 lib/getopt.c:841 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: unbekannte Option »--%s«\n" - -#: lib/getopt.c:849 lib/getopt.c:852 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: unbekannte Option »%c%s«\n" - -#: lib/getopt.c:899 lib/getopt.c:902 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: ungültige Option -- %c\n" - -#: lib/getopt.c:908 lib/getopt.c:911 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: ungültige Option -- %c\n" - -#: lib/getopt.c:958 lib/getopt.c:969 lib/getopt.c:1155 lib/getopt.c:1168 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: Option erfordert ein Argument -- %c\n" - -#: lib/getopt.c:1021 lib/getopt.c:1032 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: Option »-W %s« ist mehrdeutig\n" - -#: lib/getopt.c:1056 lib/getopt.c:1068 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: Option »-W %s« erlaubt kein Argument\n" - -#: lib/obstack.c:487 lib/obstack.c:490 lib/xmalloc.c:63 -msgid "memory exhausted" -msgstr "Speicher ausgeschöpft" - -#: lib/quotearg.c:236 -msgid "`" -msgstr "»" - -#: lib/quotearg.c:237 -msgid "'" -msgstr "«" - -#: lib/subpipe.c:187 -#, c-format -msgid "subsidiary program `%s' could not be invoked" -msgstr "untergeordnetes Programm »%s« konnte nicht aufgerufen werden" - -#: lib/subpipe.c:189 -#, c-format -msgid "subsidiary program `%s' not found" -msgstr "untergeordnetes Programm »%s« nicht gefunden" - -#: lib/subpipe.c:191 -#, c-format -msgid "subsidiary program `%s' failed" -msgstr "untergeordnetes Programm »%s« fehlgeschlagen" - -#: lib/subpipe.c:192 -#, c-format -msgid "subsidiary program `%s' failed (exit status %d)" -msgstr "untergeordnetes Programm »%s« fehlgeschlagen (Rückgabewert %d)" - -#: lib/timevar.c:476 -msgid "" -"\n" -"Execution times (seconds)\n" -msgstr "" -"\n" -"Ausführungszeiten (Sekunden)\n" - -#: lib/timevar.c:526 -msgid " TOTAL :" -msgstr " ZUSAMMEN :" - -#: lib/timevar.c:562 -#, c-format -msgid "time in %s: %ld.%06ld (%ld%%)\n" -msgstr "Zeit in %s: %ld.%06ld (%ld%%)\n" - -#~ msgid "%d shift/reduce conflict" -#~ msgid_plural "%d shift/reduce conflicts" -#~ msgstr[0] "%d Schiebe/Reduziere-Konflikt" -#~ msgstr[1] "%d Schiebe/Reduziere-Konflikte" - -#~ msgid "and" -#~ msgstr "und" - -#~ msgid "conflicts: " -#~ msgstr "Konflikte: " - -#~ msgid "State %d contains " -#~ msgstr "Zustand %d enthält " - -#~ msgid "too many gotos (max %d)" -#~ msgstr "zu viele Gotos (max %d)" - -#~ msgid "too many symbols (tokens plus nonterminals); maximum %d" -#~ msgstr "zu viele Symbole (Token plus Nicht-Terminale); Maximum %d" - -#~ msgid ": unexpected end of file in a comment\n" -#~ msgstr ": Datei endet unerwartet innerhalb eines Kommentars\n" - -#~ msgid ": unexpected end of file in a string\n" -#~ msgstr ": Datei endet unerwartet innerhalb einer Zeichenkette\n" - -#~ msgid ": unexpected end of file in a character\n" -#~ msgstr ": Datei endet unerwartet innerhalb eines Zeichens\n" - -#~ msgid ": unexpected end of file in a braced code\n" -#~ msgstr ": Datei endet unerwartet innerhalb geklammerten Programmtexts\n" - -#~ msgid ": unexpected end of file in a prologue\n" -#~ msgstr ": Datei endet unerwartet innerhalb eines Prologs\n" - -#~ msgid "%s is invalid" -#~ msgstr "%s ist unzulässig" - -#~ msgid "too many states (max %d)" -#~ msgstr "zu viele Zustände (max %d)" - -#~ msgid "%s: no grammar file given\n" -#~ msgstr "%s: keine Grammatik-Datei angegeben\n" - -#~ msgid "%s: extra arguments ignored after `%s'\n" -#~ msgstr "%s: zusätzliche Argumente nach »%s« werden ignoriert\n" - -#~ msgid "two @prec's in a row" -#~ msgstr "zwei @prec-Anweisungen nacheinander" - -#~ msgid "%%dprec affects only GLR parsers" -#~ msgstr "%%dprec betrifft nur GLR-Parser" - -#~ msgid "only one %%dprec allowed per rule" -#~ msgstr "nur ein %%dprec pro Regel erlaubt" - -#~ msgid "state_list_append (state = %d, symbol = %d (%s))\n" -#~ msgstr "state_list_append (Zustand = %d, Symbol = %d (%s))\n" - -#~ msgid "Entering new_itemsets, state = %d\n" -#~ msgstr "Betrete new_itemsets, Zustand = %d\n" - -#~ msgid "Entering get_state, symbol = %d (%s)\n" -#~ msgstr "Betrete get_state, Symbol = %d (%s)\n" - -#~ msgid "Exiting get_state => %d\n" -#~ msgstr "Verlasse get_state => %d\n" - -#~ msgid "Entering append_states, state = %d\n" -#~ msgstr "Betrete append_states, Zustand = %d\n" - -#~ msgid "Processing state %d (reached by %s)\n" -#~ msgstr "Verarbeite Zustand %d (erreicht von %s)\n" - -#~ msgid "undefined associativity" -#~ msgstr "undefinierte Assoziativität" - -#~ msgid "Closure: %s\n" -#~ msgstr "Abschluss: %s\n" - -#~ msgid " (rule %d)\n" -#~ msgstr " (Regel %d)\n" - -#~ msgid "input" -#~ msgstr "Eingabe" - -#~ msgid "output" -#~ msgstr "Ausgabe" - -#~ msgid "" -#~ "Variables\n" -#~ "---------\n" -#~ "\n" -#~ msgstr "" -#~ "Variablen\n" -#~ "---------\n" -#~ "\n" - -#~ msgid "Value Sprec Sassoc Tag\n" -#~ msgstr "Wert Spräz Sassoz Tag\n" - -#~ msgid "" -#~ "Rules\n" -#~ "-----\n" -#~ "\n" -#~ msgstr "" -#~ "Regeln\n" -#~ "-----\n" -#~ "\n" - -#~ msgid "" -#~ "Num (Prec, Assoc, Useful, Ritem Range) Lhs -> Rhs (Ritem range) [Num]\n" -#~ msgstr "" -#~ "Num (Präz, Assoz, Nützl., Ritem-Ber.) LS -> RS (Ritem-Ber.) [Num]\n" - -#~ msgid "" -#~ "Rules interpreted\n" -#~ "-----------------\n" -#~ "\n" -#~ msgstr "" -#~ "Regeln interpretiert\n" -#~ "-----------------\n" -#~ "\n" - -#~ msgid "Lookaheads: BEGIN\n" -#~ msgstr "Vorschau: ANFANG\n" - -#~ msgid "State %d: %d lookaheads\n" -#~ msgstr "Zustand %d: %d Vorschauen\n" - -#~ msgid " on %d (%s) -> rule %d\n" -#~ msgstr " auf %d (%s) -> Regel %d\n" - -#~ msgid "Lookaheads: END\n" -#~ msgstr "Vorschau: ENDE\n" - -#~ msgid "relation_transpose: input\n" -#~ msgstr "relation_transpose: Eingabe\n" - -#~ msgid "relation_transpose: output\n" -#~ msgstr "relation_transpose: Ausgabe\n" - -#~ msgid "reduce" -#~ msgstr "durch Reduzierung gelöst" - -#~ msgid "shift" -#~ msgstr "durch Schieben gelöst" - -#~ msgid "%s contains " -#~ msgstr "%s enthält " - -#~ msgid "`%s' is no longer supported" -#~ msgstr "»%s« wird nicht länger unterstützt" - -#~ msgid "unexpected `/' found and ignored" -#~ msgstr "»/« wird hier nicht erwartet und wird deshalb ignoriert" - -#~ msgid "unterminated comment" -#~ msgstr "unbeendeter Kommentar" - -#~ msgid "unescaped newline in constant" -#~ msgstr "nicht maskiertes Zeilenendezeichen in Konstante" - -#~ msgid "octal value outside range 0...255: `\\%o'" -#~ msgstr "oktaler Zahlenwert außerhalb des Bereichs 0...255: »\\%o«" - -#~ msgid "hexadecimal value above 255: `\\x%x'" -#~ msgstr "hexadezimaler Zahlenwert größer als 255: »\\x%x«" - -# Oder soll man den Begriff "Escapezeichen" verwenden? -#~ msgid "unknown escape sequence: `\\' followed by `%s'" -#~ msgstr "unbekanntes Escapezeichen: »\\« gefolgt von »%s«" - -#~ msgid "unterminated type name at end of file" -#~ msgstr "unerwarteter Typname am Ende der Datei" - -#~ msgid "unterminated type name" -#~ msgstr "unerwarteter Typname" - -#~ msgid "use \"...\" for multi-character literal tokens" -#~ msgstr "für Literal mit mehreren Zeichen bitte \"...\" verwenden" - -#~ msgid "`%s' supports no argument: %s" -#~ msgstr "»%s« unterstützt kein Argument: %s" - -#~ msgid "`%s' requires an argument" -#~ msgstr "die Option »%s« erfordert ein Argument" - -#~ msgid " %-4s\terror (nonassociative)\n" -#~ msgstr " %-4s\tFehler (nicht assoziativ)\n" - -#~ msgid "" -#~ " $default\treduce using rule %d (%s)\n" -#~ "\n" -#~ msgstr "" -#~ " $default\treduziere mit Regel %d (%s)\n" -#~ "\n" - -#~ msgid " %-4s\t[reduce using rule %d (%s)]\n" -#~ msgstr " %-4s\t[reduziere mit Regel %d (%s)]\n" - -#~ msgid " %-4s\treduce using rule %d (%s)\n" -#~ msgstr " %-4s\treduziere mit Regel %d (%s)\n" - -#~ msgid " $default\treduce using rule %d (%s)\n" -#~ msgstr " $default\treduziere mit Regel %d (%s)\n" - -#~ msgid " $default\taccept\n" -#~ msgstr " $default\takzeptiere\n" - -#~ msgid " NO ACTIONS\n" -#~ msgstr " KEINE AKTIONEN\n" - -#~ msgid "Number, Line, Rule" -#~ msgstr "Nummer, Zeile, Regel" - -#~ msgid " %3d %3d %s ->" -#~ msgstr " %3d %3d %s ->" - -#~ msgid " Skipping to next \\n" -#~ msgstr " Überspringe Zeichen bis zum nächsten \\n" - -#~ msgid " Skipping to next %c" -#~ msgstr " Überspringe Zeichen bis zum nächten %c" - -#~ msgid "unterminated string" -#~ msgstr "unbeendete Zeichenkette" - -#~ msgid "unterminated `%{' definition" -#~ msgstr "unbeendete »%{«-Definition" - -#~ msgid "Premature EOF after %s" -#~ msgstr "Vorzeitiges EOF nach %s" - -#~ msgid "`%s' is invalid in %s" -#~ msgstr "»%s« ist in %s nicht erlaubt" - -#~ msgid "invalid %s declaration" -#~ msgstr "ungültige %s-Deklaration" - -#~ msgid "%type declaration has no " -#~ msgstr "%type-Deklaration hat keinen " - -#~ msgid "invalid %%type declaration due to item: %s" -#~ msgstr "ungültige %%type-Deklaration wegen: %s" - -#~ msgid "invalid text (%s) - number should be after identifier" -#~ msgstr "unzulässiger Text (%s) - Zahl sollte nach Bezeichner kommen" - -#~ msgid "unexpected item: %s" -#~ msgstr "unerwartetes Symbol: %s" - -#~ msgid "unmatched %s" -#~ msgstr "%s ohne Gegenstück" - -#~ msgid "argument of %%expect is not an integer" -#~ msgstr "Argument von %%expect ist keine ganze Zahl" - -#~ msgid "unrecognized item %s, expected an identifier" -#~ msgstr "unerwartetes Symbol %s, hier wird ein Bezeichner erwartet" - -#~ msgid "expected string constant instead of %s" -#~ msgstr "hier wird eine Zeichenkette erwartet, nicht %s" - -#~ msgid "no input grammar" -#~ msgstr "keine Eingabe-Grammatik" - -#~ msgid "unknown character: %s" -#~ msgstr "unbekanntes Zeichen: %s" - -#~ msgid "ill-formed rule: initial symbol not followed by colon" -#~ msgstr "" -#~ "falsch geformte Regel: führendes Symbol wird nicht von einem Semikolon " -#~ "gefolgt" - -#~ msgid "grammar starts with vertical bar" -#~ msgstr "Grammatik fängt mit einem vertikalen Strich (»|«) an" - -#~ msgid "previous rule lacks an ending `;'" -#~ msgstr "vorangehende Regel hat kein abschließendes »;«" - -#~ msgid "%%guard present but %%semantic_parser not specified" -#~ msgstr "" -#~ "%%guard-Anweisung vorhanden, jedoch wird %%semantic_parser nicht angegeben" - -#~ msgid "two actions at end of one rule" -#~ msgstr "Zwei Aktionen am Ende einer Regel" - -#~ msgid "maximum table size (%d) exceeded" -#~ msgstr "maximale Tabellengröße (%d) überschritten" - -#~ msgid " $ \tgo to state %d\n" -#~ msgstr " $ \tgehe zu Zustand %d über\n" - -#~ msgid "unterminated %guard clause" -#~ msgstr "unbeendeter %guard-Fall" diff --git a/po/es.po b/po/es.po deleted file mode 100644 index 746ee664..00000000 --- a/po/es.po +++ /dev/null @@ -1,1018 +0,0 @@ -# Mensajes en español para GNU Bison. -# Copyright (C) 1998 Free Software Foundation, Inc. -# Nicolás García-Pedrajas , 1998. -# -# Corregido por: -# -# cll - Carlos Linares López clinares@acm.org -# clinares@delicias.dia.fi.upm.es -# -# Notas: -# -# 1. Nicolás, en algunas ocasiones notarás que algunos `msgstr' no están -# indentados como los `msgid'. No te preocupes, eso es porque yo utilizo -# el `po-mode' de Emacs, ... Él es el responsable de esas indentaciones -# del `msgstr' :) -# -# 2. Todos los comentarios que contengan "Duda:" debieran revisarse. -# -# -------------------------------------------------------------------- -# En mi opinión has hecho un excelente trabajo y te animo a que sigas -# manteniendo esta traducción y a que lo intentes con otras. -# -# (¡te lo dice el tío que ha traducido el paquete más grande: 1406 -# mensajes en el clisp!) -# -# Carlos Linares -# -------------------------------------------------------------------- -# -msgid "" -msgstr "" -"Project-Id-Version: GNU bison 1.875\n" -"Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2003-08-25 17:14+0200\n" -"PO-Revision-Date: 2003-01-02 12:47+0100\n" -"Last-Translator: Nicolás García-Pedrajas \n" -"Language-Team: Spanish \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ISO-8859-1\n" -"Content-Transfer-Encoding: 8-bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: src/complain.c:56 lib/error.c:135 lib/error.c:163 -msgid "Unknown system error" -msgstr "Error del sistema desconocido" - -#: src/complain.c:79 src/complain.c:94 -msgid "warning: " -msgstr "aviso: " - -# Duda: desconozco cuál será el convenio en la lista de correo a -# propósito de "fatal". Por favor, comprueba que "error grave" es -# preferido por todos los miembros a "error fatal" - cll -# veremos que dice la mayoría, como hay otros 2 revisores -# La verdad es que a mi lo de error fatal me suena fatal -# ngp -# -#: src/complain.c:150 src/complain.c:166 -msgid "fatal error: " -msgstr "error grave: " - -#: src/conflicts.c:75 -#, c-format -msgid " Conflict between rule %d and token %s resolved as shift" -msgstr "" -" El conflicto entre la regla %d y el terminal %s se resuelve como " -"desplazamiento." - -#: src/conflicts.c:83 -#, c-format -msgid " Conflict between rule %d and token %s resolved as reduce" -msgstr "" -" El conflicto entre la regla %d y el terminal %s se resuelve como " -"reducción." - -#: src/conflicts.c:90 -#, c-format -msgid " Conflict between rule %d and token %s resolved as an error" -msgstr "" -" El conflicto entre la regla %d y el terminal %s se resuelve como un " -"error." - -#: src/conflicts.c:398 -#, c-format -msgid "conflicts: %d shift/reduce, %d reduce/reduce\n" -msgstr "conflictos: %d desplazamiento/reducción, %d reducción/reducción\n" - -# Date cuenta de que `%d' puede ser cualquier número decimal. Podría -# ocurrir, por lo tanto, que tu mensaje en ejecución se vea luego como: -# -# 23845789243789 desplazamiento/reducción -# -# (¡estoy exagerando!, por supuesto :) -# -# Te sugiero por lo tanto que añadas el caso (s) tal y como se hace en -# español habitualmente. -# ok -# ngp -# -#: src/conflicts.c:401 -#, c-format -msgid "conflicts: %d shift/reduce\n" -msgstr "conflictos: %d desplazamiento(s)/reducción(ones)\n" - -# Date cuenta de que `%d' puede ser cualquier número decimal. Podría -# ocurrir, por lo tanto, que tu mensaje en ejecución se vea luego como: -# -# 23845789243789 reducción/reducción -# -# (¡estoy exagerando!, por supuesto :) -# -# Te sugiero por lo tanto que añadas el caso (s) tal y como se hace en -# español habitualmente. -# -# ok -# ngp -#: src/conflicts.c:403 -#, c-format -msgid "conflicts: %d reduce/reduce\n" -msgstr "conflictos: %d reducción(ones)/reducción(ones)\n" - -#: src/conflicts.c:421 -#, c-format -msgid "State %d " -msgstr "Estado %d " - -#: src/conflicts.c:498 -#, c-format -msgid "expected %d shift/reduce conflict" -msgid_plural "expected %d shift/reduce conflicts" -msgstr[0] "esperado %d conflicto desplazamiento/reducción" -msgstr[1] "esperados %d conflictos desplazamiento/reducción" - -#: src/conflicts.c:503 -msgid "expected 0 reduce/reduce conflicts" -msgstr "esperados 0 conflictos reducción/reducción" - -#: src/files.c:99 -#, c-format -msgid "cannot open file `%s'" -msgstr "no se puede abrir el fichero `%s'" - -#: src/files.c:115 -msgid "I/O error" -msgstr "Error de E/S" - -#: src/files.c:118 -msgid "cannot close file" -msgstr "no se puede cerrar el fichero" - -#: src/files.c:336 -#, c-format -msgid "conflicting outputs to file %s" -msgstr "salidas en conflicto al fichero %s" - -#: src/getargs.c:186 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "Pruebe `%s --help' para más información.\n" - -#: src/getargs.c:192 -msgid "GNU bison generates parsers for LALR(1) grammars.\n" -msgstr "GNU bison genera analizadores para gramáticas LALR(1).\n" - -#: src/getargs.c:196 -#, c-format -msgid "Usage: %s [OPTION]... FILE\n" -msgstr "Utilización: %s [OPCIÓN]... FICHERO\n" - -#: src/getargs.c:200 -msgid "" -"If a long option shows an argument as mandatory, then it is mandatory\n" -"for the equivalent short option also. Similarly for optional arguments.\n" -msgstr "" -"Si una opción larga muestra un argumento como obligatorio, entonces es " -"obligatorio\n" -"para la opción corta equivalente también. De igual forma para los argumentos " -"opcionales.\n" - -#: src/getargs.c:206 -msgid "" -"Operation modes:\n" -" -h, --help display this help and exit\n" -" -V, --version output version information and exit\n" -" -y, --yacc emulate POSIX yacc\n" -msgstr "" -"Modos de operación:\n" -" -h, --help muestra esta ayuda y termina\n" -" -V, --version informa de la versión y termina\n" -" -y, --yacc emula POSIX yacc\n" - -#: src/getargs.c:213 -msgid "" -"Parser:\n" -" -S, --skeleton=FILE specify the skeleton to use\n" -" -t, --debug instrument the parser for debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n" -" -l, --no-lines don't generate `#line' directives\n" -" -n, --no-parser generate the tables only\n" -" -k, --token-table include a table of token names\n" -msgstr "" -"Analizador:\n" -" -S, --skeleton=FICHERO especifica el skeleton a utilizar\n" -" -t, --debug instrumenta al analizador para depuración\n" -" --locations abilita la computación de localizaciones\n" -" -p, --name-prefix=PREFIJO preañade PREFIJO a los símbolos externos\n" -" -l, --no-lines no genera la directiva `#line'\n" -" -n, --no-parser solamente genera las tablas\n" -" --k, --token-table incluye una tabla de nombres de terminales\n" - -#: src/getargs.c:225 -msgid "" -"Output:\n" -" -d, --defines also produce a header file\n" -" -r, --report=THINGS also produce details on the automaton\n" -" -v, --verbose same as `--report=state'\n" -" -b, --file-prefix=PREFIX specify a PREFIX for output files\n" -" -o, --output=FILE leave output to FILE\n" -" -g, --graph also produce a VCG description of the " -"automaton\n" -msgstr "" -"Salida:\n" -" -d, --defines también produce un fichero de cabecera\n" -" -r, --report=THINGS también produce detalles del automaton\n" -" -v, --verbose también produce una explicación del automaton\n" -" -b, --file-prefix=PREFIJO especifia el PREFIJO para los ficheros de " -"salida\n" -" -o, --output=FICHERO almacena la salida en FICHERO\n" -" -g, --graph también produce una descripción en VCG del " -"automaton\n" - -#: src/getargs.c:236 -msgid "" -"THINGS is a list of comma separated words that can include:\n" -" `state' describe the states\n" -" `itemset' complete the core item sets with their closure\n" -" `lookahead' explicitly associate lookaheads to items\n" -" `solved' describe shift/reduce conflicts solving\n" -" `all' include all the above information\n" -" `none' disable the report\n" -msgstr "" -"THINGS es una lista de palabras separadas por comas que puede incluir:\n" -" `state' describe los estados\n" -" `itemset' completa los conjuntos de ítems núcleo con sus cierres\n" -" `lookahead' asocia explícitamente lookaheads a los ítems\n" -" `solved' describe la resolución de los conflictos desplazamiento/" -"reducción\n" -" `all' incluye toda la información anterior\n" -" `none' disable the report\n" - -#: src/getargs.c:247 -msgid "Report bugs to .\n" -msgstr "Informe de los errores a .\n" - -#: src/getargs.c:264 -#, c-format -msgid "bison (GNU Bison) %s" -msgstr "bison (GNU bison) %s" - -#: src/getargs.c:266 -msgid "Written by Robert Corbett and Richard Stallman.\n" -msgstr "Escrito por Robert Corbett y Richard Stallman.\n" - -#: src/getargs.c:270 -#, c-format -msgid "Copyright (C) %d Free Software Foundation, Inc.\n" -msgstr "Copyright (C) %d Free Software Foundation, Inc.\n" - -#: src/getargs.c:272 -msgid "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"Esto es software libre; mire el fuente para las condiciones de copia. No " -"hay\n" -"NINGUNA garantía; ni siquiera para COMERCIALIZACIÓN o ADAPTACIÓN PARA UN\n" -"USO PARTICULAR\n" - -#: src/getargs.c:438 -#, c-format -msgid "missing operand after `%s'" -msgstr "falta un operando después de `%s'" - -#: src/getargs.c:440 -#, c-format -msgid "extra operand `%s'" -msgstr "operando extra `%s'" - -#: src/gram.c:139 -msgid "empty" -msgstr "vacío" - -#: src/gram.c:233 -msgid "Grammar" -msgstr "Gramática" - -#: src/gram.c:321 src/reduce.c:394 -msgid "warning" -msgstr "aviso" - -#: src/main.c:124 -msgid "rule never reduced because of conflicts" -msgstr "la regla nunca se redujo debido a los conflictos" - -#: src/parse-gram.y:353 -msgid "POSIX forbids declarations in the grammar" -msgstr "POSIX prohíbe declaraciones en a gramática" - -#: src/parse-gram.y:476 -msgid "missing identifier in parameter declaration" -msgstr "falta el identificador el la declaración del parámetro" - -#: src/print.c:49 -#, c-format -msgid " type %d is %s\n" -msgstr " el tipo %d es %s\n" - -#: src/print.c:165 -#, c-format -msgid "shift, and go to state %d\n" -msgstr "desplazar e ir al estado %d\n" - -#: src/print.c:167 -#, c-format -msgid "go to state %d\n" -msgstr "ir al estado %d\n" - -#: src/print.c:204 -msgid "error (nonassociative)\n" -msgstr "error (no asociativo)\n" - -#: src/print.c:292 -#, c-format -msgid "reduce using rule %d (%s)" -msgstr "reduce usando la regla %d (%s)" - -#: src/print.c:294 -msgid "accept" -msgstr "aceptar" - -#: src/print.c:325 src/print.c:391 -msgid "$default" -msgstr "$default" - -#: src/print.c:420 -#, c-format -msgid "state %d" -msgstr "estado %d" - -#: src/print.c:456 -msgid "Terminals, with rules where they appear" -msgstr "Terminales con las reglas donde aparecen" - -#: src/print.c:483 -msgid "Nonterminals, with rules where they appear" -msgstr "No terminales con las reglas donde aparecen" - -#: src/print.c:512 -msgid " on left:" -msgstr " en la izquierda:" - -#: src/print.c:527 -msgid " on right:" -msgstr " en la derecha:" - -#: src/print.c:555 -msgid "Rules never reduced" -msgstr "Reglas nunca reducidas" - -#: src/reader.c:53 -#, c-format -msgid "multiple %s declarations" -msgstr "múltiples declaraciones de %s" - -#: src/reader.c:115 -#, c-format -msgid "result type clash on merge function %s: <%s> != <%s>" -msgstr "tipo resultado incompatible en la función combinada %s: <%s> != <%s>" - -#: src/reader.c:213 -#, c-format -msgid "rule given for %s, which is a token" -msgstr "se ha dado una regla para %s, que es un terminal" - -#: src/reader.c:242 -#, c-format -msgid "type clash on default action: <%s> != <%s>" -msgstr "incompatibilidad de tipos en la acción por defecto: <%s> != <%s>" - -#: src/reader.c:248 -msgid "empty rule for typed nonterminal, and no action" -msgstr "regla vacía para un no terminal con tipo y no hay ninguna acción" - -#: src/reader.c:318 src/reader.c:332 src/reader.c:345 -#, c-format -msgid "only one %s allowed per rule" -msgstr "sólo se permite un %s por regla" - -#: src/reader.c:328 src/reader.c:343 -#, c-format -msgid "%s affects only GLR parsers" -msgstr "%s afecta sólo a los analizadores GLR" - -#: src/reader.c:330 -#, c-format -msgid "%s must be followed by positive number" -msgstr "%s debe estar seguido por un número positivo" - -#: src/reader.c:487 -msgid "no rules in the input grammar" -msgstr "no hay reglas en la gramática de entrada" - -#: src/reduce.c:242 -msgid "useless rule" -msgstr "regla sin uso" - -#: src/reduce.c:303 -#, c-format -msgid "useless nonterminal: %s" -msgstr "No terminal sin uso: %s" - -#: src/reduce.c:351 -msgid "Useless nonterminals" -msgstr "No terminales sin uso" - -#: src/reduce.c:364 -msgid "Terminals which are not used" -msgstr "Terminales que no se usan" - -#: src/reduce.c:373 -msgid "Useless rules" -msgstr "Reglas sin uso" - -#: src/reduce.c:389 -#, c-format -msgid "%d rule never reduced\n" -msgid_plural "%d rules never reduced\n" -msgstr[0] "%d regla que nunca se ha reducido\n" -msgstr[1] "%d reglas que nunca se han reducido\n" - -#: src/reduce.c:397 -#, c-format -msgid "%d useless nonterminal" -msgid_plural "%d useless nonterminals" -msgstr[0] "%d no terminal sin uso" -msgstr[1] "%d no terminales sin uso" - -#: src/reduce.c:403 -msgid " and " -msgstr " y " - -#: src/reduce.c:406 -#, c-format -msgid "%d useless rule" -msgid_plural "%d useless rules" -msgstr[0] "%d regla sin uso" -msgstr[1] "%d reglas sin uso" - -#: src/reduce.c:436 -#, c-format -msgid "start symbol %s does not derive any sentence" -msgstr "El símbolo de inicio (axioma) %s no deriva ninguna sentencia" - -#: src/scan-gram.l:160 -msgid "stray `,' treated as white space" -msgstr "`,' perdido se trato como un espacio en blanco" - -#: src/scan-gram.l:221 -#, c-format -msgid "invalid directive: %s" -msgstr "directiva no válida: %s" - -#: src/scan-gram.l:241 src/scan-gram.l:804 src/scan-gram.l:873 -#, c-format -msgid "integer out of range: %s" -msgstr "entero fuera de rango: %s" - -#: src/scan-gram.l:283 -#, c-format -msgid "invalid character: %s" -msgstr "carácter no válido: %s" - -#: src/scan-gram.l:412 src/scan-gram.l:422 src/scan-gram.l:441 -#, c-format -msgid "invalid escape sequence: %s" -msgstr "secuencia de escape no válida: %s" - -#: src/scan-gram.l:446 -#, c-format -msgid "unrecognized escape sequence: %s" -msgstr "secuencia de escape no reconocida: %s" - -#: src/scan-gram.l:534 -#, c-format -msgid "missing `{' in `%s'" -msgstr "falta `{' en `%s'" - -#: src/scan-gram.l:774 -#, c-format -msgid "$$ of `%s' has no declared type" -msgstr "$$ de `%s' no tiene tipo declarado" - -#: src/scan-gram.l:795 -#, c-format -msgid "$%d of `%s' has no declared type" -msgstr "$%d de `%s' no tiene tipo declarado" - -#: src/scan-gram.l:840 src/scan-gram.l:908 -#, c-format -msgid "invalid value: %s" -msgstr "valor no válido: %s" - -#: src/scan-gram.l:996 -#, c-format -msgid "missing `%s' at end of file" -msgstr "falta cadena `%s' al final del fichero" - -#: src/symlist.c:97 src/symlist.c:108 -msgid "invalid $ value" -msgstr "valor $ no válido" - -#: src/symtab.c:84 -#, c-format -msgid "type redeclaration for %s" -msgstr "redeclaración del tipo de %s" - -#: src/symtab.c:101 src/symtab.c:119 -#, c-format -msgid "%s redeclaration for %s" -msgstr "%s redeclaración de %s" - -#: src/symtab.c:138 -#, c-format -msgid "redefining precedence of %s" -msgstr "redefinición de la precedencia de %s" - -#: src/symtab.c:156 -#, c-format -msgid "symbol %s redefined" -msgstr "redefinido el símbolo %s" - -#: src/symtab.c:179 -#, c-format -msgid "redefining user token number of %s" -msgstr "redefinición del número del terminal del usuario de %s" - -# `token' se debe traducir como `literal' - cll -# en terminología de compiladores token es más un terminal - ngp -# -#: src/symtab.c:206 -#, c-format -msgid "symbol %s is used, but is not defined as a token and has no rules" -msgstr "" -"se usa el símbolo %s, pero no está definido como terminal y no tiene reglas" - -#: src/symtab.c:231 -#, c-format -msgid "symbol `%s' used more than once as a literal string" -msgstr "símbolo `%s' utilizado más de una vez como cadena literal" - -#: src/symtab.c:234 -#, c-format -msgid "symbol `%s' given more than one literal string" -msgstr "al símbolo `%s' se le ha dado más de una cadena literal" - -#: src/symtab.c:270 -#, c-format -msgid "conflicting precedences for %s and %s" -msgstr "precedencias en conflicto entre %s y %s" - -#: src/symtab.c:282 -#, c-format -msgid "conflicting associativities for %s (%s) and %s (%s)" -msgstr "conflicto de asociaciatividades para %s (%s) y %s (%s)" - -#: src/symtab.c:367 -#, c-format -msgid "tokens %s and %s both assigned number %d" -msgstr "los terminales %s y %s tienen asignados ambos el número %d" - -#: src/symtab.c:590 -#, c-format -msgid "the start symbol %s is undefined" -msgstr "el símbolo de inicio (axioma) %s no está definido" - -#: src/symtab.c:594 -#, c-format -msgid "the start symbol %s is a token" -msgstr "el símbolo de inicio (axioma) %s es un terminal" - -#: lib/argmatch.c:135 -#, c-format -msgid "invalid argument %s for %s" -msgstr "argumento no válido %s para %s" - -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "argumento %s ambigüo para %s" - -#: lib/argmatch.c:155 -msgid "Valid arguments are:" -msgstr "Los argumentos válidos son:" - -#: lib/bitset_stats.c:179 -#, c-format -msgid "%u bitset_allocs, %u freed (%.2f%%).\n" -msgstr "%u bitset_allocs, %u liberados (%.2f%%).\n" - -#: lib/bitset_stats.c:182 -#, c-format -msgid "%u bitset_sets, %u cached (%.2f%%)\n" -msgstr "%u bitset_sets, %u en la caché (%.2f%%)\n" - -#: lib/bitset_stats.c:185 -#, c-format -msgid "%u bitset_resets, %u cached (%.2f%%)\n" -msgstr "%u bitset_resets, %u en la caché (%.2f%%)\n" - -#: lib/bitset_stats.c:188 -#, c-format -msgid "%u bitset_tests, %u cached (%.2f%%)\n" -msgstr "%u bitset_tests, %u en la caché (%.2f%%)\n" - -#: lib/bitset_stats.c:192 -#, c-format -msgid "%u bitset_lists\n" -msgstr "%u bitset_lists\n" - -#: lib/bitset_stats.c:194 -msgid "count log histogram\n" -msgstr "histograma del registro de conteo\n" - -#: lib/bitset_stats.c:197 -msgid "size log histogram\n" -msgstr "histograma del registro de tamaño\n" - -#: lib/bitset_stats.c:200 -msgid "density histogram\n" -msgstr "histograma de densidad\n" - -#: lib/bitset_stats.c:214 -msgid "" -"Bitset statistics:\n" -"\n" -msgstr "Estadísticas de bitset\n" - -#: lib/bitset_stats.c:217 -#, c-format -msgid "Accumulated runs = %u\n" -msgstr "Ejecuciones acumuladas = %u\n" - -#: lib/bitset_stats.c:261 lib/bitset_stats.c:266 -msgid "Could not read stats file." -msgstr "No pude leer fichero de estadísticas" - -#: lib/bitset_stats.c:263 -msgid "Bad stats file size.\n" -msgstr "Fichero de estadística no válido.\n" - -#: lib/bitset_stats.c:289 lib/bitset_stats.c:291 -msgid "Could not write stats file." -msgstr "No pude escribir el fichero de estadísticas." - -#: lib/bitset_stats.c:294 -msgid "Could not open stats file for writing." -msgstr "No pude abrir el fichero de estadísticas para escritura" - -#: lib/getopt.c:688 lib/getopt.c:700 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: la opción `%s' es ambigua\n" - -# Pongo esto como en otros .po. sv -#: lib/getopt.c:733 lib/getopt.c:737 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: la opción `--%s' no admite ningún argumento\n" - -#: lib/getopt.c:746 lib/getopt.c:751 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: la opción `%c%s' no admite ningún argumento\n" - -#: lib/getopt.c:787 lib/getopt.c:800 lib/getopt.c:1089 lib/getopt.c:1102 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: la opción `%s' requiere un argumento\n" - -#: lib/getopt.c:838 lib/getopt.c:841 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: opción `--%s' no reconocida\n" - -#: lib/getopt.c:849 lib/getopt.c:852 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: opción `%c%s' no reconocida\n" - -# ¿Qué encuentras de malo en traducir `illegal' como `ilegal'? Date -# cuenta de que el mensaje "opción no válida" parece ambigua y hará -# pensar al usuario de que tal vez la ha usado incorrectamente, sin -# reparar, por lo tanto, en que la opción misma es ilegal. Esto es, ¡¡no -# existe!! (porque imagino que es en este sentido como se ha programado) -# - cll -# Sobre esto hubo una discusión en la lista hace tiempo, -# quizás ilegal queda un poco fuerte, alguien decía que parecía que -# ibas a ir a la carcel por usar la opción. -# ngp -# -# Sí, era Enrique a quien no le gustaba la palabra. -# No creo que debamos dejar de decir algo por la "corrección política" -# Yo creo que si el 386 tiene instrucciones *ilegales*, también puede -# haber opciones ilegales, digo yo, y no por eso las CPUs van -# a la cárcel (como mucho se cuelgan, je, je, 0ff0 :-). sv -# -#: lib/getopt.c:899 lib/getopt.c:902 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: opción -- %c ilegal\n" - -# ¡Muy bien traducido! En el grupo de traducción ha habido auténticas -# batallas con el tema "invalid - inválido/a" :) - cll -# Porque Enrique decía que le recordaba a disminuidos físicos. -# Francamente, no creo que haya que andar con estas "fobias". -# Pongo inválida. sv -#: lib/getopt.c:908 lib/getopt.c:911 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: opción -- %c no válida\n" - -#: lib/getopt.c:958 lib/getopt.c:969 lib/getopt.c:1155 lib/getopt.c:1168 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: la opción -- %c requiere un argumento\n" - -#: lib/getopt.c:1021 lib/getopt.c:1032 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: la opción `-W %s' es ambigua\n" - -# Pongo esto como en otros .po. sv -#: lib/getopt.c:1056 lib/getopt.c:1068 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: la opción `-W %s' no admite ningún argumento\n" - -#: lib/obstack.c:487 lib/obstack.c:490 lib/xmalloc.c:63 -msgid "memory exhausted" -msgstr "memoria agotada" - -#: lib/quotearg.c:236 -msgid "`" -msgstr "`" - -#: lib/quotearg.c:237 -msgid "'" -msgstr "'" - -#: lib/subpipe.c:187 -#, c-format -msgid "subsidiary program `%s' could not be invoked" -msgstr "no se pudo invocar el programa subsidiario `%s'" - -#: lib/subpipe.c:189 -#, c-format -msgid "subsidiary program `%s' not found" -msgstr "no se encontró el programa subsidiario `%s'" - -#: lib/subpipe.c:191 -#, c-format -msgid "subsidiary program `%s' failed" -msgstr "falló el programa subsidiario `%s'" - -#: lib/subpipe.c:192 -#, c-format -msgid "subsidiary program `%s' failed (exit status %d)" -msgstr "falló el programa subsidiario `%s' (estado de salida %d)" - -#: lib/timevar.c:476 -msgid "" -"\n" -"Execution times (seconds)\n" -msgstr "" -"\n" -"Tiempos de ejecución (segundo)\n" - -#: lib/timevar.c:526 -msgid " TOTAL :" -msgstr " TOTAL :" - -#: lib/timevar.c:562 -#, c-format -msgid "time in %s: %ld.%06ld (%ld%%)\n" -msgstr "tiempo en %s: %ld.%06ld (%ld%%)\n" - -#~ msgid "too many states (max %d)" -#~ msgstr "demasiados estados (máximo %d)" - -#~ msgid "reduce" -#~ msgstr "reduce" - -#~ msgid "shift" -#~ msgstr "desplaza" - -#~ msgid "%d shift/reduce conflict" -#~ msgid_plural "%d shift/reduce conflicts" -#~ msgstr[0] "%d conflicto desplazamiento/reducción" -#~ msgstr[1] "%d conflictos desplazamiento/reducción" - -#~ msgid "and" -#~ msgstr "y" - -#~ msgid "State %d contains " -#~ msgstr "El estado %d contiene" - -#~ msgid "conflicts: " -#~ msgstr "conflictos: " - -#~ msgid "%s contains " -#~ msgstr "%s contiene " - -#~ msgid "`%s' is no longer supported" -#~ msgstr "`%s' ya no está soportado" - -# Me parece menos "computadora" decir "ningún fichero de gramática" - cll -# -#~ msgid "%s: no grammar file given\n" -#~ msgstr "%s: no se ha especificado ningún fichero de gramática\n" - -# Ignorar es no saber, to ignore es no hacer caso, que no es lo mismo. sv -#~ msgid "%s: extra arguments ignored after `%s'\n" -#~ msgstr "%s: los argumentos extra después de '%s' no se tendrán en cuenta\n" - -#~ msgid "too many gotos (max %d)" -#~ msgstr "demasiados gotos (máximo %d)" - -# to ignore no es ignorar. Pon otra cosa, please. sv -#~ msgid "unexpected `/' found and ignored" -#~ msgstr "se ha encontrado `/' cuando no se esperaba, no se tendrán en cuenta" - -#~ msgid "unterminated comment" -#~ msgstr "comentario sin terminar" - -#~ msgid "unexpected end of file" -#~ msgstr "fin de fichero inesperado" - -# ¿unescaped? -#~ msgid "unescaped newline in constant" -#~ msgstr "salto de línea en constante sin secuencia de escape" - -#~ msgid "octal value outside range 0...255: `\\%o'" -#~ msgstr "valor octal fuera del rango 0...255: `\\%o'" - -#~ msgid "hexadecimal value above 255: `\\x%x'" -#~ msgstr "valor hexadecimal mayor que 255: `\\x%x'" - -#~ msgid "unknown escape sequence: `\\' followed by `%s'" -#~ msgstr "secuencia de escape desconocida: `\\' seguido de `%s'" - -#~ msgid "unterminated type name at end of file" -#~ msgstr "nombre de tipo sin terminar al final del fichero" - -#~ msgid "unterminated type name" -#~ msgstr "nombre de tipo sin terminar" - -# ¿multicarácter o multicaracteres? sv -#~ msgid "use \"...\" for multi-character literal tokens" -#~ msgstr "use \"...\" para terminales literales multicarácter" - -#~ msgid "`%s' supports no argument: %s" -#~ msgstr "`%s' no soporta el argumento: %s" - -#~ msgid "`%s' requires an argument" -#~ msgstr "`%s' requiere un argumento" - -#~ msgid " (rule %d)" -#~ msgstr " (regla %d)" - -#~ msgid " %-4s\terror (nonassociative)\n" -#~ msgstr " %-4s\terror (no asociativo)\n" - -#~ msgid "" -#~ " $default\treduce using rule %d (%s)\n" -#~ "\n" -#~ msgstr "" -#~ " $default\treduce usando la regla %d (%s)\n" -#~ "\n" - -#~ msgid " %-4s\t[reduce using rule %d (%s)]\n" -#~ msgstr " %-4s\t[reduce usando la regla %d (%s)]\n" - -#~ msgid " %-4s\treduce using rule %d (%s)\n" -#~ msgstr " %-4s\treduce usando la regla %d (%s)\n" - -#~ msgid " $default\treduce using rule %d (%s)\n" -#~ msgstr " $default\treduce usando la regla %d (%s)\n" - -#~ msgid " $default\taccept\n" -#~ msgstr " $default\taceptar\n" - -#~ msgid " NO ACTIONS\n" -#~ msgstr " SIN ACCIONES\n" - -#~ msgid "Number, Line, Rule" -#~ msgstr "Número, Línea, Regla" - -#~ msgid " %3d %3d %s ->" -#~ msgstr " %3d %3d %s ->" - -#~ msgid " Skipping to next \\n" -#~ msgstr " Saltando al siguiente \\n" - -#~ msgid " Skipping to next %c" -#~ msgstr " Saltando al siguiente %c" - -#~ msgid "unterminated string" -#~ msgstr "cadena sin terminar" - -#~ msgid "%s is invalid" -#~ msgstr "%s no es válido" - -#~ msgid "unterminated `%{' definition" -#~ msgstr "definición `%{' sin terminar" - -#~ msgid "Premature EOF after %s" -#~ msgstr "EOF prematuro después de %s" - -#~ msgid "`%s' is invalid in %s" -#~ msgstr "`%s' no es válido en %s" - -#~ msgid "invalid %s declaration" -#~ msgstr "declaración de %s no válida" - -#~ msgid "%type declaration has no " -#~ msgstr "la declaración %type no tiene " - -#~ msgid "invalid %%type declaration due to item: %s" -#~ msgstr "declaración de %%type no válida debido al ítem: %s" - -# Una corrección menor: en realidad, `should' es el pasado y condicional -# de "to must" y aquí se emplea en su forma condicional. Por eso, he -# cambiado `debe' por `debería' - cll -# ahí me has pillado en un olvido del inglés - ngp -#~ msgid "invalid text (%s) - number should be after identifier" -#~ msgstr "" -#~ "texto no válido (%s) - el número debería estar después del identificador" - -# En unas ocasiones, has traducido `unexpected' como `no esperado' y, en -# otras, como `inesperado'. Cualquiera es correcta, por supuesto y, en -# este caso, la segunda me parece más apropiada - cll -# ok - ngp -#~ msgid "unexpected item: %s" -#~ msgstr "ítem inesperado: %s" - -# Cambio el orden y el sexo. Ahora está "en español". sv -#~ msgid "unmatched %s" -#~ msgstr "%s desemparejado/a" - -#~ msgid "argument of %%expect is not an integer" -#~ msgstr "el argumento de %%expect no es un entero" - -# No te recomiendo que emplees participios para expresar acciones (¡si -# me oyera mi antigua profesora de lengua, lloraría de emoción! :). En -# vez de eso, emplea las conjugaciones habituales, que para eso están :) -# - cll -# ok - ngp -# -#~ msgid "unrecognized item %s, expected an identifier" -#~ msgstr "no se reconoce el ítem %s, se esperaba un identificador" - -#~ msgid "expected string constant instead of %s" -#~ msgstr "se esperaba una cadena constante en lugar de %s" - -#~ msgid "no input grammar" -#~ msgstr "no hay gramática de entrada" - -#~ msgid "ill-formed rule: initial symbol not followed by colon" -#~ msgstr "regla mal formada: el símbolo inicial no está seguido por :" - -#~ msgid "grammar starts with vertical bar" -#~ msgstr "la gramática comienza con una barra vertical" - -#~ msgid "previous rule lacks an ending `;'" -#~ msgstr "a la regla previa le falta un `;' al final" - -#~ msgid "two @prec's in a row" -#~ msgstr "dos @prec en una línea" - -# Insisto, el empleo de participios a secas me parece como hablar en -# indio. Por favor, permíteme que añada un "está" :) - cll -# ok - ngp -#~ msgid "%%guard present but %%semantic_parser not specified" -#~ msgstr "%%guard presente pero %%semantic_parser está sin especificar" - -#~ msgid "two actions at end of one rule" -#~ msgstr "dos acciones al final de una regla" - -#~ msgid "too many symbols (tokens plus nonterminals); maximum %d" -#~ msgstr "demasiados símbolos (terminales y no terminales); máximo %d" - -# Únicamente cambio la posición del adjetivo `máximo'. En vez de después -# de `tabla', después de `tamaño' - cll -# en inglés era así, pero quizás en español sea mejor como dices -# ngp -# -#~ msgid "maximum table size (%d) exceeded" -#~ msgstr "excedido el tamaño máximo de la tabla (%d)" - -#~ msgid " $ \tgo to state %d\n" -#~ msgstr " $ \tir al estado %d\n" - -# Tal vez pueda parecer pedante, pero `inconclusa' me suena muchísimo -# mejor que `sin terminar' que me parece más "computerizado" - cll -# quizás un poco cacofónico lo de claúsula inconclusa - ngp -# -#~ msgid "unterminated %guard clause" -#~ msgstr "cláusula %guard sin terminar" diff --git a/po/et.po b/po/et.po deleted file mode 100644 index 79f80c0e..00000000 --- a/po/et.po +++ /dev/null @@ -1,704 +0,0 @@ -# Estonian translations for bison. -# Copyright (C) 2001 Free Software Foundation, Inc. -# Toomas Soome , 2002. -# -msgid "" -msgstr "" -"Project-Id-Version: bison 1.875\n" -"Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2003-08-25 17:14+0200\n" -"PO-Revision-Date: 2003-01-02 11:59+0200\n" -"Last-Translator: Toomas Soome \n" -"Language-Team: Estonian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ISO-8859-15\n" -"Content-Transfer-Encoding: 8-bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: src/complain.c:56 lib/error.c:135 lib/error.c:163 -msgid "Unknown system error" -msgstr "Tundmatu süsteemi viga" - -#: src/complain.c:79 src/complain.c:94 -msgid "warning: " -msgstr "hoiatus: " - -#: src/complain.c:150 src/complain.c:166 -msgid "fatal error: " -msgstr "fataalne viga: " - -#: src/conflicts.c:75 -#, c-format -msgid " Conflict between rule %d and token %s resolved as shift" -msgstr " Konflikt reegli %d ja märgi %s vahel lahendatud nihkega" - -#: src/conflicts.c:83 -#, c-format -msgid " Conflict between rule %d and token %s resolved as reduce" -msgstr " Konflikt reegli %d ja märgi %s vahel lahendatud redutseerimisega" - -#: src/conflicts.c:90 -#, c-format -msgid " Conflict between rule %d and token %s resolved as an error" -msgstr " Konflikt reegli %d ja märgi %s vahel lahendatud veana" - -#: src/conflicts.c:398 -#, c-format -msgid "conflicts: %d shift/reduce, %d reduce/reduce\n" -msgstr "" -"konfliktid: %d nihutamine/redutseerimine, %d redutseerimine/redutseerimine\n" - -#: src/conflicts.c:401 -#, c-format -msgid "conflicts: %d shift/reduce\n" -msgstr "konfliktid: %d nihutamine/redutseerimine\n" - -#: src/conflicts.c:403 -#, c-format -msgid "conflicts: %d reduce/reduce\n" -msgstr "konfliktid: %d redutseerimine/redutseerimine\n" - -#: src/conflicts.c:421 -#, c-format -msgid "State %d " -msgstr "Olek %d " - -#: src/conflicts.c:498 -#, c-format -msgid "expected %d shift/reduce conflict" -msgid_plural "expected %d shift/reduce conflicts" -msgstr[0] "eeldasime %d nihutamine/redutseerimine konflikti" -msgstr[1] "eeldasime %d nihutamine/redutseerimine konflikti" - -#: src/conflicts.c:503 -msgid "expected 0 reduce/reduce conflicts" -msgstr "eeldasin 0 redutseerimine/redutseerimine konflikti" - -#: src/files.c:99 -#, c-format -msgid "cannot open file `%s'" -msgstr "faili `%s' ei saa avada" - -#: src/files.c:115 -msgid "I/O error" -msgstr "S/V viga" - -#: src/files.c:118 -msgid "cannot close file" -msgstr "faili ei õnnestu sulgeda" - -#: src/files.c:336 -#, c-format -msgid "conflicting outputs to file %s" -msgstr "konfliktsed väljundid faili %s" - -#: src/getargs.c:186 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "Lisainfo saamiseks proovige `%s --help'.\n" - -#: src/getargs.c:192 -msgid "GNU bison generates parsers for LALR(1) grammars.\n" -msgstr "GNU bison genereerib parsereid LALR(1) grammatikatele.\n" - -#: src/getargs.c:196 -#, c-format -msgid "Usage: %s [OPTION]... FILE\n" -msgstr "Kasuta: %s [VÕTI]...FAIL\n" - -#: src/getargs.c:200 -msgid "" -"If a long option shows an argument as mandatory, then it is mandatory\n" -"for the equivalent short option also. Similarly for optional arguments.\n" -msgstr "" -"Kui pikk võti näitab, et argument on kohustuslik, siis on see kohustuslik \n" -"ka lühikese võtme korral. Sama ka vabalt valitavate võtmete korral.\n" - -#: src/getargs.c:206 -msgid "" -"Operation modes:\n" -" -h, --help display this help and exit\n" -" -V, --version output version information and exit\n" -" -y, --yacc emulate POSIX yacc\n" -msgstr "" -"Töömoodid:\n" -" -h, --help esita see abiinfo ja lõpeta töö\n" -" -V, --version esita versiooniinfo ja lõpeta töö\n" -" -y, --yacc emuleeri POSIX yacc\n" - -#: src/getargs.c:213 -msgid "" -"Parser:\n" -" -S, --skeleton=FILE specify the skeleton to use\n" -" -t, --debug instrument the parser for debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n" -" -l, --no-lines don't generate `#line' directives\n" -" -n, --no-parser generate the tables only\n" -" -k, --token-table include a table of token names\n" -msgstr "" -"Parser:\n" -" -S, --skeleton=FAIL kasutatava skeleti kirjeldus\n" -" -t, --debug varusta parser silumisinfoga\n" -" --locations luba asukohtade arvestamine\n" -" -p, --name-prefix=PREFIKS lisa välissümbolite nimedele PREFIKS\n" -" -l, --no-lines ära genereeri `#line' direktiive\n" -" -n, --no-parser genereeri ainult tabelid\n" -" -k, --token-table lisa ka sümbolite nimede tabel\n" - -#: src/getargs.c:225 -msgid "" -"Output:\n" -" -d, --defines also produce a header file\n" -" -r, --report=THINGS also produce details on the automaton\n" -" -v, --verbose same as `--report=state'\n" -" -b, --file-prefix=PREFIX specify a PREFIX for output files\n" -" -o, --output=FILE leave output to FILE\n" -" -g, --graph also produce a VCG description of the " -"automaton\n" -msgstr "" -"Väljund:\n" -" -d, --defines loo ka päisfail\n" -" -r, --report=ASJAD väljasta automaadi kohta selgitusi\n" -" -v, --verbose sama, kui `--report=state'\n" -" -b, --file-prefix=PREFIKS kasuta väljundfailide nimedes PREFIKSit\n" -" -o, --output-file=FAIL jäta väljund FAILi\n" -" -g, --graph loo automaadi kirjeldus VCG graafina\n" - -#: src/getargs.c:236 -msgid "" -"THINGS is a list of comma separated words that can include:\n" -" `state' describe the states\n" -" `itemset' complete the core item sets with their closure\n" -" `lookahead' explicitly associate lookaheads to items\n" -" `solved' describe shift/reduce conflicts solving\n" -" `all' include all the above information\n" -" `none' disable the report\n" -msgstr "" -"ASJAD on loend komadega eraldatud järgnevaid sõnu:\n" -" `state' olekute kirjeldus\n" -" `itemset' täienda põhilisi elemente nende sulunditega\n" -" `lookahead' seo ettevaatamised elementidega\n" -" `solved' kirjelda nihuta/redutseeri konfliktide lahendamisi\n" -" `all' kogu ülaltoodud info\n" -" `none' blokeeri raport\n" - -#: src/getargs.c:247 -msgid "Report bugs to .\n" -msgstr "Teatage palun vigadest aadressil .\n" - -#: src/getargs.c:264 -#, c-format -msgid "bison (GNU Bison) %s" -msgstr "bison (GNU Bison) %s" - -#: src/getargs.c:266 -msgid "Written by Robert Corbett and Richard Stallman.\n" -msgstr "Kirjutanud Robert Corbett ja Richard Stallman.\n" - -#: src/getargs.c:270 -#, c-format -msgid "Copyright (C) %d Free Software Foundation, Inc.\n" -msgstr "Autoriõigus © %d Free Software Foundation, Inc.\n" - -#: src/getargs.c:272 -msgid "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"See on vaba tarkvara; kopeerimistingimused leiate lähtetekstidest. Garantii\n" -"PUUDUB; ka müügiks või mingil eesmärgil kasutamiseks.\n" - -#: src/getargs.c:438 -#, c-format -msgid "missing operand after `%s'" -msgstr "`%s' järel puudub operand" - -#: src/getargs.c:440 -#, c-format -msgid "extra operand `%s'" -msgstr "Liigne operand `%s'" - -#: src/gram.c:139 -msgid "empty" -msgstr "tühi" - -#: src/gram.c:233 -msgid "Grammar" -msgstr "Grammatika" - -#: src/gram.c:321 src/reduce.c:394 -msgid "warning" -msgstr "hoiatus" - -#: src/main.c:124 -msgid "rule never reduced because of conflicts" -msgstr "reeglit ei redutseerita konfliktide tõttu kunagi" - -#: src/parse-gram.y:353 -msgid "POSIX forbids declarations in the grammar" -msgstr "POSIX keelab deklareerimised grammatikas" - -#: src/parse-gram.y:476 -msgid "missing identifier in parameter declaration" -msgstr "parameetri deklaratsioonis puudub identifikaator" - -#: src/print.c:49 -#, c-format -msgid " type %d is %s\n" -msgstr " tüüp %d on %s\n" - -#: src/print.c:165 -#, c-format -msgid "shift, and go to state %d\n" -msgstr "nihuta ja liigu olekule %d\n" - -#: src/print.c:167 -#, c-format -msgid "go to state %d\n" -msgstr "liigu olekule %d\n" - -#: src/print.c:204 -msgid "error (nonassociative)\n" -msgstr "viga (mitteassotsiatiivne)\n" - -#: src/print.c:292 -#, c-format -msgid "reduce using rule %d (%s)" -msgstr "redutseerin kasutades reeglit %d (%s)" - -#: src/print.c:294 -msgid "accept" -msgstr "nõustun" - -#: src/print.c:325 src/print.c:391 -msgid "$default" -msgstr "$default" - -#: src/print.c:420 -#, c-format -msgid "state %d" -msgstr "olek %d" - -#: src/print.c:456 -msgid "Terminals, with rules where they appear" -msgstr "Terminalid, koos reeglitega kus nad ilmuvad" - -#: src/print.c:483 -msgid "Nonterminals, with rules where they appear" -msgstr "Mitteterminalid, koos reeglitega kus nad ilmuvad" - -#: src/print.c:512 -msgid " on left:" -msgstr " vasakul:" - -#: src/print.c:527 -msgid " on right:" -msgstr " paremal:" - -#: src/print.c:555 -msgid "Rules never reduced" -msgstr "Mitteredutseeruvad reeglid" - -#: src/reader.c:53 -#, c-format -msgid "multiple %s declarations" -msgstr "korduvad %s deklaratsioonid" - -#: src/reader.c:115 -#, c-format -msgid "result type clash on merge function %s: <%s> != <%s>" -msgstr "tulemuse tüübikonflikt mestimise funktsioonis %s: <%s> != <%s>" - -#: src/reader.c:213 -#, c-format -msgid "rule given for %s, which is a token" -msgstr "%s jaoks on antud reegel, aga see on märk" - -#: src/reader.c:242 -#, c-format -msgid "type clash on default action: <%s> != <%s>" -msgstr "vaikimisi tegevuse tüübikonflikt: <%s> != <%s>" - -#: src/reader.c:248 -msgid "empty rule for typed nonterminal, and no action" -msgstr "tüübiga mitteterminalil on tühi reegel ja puudub tegevus" - -#: src/reader.c:318 src/reader.c:332 src/reader.c:345 -#, c-format -msgid "only one %s allowed per rule" -msgstr "reeglis on lubatud ainult üks %s" - -#: src/reader.c:328 src/reader.c:343 -#, c-format -msgid "%s affects only GLR parsers" -msgstr "%s puudutab ainult GLR parsereid" - -#: src/reader.c:330 -#, c-format -msgid "%s must be followed by positive number" -msgstr "%s järel peab olema positiivne number" - -#: src/reader.c:487 -msgid "no rules in the input grammar" -msgstr "sisendgrammatikas pole reegleid" - -#: src/reduce.c:242 -msgid "useless rule" -msgstr "kasutamata reegel" - -#: src/reduce.c:303 -#, c-format -msgid "useless nonterminal: %s" -msgstr "kasutamata mitteterminal: %s" - -#: src/reduce.c:351 -msgid "Useless nonterminals" -msgstr "Kasutamata mitteterminalid" - -#: src/reduce.c:364 -msgid "Terminals which are not used" -msgstr "Terminalid, mida ei kasutatud" - -#: src/reduce.c:373 -msgid "Useless rules" -msgstr "Kasutamata reeglid" - -#: src/reduce.c:389 -#, c-format -msgid "%d rule never reduced\n" -msgid_plural "%d rules never reduced\n" -msgstr[0] "%d reegel ei redutseeru\n" -msgstr[1] "%d reeglit ei redutseeru\n" - -#: src/reduce.c:397 -#, c-format -msgid "%d useless nonterminal" -msgid_plural "%d useless nonterminals" -msgstr[0] "%d kasutamata mitteterminal" -msgstr[1] "%d kasutamata mitteterminali" - -#: src/reduce.c:403 -msgid " and " -msgstr " ja " - -#: src/reduce.c:406 -#, c-format -msgid "%d useless rule" -msgid_plural "%d useless rules" -msgstr[0] "%d kasutamata reegel" -msgstr[1] "%d kasutamata reeglit" - -#: src/reduce.c:436 -#, c-format -msgid "start symbol %s does not derive any sentence" -msgstr "stardisümbolist %s ei tuletata ühtegi lauset" - -#: src/scan-gram.l:160 -msgid "stray `,' treated as white space" -msgstr "käsitlen juhuslikku `,' kui tühikut" - -#: src/scan-gram.l:221 -#, c-format -msgid "invalid directive: %s" -msgstr "vigane juhus: %s" - -#: src/scan-gram.l:241 src/scan-gram.l:804 src/scan-gram.l:873 -#, c-format -msgid "integer out of range: %s" -msgstr "number piiridest väljas: %s" - -#: src/scan-gram.l:283 -#, c-format -msgid "invalid character: %s" -msgstr "vigased sümbolid: %s" - -#: src/scan-gram.l:412 src/scan-gram.l:422 src/scan-gram.l:441 -#, c-format -msgid "invalid escape sequence: %s" -msgstr "vigane paojada: %s" - -#: src/scan-gram.l:446 -#, c-format -msgid "unrecognized escape sequence: %s" -msgstr "tundmatu paojada: %s" - -#: src/scan-gram.l:534 -#, c-format -msgid "missing `{' in `%s'" -msgstr "`%s' juures puudub `{'" - -#: src/scan-gram.l:774 -#, c-format -msgid "$$ of `%s' has no declared type" -msgstr "`%s' $$ ei oma deklareeritud tüüpi" - -#: src/scan-gram.l:795 -#, c-format -msgid "$%d of `%s' has no declared type" -msgstr "$%d `%s' ei oma deklareeritud tüüpi" - -#: src/scan-gram.l:840 src/scan-gram.l:908 -#, c-format -msgid "invalid value: %s" -msgstr "vigane väärtus: %s" - -#: src/scan-gram.l:996 -#, c-format -msgid "missing `%s' at end of file" -msgstr "faili lõpus puudub `%s'" - -#: src/symlist.c:97 src/symlist.c:108 -msgid "invalid $ value" -msgstr "vigane $ väärtus" - -#: src/symtab.c:84 -#, c-format -msgid "type redeclaration for %s" -msgstr "%s tüübi uuesti deklareerimine" - -#: src/symtab.c:101 src/symtab.c:119 -#, c-format -msgid "%s redeclaration for %s" -msgstr "%s uuesti deklareerimine %s jaoks" - -#: src/symtab.c:138 -#, c-format -msgid "redefining precedence of %s" -msgstr "%s prioriteedi uus definitsioon" - -#: src/symtab.c:156 -#, c-format -msgid "symbol %s redefined" -msgstr "sümbol %s on uuesti defineeritud" - -#: src/symtab.c:179 -#, c-format -msgid "redefining user token number of %s" -msgstr "%s kasutaja märgi numbri uuesti defineerimine" - -#: src/symtab.c:206 -#, c-format -msgid "symbol %s is used, but is not defined as a token and has no rules" -msgstr "" -"kasutatakse sümbolit %s, mis ei ole defineeritud märgina ja millel puuduvad " -"reeglid" - -#: src/symtab.c:231 -#, c-format -msgid "symbol `%s' used more than once as a literal string" -msgstr "sümbolit `%s' on kasutatud enam kui kord literaal sõnena" - -#: src/symtab.c:234 -#, c-format -msgid "symbol `%s' given more than one literal string" -msgstr "sümbolile `%s' on antud enam kui üks literaal sõne" - -#: src/symtab.c:270 -#, c-format -msgid "conflicting precedences for %s and %s" -msgstr "%s ja %s omavad konfliktseid prioriteete" - -#: src/symtab.c:282 -#, c-format -msgid "conflicting associativities for %s (%s) and %s (%s)" -msgstr "%s (%s) ja %s (%s) omavad konfliktseid assotsiatiivseid väärtuseid" - -#: src/symtab.c:367 -#, c-format -msgid "tokens %s and %s both assigned number %d" -msgstr "märkidele %s ja %s on mõlemale omistatud number %d" - -#: src/symtab.c:590 -#, c-format -msgid "the start symbol %s is undefined" -msgstr "stardisümbol %s ei ole defineeritud" - -#: src/symtab.c:594 -#, c-format -msgid "the start symbol %s is a token" -msgstr "stardisümbol %s on märk" - -#: lib/argmatch.c:135 -#, c-format -msgid "invalid argument %s for %s" -msgstr "vigane argument %s %s'le" - -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "segane argument %s %s'le" - -#: lib/argmatch.c:155 -msgid "Valid arguments are:" -msgstr "Lubatud argumendid on:" - -#: lib/bitset_stats.c:179 -#, c-format -msgid "%u bitset_allocs, %u freed (%.2f%%).\n" -msgstr "%u bitset_allocs, %u vabastatud (%.2f%%).\n" - -#: lib/bitset_stats.c:182 -#, c-format -msgid "%u bitset_sets, %u cached (%.2f%%)\n" -msgstr "%u bitset_sets, %u puhverdatud (%.2f%%)\n" - -#: lib/bitset_stats.c:185 -#, c-format -msgid "%u bitset_resets, %u cached (%.2f%%)\n" -msgstr "%u bitset_resets, %u puhverdatud (%.2f%%)\n" - -#: lib/bitset_stats.c:188 -#, c-format -msgid "%u bitset_tests, %u cached (%.2f%%)\n" -msgstr "%u bitset_tests, %u puhverdatud (%.2f%%)\n" - -#: lib/bitset_stats.c:192 -#, c-format -msgid "%u bitset_lists\n" -msgstr "%u bitset_lists\n" - -#: lib/bitset_stats.c:194 -msgid "count log histogram\n" -msgstr "loenduri logi histogramm\n" - -#: lib/bitset_stats.c:197 -msgid "size log histogram\n" -msgstr "suuruste logi histogramm\n" - -#: lib/bitset_stats.c:200 -msgid "density histogram\n" -msgstr "tiheduse histogramm\n" - -#: lib/bitset_stats.c:214 -msgid "" -"Bitset statistics:\n" -"\n" -msgstr "" -"Bitset statistika:\n" -"\n" - -#: lib/bitset_stats.c:217 -#, c-format -msgid "Accumulated runs = %u\n" -msgstr "Salvestatud läbimisi = %u\n" - -#: lib/bitset_stats.c:261 lib/bitset_stats.c:266 -msgid "Could not read stats file." -msgstr "Statistika faili ei saa lugeda." - -#: lib/bitset_stats.c:263 -msgid "Bad stats file size.\n" -msgstr "Vigane statistika faili suurus.\n" - -#: lib/bitset_stats.c:289 lib/bitset_stats.c:291 -msgid "Could not write stats file." -msgstr "Statistika faili ei saa kirjutada." - -#: lib/bitset_stats.c:294 -msgid "Could not open stats file for writing." -msgstr "Statistika faili ei saa kirjutamiseks avada." - -#: lib/getopt.c:688 lib/getopt.c:700 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: võti `%s' on segane\n" - -#: lib/getopt.c:733 lib/getopt.c:737 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: võti `--%s' ei luba argumenti\n" - -#: lib/getopt.c:746 lib/getopt.c:751 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: võti `%c%s' ei luba argumenti\n" - -#: lib/getopt.c:787 lib/getopt.c:800 lib/getopt.c:1089 lib/getopt.c:1102 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: võti `%s' nõuab argumenti\n" - -#: lib/getopt.c:838 lib/getopt.c:841 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: tundmatu võti `--%s'\n" - -#: lib/getopt.c:849 lib/getopt.c:852 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: tundmatu võti `%c%s'\n" - -#: lib/getopt.c:899 lib/getopt.c:902 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: lubamatu võti -- %c\n" - -#: lib/getopt.c:908 lib/getopt.c:911 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: vigane võti -- %c\n" - -#: lib/getopt.c:958 lib/getopt.c:969 lib/getopt.c:1155 lib/getopt.c:1168 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: võti nõuab argumenti -- %c\n" - -#: lib/getopt.c:1021 lib/getopt.c:1032 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: võti `-W %s' on segane\n" - -#: lib/getopt.c:1056 lib/getopt.c:1068 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: võti `-W %s' ei luba argumenti\n" - -#: lib/obstack.c:487 lib/obstack.c:490 lib/xmalloc.c:63 -msgid "memory exhausted" -msgstr "mälu on otsas" - -#: lib/quotearg.c:236 -msgid "`" -msgstr "`" - -#: lib/quotearg.c:237 -msgid "'" -msgstr "'" - -#: lib/subpipe.c:187 -#, c-format -msgid "subsidiary program `%s' could not be invoked" -msgstr "abiprogrammi `%s' ei saa käivitada" - -#: lib/subpipe.c:189 -#, c-format -msgid "subsidiary program `%s' not found" -msgstr "ei leia abiprogrammi `%s'" - -#: lib/subpipe.c:191 -#, c-format -msgid "subsidiary program `%s' failed" -msgstr "abiprogramm `%s' ebaõnnestus" - -#: lib/subpipe.c:192 -#, c-format -msgid "subsidiary program `%s' failed (exit status %d)" -msgstr "abiprogramm `%s' ebaõnnestus (lõpetamise kood %d)" - -#: lib/timevar.c:476 -msgid "" -"\n" -"Execution times (seconds)\n" -msgstr "" -"\n" -"Täitmise ajad (sekundites)\n" - -#: lib/timevar.c:526 -msgid " TOTAL :" -msgstr " KOKKU :" - -#: lib/timevar.c:562 -#, c-format -msgid "time in %s: %ld.%06ld (%ld%%)\n" -msgstr "aeg %s: %ld.%06ld (%ld%%)\n" diff --git a/po/fr.po b/po/fr.po deleted file mode 100644 index 7066ac62..00000000 --- a/po/fr.po +++ /dev/null @@ -1,1183 +0,0 @@ -# Messages français pour Bison. -# Copyright © 1996 Free Software Foundation, Inc. -# Michel Robitaille , traducteur depuis/since 1996 -# Dominique Boucher a été le traducteur de 1996 à 2000 -# -msgid "" -msgstr "" -"Project-Id-Version: GNU bison 1.875\n" -"Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2003-08-25 17:14+0200\n" -"PO-Revision-Date: 2003-01-01 20:00-0500\n" -"Last-Translator: Michel Robitaille \n" -"Language-Team: French \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ISO-8859-1\n" -"Content-Transfer-Encoding: 8-bit\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" - -#: src/complain.c:56 lib/error.c:135 lib/error.c:163 -msgid "Unknown system error" -msgstr "Erreur système inconnue" - -#: src/complain.c:79 src/complain.c:94 -msgid "warning: " -msgstr "AVERTISSEMENT: " - -#: src/complain.c:150 src/complain.c:166 -msgid "fatal error: " -msgstr "erreur fatale: " - -#: src/conflicts.c:75 -#, c-format -msgid " Conflict between rule %d and token %s resolved as shift" -msgstr "Conflit entre la règle %d et le jeton %s résolu par décalage" - -#: src/conflicts.c:83 -#, c-format -msgid " Conflict between rule %d and token %s resolved as reduce" -msgstr "Conflit entre la règle %d et le jeton %s résolu par réduction" - -#: src/conflicts.c:90 -#, c-format -msgid " Conflict between rule %d and token %s resolved as an error" -msgstr "Conflit entre la règle %d et le jeton %s résolu comme étant une erreur" - -#: src/conflicts.c:398 -#, c-format -msgid "conflicts: %d shift/reduce, %d reduce/reduce\n" -msgstr "conflits: %d décalage/réduction, %d réduction/réduction\n" - -#: src/conflicts.c:401 -#, c-format -msgid "conflicts: %d shift/reduce\n" -msgstr "conflits: %d décalage/réduction\n" - -#: src/conflicts.c:403 -#, c-format -msgid "conflicts: %d reduce/reduce\n" -msgstr "conflits: %d réduction/réduction\n" - -#: src/conflicts.c:421 -#, c-format -msgid "State %d " -msgstr "État %d" - -#: src/conflicts.c:498 -#, c-format -msgid "expected %d shift/reduce conflict" -msgid_plural "expected %d shift/reduce conflicts" -msgstr[0] "attendait %d conflit par décalage/réduction" -msgstr[1] "attendait %d conflits par décalage/réduction" - -#: src/conflicts.c:503 -msgid "expected 0 reduce/reduce conflicts" -msgstr "attendait 0 conflit par réduction/réduction" - -#: src/files.c:99 -#, c-format -msgid "cannot open file `%s'" -msgstr "ne peut ouvrir le fichier « %s »" - -#: src/files.c:115 -msgid "I/O error" -msgstr "une erreur d'E/S" - -#: src/files.c:118 -msgid "cannot close file" -msgstr "ne peut fermer le fichier" - -#: src/files.c:336 -#, c-format -msgid "conflicting outputs to file %s" -msgstr "sorties en conflit vers le fichier %s" - -#: src/getargs.c:186 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "Pour en savoir davantage, faites: « %s --help ».\n" - -#: src/getargs.c:192 -msgid "GNU bison generates parsers for LALR(1) grammars.\n" -msgstr "GNU bison génère des analyseurs pour les grammaires de type LALR(1).\n" - -#: src/getargs.c:196 -#, c-format -msgid "Usage: %s [OPTION]... FILE\n" -msgstr "Usage: %s [OPTION]... FICHIER\n" - -#: src/getargs.c:200 -msgid "" -"If a long option shows an argument as mandatory, then it is mandatory\n" -"for the equivalent short option also. Similarly for optional arguments.\n" -msgstr "" -"Si une option de forme longue montre un arguement comme étant obligatoire,\n" -"il est alors obligatoire également pour une option de forme courte.\n" -"Il en est de même pour les arguments optionnels.\n" - -#: src/getargs.c:206 -msgid "" -"Operation modes:\n" -" -h, --help display this help and exit\n" -" -V, --version output version information and exit\n" -" -y, --yacc emulate POSIX yacc\n" -msgstr "" -"Modes d'utilisation:\n" -" -h, --help afficher l'aide-mémoire\n" -" -V, --version afficher le nom et la version du logiciel\n" -" -y, --yacc émuler yacc en mode POSIX\n" - -#: src/getargs.c:213 -msgid "" -"Parser:\n" -" -S, --skeleton=FILE specify the skeleton to use\n" -" -t, --debug instrument the parser for debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n" -" -l, --no-lines don't generate `#line' directives\n" -" -n, --no-parser generate the tables only\n" -" -k, --token-table include a table of token names\n" -msgstr "" -"Analyseur:\n" -" -S, --skeleton=FICHIER utiliser le FICHIER squelette\n" -" -t, --debug activer le mode de mise au point\n" -" de l'analyseur\n" -" --locations permettre le calcul des localisations\n" -" -p, --name-prefix=PREFIXE accoler le PREFIXE aux symboles externes\n" -" -l, --no-lines ne pas générer les directives « #line »\n" -" -n, --no-parser générer les tables seulement\n" -" -r, --raw compter les jetons à partir de 3\n" -" -k, --token-table inclure la table des noms de jetons\n" - -#: src/getargs.c:225 -msgid "" -"Output:\n" -" -d, --defines also produce a header file\n" -" -r, --report=THINGS also produce details on the automaton\n" -" -v, --verbose same as `--report=state'\n" -" -b, --file-prefix=PREFIX specify a PREFIX for output files\n" -" -o, --output=FILE leave output to FILE\n" -" -g, --graph also produce a VCG description of the " -"automaton\n" -msgstr "" -"Sortie:\n" -" -d, --defines produire un fichier d'en-tête\n" -" -r, --report=CHOSES générer les détails concernant l'automate\n" -" -v, --verbose produire une explication de l'automate\n" -" -b, --file-prefix=PREFIXE utiliser le PREFIXE pour le fichier de sortie\n" -" -o, --output=FICHIER produire la sortie dans le FICHIER\n" -" -g, --graph produire aussi la description du graphe VCG de " -"l'automate\n" - -#: src/getargs.c:236 -msgid "" -"THINGS is a list of comma separated words that can include:\n" -" `state' describe the states\n" -" `itemset' complete the core item sets with their closure\n" -" `lookahead' explicitly associate lookaheads to items\n" -" `solved' describe shift/reduce conflicts solving\n" -" `all' include all the above information\n" -" `none' disable the report\n" -msgstr "" -"CHOSES est une liste de mots séparés par des virgules par les suivants:\n" -" `state' description des états\n" -" `itemset' compléter le corps du jeu d'items avec leur fermeture\n" -" `lookahead' explicitement associé les lookahead aux items\n" -" `solved' décrirer la résolution des conflits décalage/réduction\n" -" `all' inclure toutes les informations ci-haut\n" -" `none' désactiver la génération de rapport\n" - -#: src/getargs.c:247 -msgid "Report bugs to .\n" -msgstr "Rapporter toutes anomalies à .\n" - -#: src/getargs.c:264 -#, c-format -msgid "bison (GNU Bison) %s" -msgstr "bison (GNU Bison) %s" - -#: src/getargs.c:266 -msgid "Written by Robert Corbett and Richard Stallman.\n" -msgstr "Écrit par Robert Corbett et Richard Stallman.\n" - -#: src/getargs.c:270 -#, c-format -msgid "Copyright (C) %d Free Software Foundation, Inc.\n" -msgstr "Copyright © %d Free Software Foundation, Inc.\n" - -#: src/getargs.c:272 -msgid "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"Ce logiciel est libre; voir les sources pour les conditions de\n" -"reproduction. AUCUNE garantie n'est donnée; tant pour des raisons\n" -"COMMERCIALES que pour RÉPONDRE À UN BESOIN PARTICULIER.\n" - -#: src/getargs.c:438 -#, c-format -msgid "missing operand after `%s'" -msgstr "opérande manquante après « %s »" - -#: src/getargs.c:440 -#, c-format -msgid "extra operand `%s'" -msgstr "opérande superflue « %s »" - -#: src/gram.c:139 -msgid "empty" -msgstr "vide" - -#: src/gram.c:233 -msgid "Grammar" -msgstr "Grammaire" - -#: src/gram.c:321 src/reduce.c:394 -msgid "warning" -msgstr "AVERTISSEMENT" - -#: src/main.c:124 -msgid "rule never reduced because of conflicts" -msgstr "la règle n'a jamais fait de réduction en raison des conflits" - -#: src/parse-gram.y:353 -msgid "POSIX forbids declarations in the grammar" -msgstr "POSIX interdit les déclaration dans la grammaire" - -#: src/parse-gram.y:476 -msgid "missing identifier in parameter declaration" -msgstr "identificateur manquant dans la déclaration de paramètres" - -#: src/print.c:49 -#, c-format -msgid " type %d is %s\n" -msgstr " le type %d est %s\n" - -#: src/print.c:165 -#, c-format -msgid "shift, and go to state %d\n" -msgstr "décalage et aller à l'état %d\n" - -#: src/print.c:167 -#, c-format -msgid "go to state %d\n" -msgstr "aller à l'état %d\n" - -#: src/print.c:204 -msgid "error (nonassociative)\n" -msgstr "erreur (non-associative)\n" - -#: src/print.c:292 -#, c-format -msgid "reduce using rule %d (%s)" -msgstr "réduction par utilisation de la règle %d (%s)" - -#: src/print.c:294 -msgid "accept" -msgstr "accepter" - -#: src/print.c:325 src/print.c:391 -msgid "$default" -msgstr "$défaut" - -#: src/print.c:420 -#, c-format -msgid "state %d" -msgstr "état %d" - -#: src/print.c:456 -msgid "Terminals, with rules where they appear" -msgstr "Terminaux, suivis des règles où ils apparaissent" - -#: src/print.c:483 -msgid "Nonterminals, with rules where they appear" -msgstr "Non-terminaux, suivis des règles où ils apparaissent" - -#: src/print.c:512 -msgid " on left:" -msgstr " à gauche:" - -#: src/print.c:527 -msgid " on right:" -msgstr " à droite:" - -#: src/print.c:555 -msgid "Rules never reduced" -msgstr "Règles jamais réduites" - -#: src/reader.c:53 -#, c-format -msgid "multiple %s declarations" -msgstr "déclarations multiples de %s" - -#: src/reader.c:115 -#, c-format -msgid "result type clash on merge function %s: <%s> != <%s>" -msgstr "" -"conflit dans le type résultant de la fonction de fusion %s: <%s> != <%s>" - -#: src/reader.c:213 -#, c-format -msgid "rule given for %s, which is a token" -msgstr "la règle pour %s, qui est un terminal" - -#: src/reader.c:242 -#, c-format -msgid "type clash on default action: <%s> != <%s>" -msgstr "conflit de type pour l'action par défaut: <%s> != <%s>" - -#: src/reader.c:248 -msgid "empty rule for typed nonterminal, and no action" -msgstr "règle vide pour une catégorie typée et aucune action" - -#: src/reader.c:318 src/reader.c:332 src/reader.c:345 -#, c-format -msgid "only one %s allowed per rule" -msgstr "seul un %s est permis par règle" - -#: src/reader.c:328 src/reader.c:343 -#, c-format -msgid "%s affects only GLR parsers" -msgstr "%s affecte seulement les analyseurs GLR" - -#: src/reader.c:330 -#, c-format -msgid "%s must be followed by positive number" -msgstr "%s doit être suivi d'un nombre positif" - -#: src/reader.c:487 -msgid "no rules in the input grammar" -msgstr "la grammaire n'a pas de règles" - -#: src/reduce.c:242 -msgid "useless rule" -msgstr "règle inutilisable" - -#: src/reduce.c:303 -#, c-format -msgid "useless nonterminal: %s" -msgstr "non-terminal inutilisable: %s" - -#: src/reduce.c:351 -msgid "Useless nonterminals" -msgstr "Non-terminaux inutiles" - -#: src/reduce.c:364 -msgid "Terminals which are not used" -msgstr "Terminaux qui ne sont utilisés" - -#: src/reduce.c:373 -msgid "Useless rules" -msgstr "Règles inutiles" - -#: src/reduce.c:389 -#, c-format -msgid "%d rule never reduced\n" -msgid_plural "%d rules never reduced\n" -msgstr[0] "%d règle n'a jamais été réduite\n" -msgstr[1] "%d règles n'ont jamais été réduites\n" - -#: src/reduce.c:397 -#, c-format -msgid "%d useless nonterminal" -msgid_plural "%d useless nonterminals" -msgstr[0] "%d nonterminal inutilisable" -msgstr[1] "%d nonterminals inutilisables" - -#: src/reduce.c:403 -msgid " and " -msgstr " et " - -#: src/reduce.c:406 -#, c-format -msgid "%d useless rule" -msgid_plural "%d useless rules" -msgstr[0] "%d règle inutilisable" -msgstr[1] "%d règles inutilisables" - -#: src/reduce.c:436 -#, c-format -msgid "start symbol %s does not derive any sentence" -msgstr "" -"symbole de départ %s peut permettre la dérivation de n'importe quelle phrase" - -#: src/scan-gram.l:160 -msgid "stray `,' treated as white space" -msgstr "« , » errante traitée comme un blanc" - -#: src/scan-gram.l:221 -#, c-format -msgid "invalid directive: %s" -msgstr "directive invalide: %s" - -#: src/scan-gram.l:241 src/scan-gram.l:804 src/scan-gram.l:873 -#, c-format -msgid "integer out of range: %s" -msgstr "entier hors gamme: %s" - -#: src/scan-gram.l:283 -#, c-format -msgid "invalid character: %s" -msgstr "caractère invalide: %s" - -#: src/scan-gram.l:412 src/scan-gram.l:422 src/scan-gram.l:441 -#, c-format -msgid "invalid escape sequence: %s" -msgstr "séquence d'échappement invalide: %s" - -#: src/scan-gram.l:446 -#, c-format -msgid "unrecognized escape sequence: %s" -msgstr "séquence d'échappement non reconnue: %s" - -#: src/scan-gram.l:534 -#, c-format -msgid "missing `{' in `%s'" -msgstr "« { » manquante dans « %s »" - -#: src/scan-gram.l:774 -#, c-format -msgid "$$ of `%s' has no declared type" -msgstr "$$ de « %s » n'a pas son type déclaré" - -#: src/scan-gram.l:795 -#, c-format -msgid "$%d of `%s' has no declared type" -msgstr "$%d de « %s » n'a pas de type déclaré" - -#: src/scan-gram.l:840 src/scan-gram.l:908 -#, c-format -msgid "invalid value: %s" -msgstr "valeur invalide: %s" - -#: src/scan-gram.l:996 -#, c-format -msgid "missing `%s' at end of file" -msgstr "chaîne de caractères « %s » manquante en fin de fichier" - -#: src/symlist.c:97 src/symlist.c:108 -msgid "invalid $ value" -msgstr "la valeur de symbole $ n'est pas valide" - -#: src/symtab.c:84 -#, c-format -msgid "type redeclaration for %s" -msgstr "redéclaration du type de %s" - -#: src/symtab.c:101 src/symtab.c:119 -#, c-format -msgid "%s redeclaration for %s" -msgstr "redéclaration de %s pour %s" - -#: src/symtab.c:138 -#, c-format -msgid "redefining precedence of %s" -msgstr "redéfinition du niveau de priorité de %s" - -#: src/symtab.c:156 -#, c-format -msgid "symbol %s redefined" -msgstr "symbole %s redéfini" - -#: src/symtab.c:179 -#, c-format -msgid "redefining user token number of %s" -msgstr "redéfinition du jeton usager numéro de %s" - -#: src/symtab.c:206 -#, c-format -msgid "symbol %s is used, but is not defined as a token and has no rules" -msgstr "" -"le symbole %s est utilisé mais ce n'est pas un terminal et il ne possède pas " -"de règle" - -#: src/symtab.c:231 -#, c-format -msgid "symbol `%s' used more than once as a literal string" -msgstr "symbole « %s » utilisé plus d'une fois dans une chaîne litérale" - -#: src/symtab.c:234 -#, c-format -msgid "symbol `%s' given more than one literal string" -msgstr "symbole « %s » présent dans plus d'une chaîne litérale" - -#: src/symtab.c:270 -#, c-format -msgid "conflicting precedences for %s and %s" -msgstr "les priorités pour %s et %s entrent en conflit" - -#: src/symtab.c:282 -#, c-format -msgid "conflicting associativities for %s (%s) and %s (%s)" -msgstr "conflits d'associativités pour %s (%s) et %s (%s)" - -#: src/symtab.c:367 -#, c-format -msgid "tokens %s and %s both assigned number %d" -msgstr "les jetons %s et %s se sont vus assigner le nombre %d" - -#: src/symtab.c:590 -#, c-format -msgid "the start symbol %s is undefined" -msgstr "le symbole de départ %s n'est pas défini" - -#: src/symtab.c:594 -#, c-format -msgid "the start symbol %s is a token" -msgstr "le symbole de départ %s est un terminal" - -#: lib/argmatch.c:135 -#, c-format -msgid "invalid argument %s for %s" -msgstr "argument invalide %s pour %s" - -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "argument ambiguë %s pour %s" - -#: lib/argmatch.c:155 -msgid "Valid arguments are:" -msgstr "Arguments valides sont:" - -#: lib/bitset_stats.c:179 -#, c-format -msgid "%u bitset_allocs, %u freed (%.2f%%).\n" -msgstr "%u bitset_allocs, %u libérés (%.2f%%).\n" - -#: lib/bitset_stats.c:182 -#, c-format -msgid "%u bitset_sets, %u cached (%.2f%%)\n" -msgstr "%u bitset_sets, %u dans la cache (%.2f%%)\n" - -#: lib/bitset_stats.c:185 -#, c-format -msgid "%u bitset_resets, %u cached (%.2f%%)\n" -msgstr "%u bitset_resets, %u dans la cache (%.2f%%)\n" - -#: lib/bitset_stats.c:188 -#, c-format -msgid "%u bitset_tests, %u cached (%.2f%%)\n" -msgstr "%u bitset_tests, %u dans la cache (%.2f%%)\n" - -#: lib/bitset_stats.c:192 -#, c-format -msgid "%u bitset_lists\n" -msgstr "%u bitset_lists\n" - -#: lib/bitset_stats.c:194 -msgid "count log histogram\n" -msgstr "histogramme des compteurs\n" - -#: lib/bitset_stats.c:197 -msgid "size log histogram\n" -msgstr "taille de l'histogramme des compteurs\n" - -#: lib/bitset_stats.c:200 -msgid "density histogram\n" -msgstr "densité de l'histogramme\n" - -#: lib/bitset_stats.c:214 -msgid "" -"Bitset statistics:\n" -"\n" -msgstr "" -"Statistiques des bitset:\n" -"\n" - -#: lib/bitset_stats.c:217 -#, c-format -msgid "Accumulated runs = %u\n" -msgstr "Exécutions accumulées = %u\n" - -#: lib/bitset_stats.c:261 lib/bitset_stats.c:266 -msgid "Could not read stats file." -msgstr "Ne peut lire le fichier de stats." - -#: lib/bitset_stats.c:263 -msgid "Bad stats file size.\n" -msgstr "Taille erronée du fichier de stats.\n" - -#: lib/bitset_stats.c:289 lib/bitset_stats.c:291 -msgid "Could not write stats file." -msgstr "Ne peut écrire le fichier de stats." - -#: lib/bitset_stats.c:294 -msgid "Could not open stats file for writing." -msgstr "Ne ouvrir en écriture le fichier de stats." - -#: lib/getopt.c:688 lib/getopt.c:700 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: l'option %s est ambigüe\n" - -#: lib/getopt.c:733 lib/getopt.c:737 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: l'option « --%s » n'admet pas d'argument\n" - -#: lib/getopt.c:746 lib/getopt.c:751 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: l'option « %c%s » n'admet pas d'argument\n" - -#: lib/getopt.c:787 lib/getopt.c:800 lib/getopt.c:1089 lib/getopt.c:1102 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: l'option « %s » requiert un argument\n" - -#: lib/getopt.c:838 lib/getopt.c:841 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: l'option « --%s » est inconnue\n" - -#: lib/getopt.c:849 lib/getopt.c:852 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: l'option « %c%s » est inconnue\n" - -#: lib/getopt.c:899 lib/getopt.c:902 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: option illégale -- %c\n" - -#: lib/getopt.c:908 lib/getopt.c:911 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: option non valide -- %c\n" - -#: lib/getopt.c:958 lib/getopt.c:969 lib/getopt.c:1155 lib/getopt.c:1168 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: l'option requiert un argument -- %c\n" - -#: lib/getopt.c:1021 lib/getopt.c:1032 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: l'option « -W %s » est ambiguë\n" - -#: lib/getopt.c:1056 lib/getopt.c:1068 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: l'option « -W %s » n'admet pas d'argument\n" - -#: lib/obstack.c:487 lib/obstack.c:490 lib/xmalloc.c:63 -msgid "memory exhausted" -msgstr "mémoire épuisée" - -#: lib/quotearg.c:236 -msgid "`" -msgstr "`" - -#: lib/quotearg.c:237 -msgid "'" -msgstr "'" - -#: lib/subpipe.c:187 -#, c-format -msgid "subsidiary program `%s' could not be invoked" -msgstr "programme subsidiaire « %s » n'a pu être invoqué" - -#: lib/subpipe.c:189 -#, c-format -msgid "subsidiary program `%s' not found" -msgstr "programme subsidiaire « %s » n'a pas été repéré" - -#: lib/subpipe.c:191 -#, c-format -msgid "subsidiary program `%s' failed" -msgstr "programme subsidiaire « %s » a échoué" - -#: lib/subpipe.c:192 -#, c-format -msgid "subsidiary program `%s' failed (exit status %d)" -msgstr "programme subsidiaire « %s » a échoué (statut d'exécution %d)" - -#: lib/timevar.c:476 -msgid "" -"\n" -"Execution times (seconds)\n" -msgstr "" -"\n" -"Temps d'exécution (secondes)\n" - -#: lib/timevar.c:526 -msgid " TOTAL :" -msgstr " TOTAL :" - -#: lib/timevar.c:562 -#, c-format -msgid "time in %s: %ld.%06ld (%ld%%)\n" -msgstr "temps dans %s: %ld.%06ld (%ld%%)\n" - -#~ msgid "%d shift/reduce conflict" -#~ msgid_plural "%d shift/reduce conflicts" -#~ msgstr[0] "%d conflit par décalage/réduction" -#~ msgstr[1] "%d conflits par décalage/réduction" - -#~ msgid "and" -#~ msgstr "et" - -#~ msgid "conflicts: " -#~ msgstr "conflits: " - -#~ msgid "State %d contains " -#~ msgstr "L'état %d contient " - -#~ msgid "too many gotos (max %d)" -#~ msgstr "nombre trop grand de « goto » (Max %d)" - -#~ msgid "too many symbols (tokens plus nonterminals); maximum %d" -#~ msgstr "trop de symboles (jeton plus non terminaux); maximum %d" - -#~ msgid ": unexpected end of file in a comment\n" -#~ msgstr ": fin de fichier inattendue dans un commentaire\n" - -#~ msgid ": unexpected end of file in a string\n" -#~ msgstr ": fin de fichier inattendue dans une chaîne\n" - -#~ msgid ": unexpected end of file in a character\n" -#~ msgstr ": fin de fichier inattendue dans un caractère\n" - -#~ msgid ": unexpected end of file in a braced code\n" -#~ msgstr ": fin de fichier inattendue dans du code entre accolades\n" - -#~ msgid ": unexpected end of file in a prologue\n" -#~ msgstr ": fin de fichier inattendue dans un prologue\n" - -#~ msgid "%s is invalid" -#~ msgstr "%s n'est pas valide" - -#~ msgid "too many states (max %d)" -#~ msgstr "nombre trop grand d'états (max %d)" - -#~ msgid "%s: no grammar file given\n" -#~ msgstr "%s: grammaire manquante\n" - -#~ msgid "%s: extra arguments ignored after `%s'\n" -#~ msgstr "%s: arguments supplémentaires ignorés après « %s »\n" - -#~ msgid "two @prec's in a row" -#~ msgstr "deux @prec de suite" - -#~ msgid "%%dprec affects only GLR parsers" -#~ msgstr "%%dprec affecte seulement les analyseurs GLR" - -#~ msgid "only one %%dprec allowed per rule" -#~ msgstr "seul un %%dprec est permis par règle" - -#~ msgid "state_list_append (state = %d, symbol = %d (%s))\n" -#~ msgstr "state_list_append (état = %d, symbole = %d (%s))\n" - -#~ msgid "Entering new_itemsets, state = %d\n" -#~ msgstr "Entrant dans new_itemsets, état = %d\n" - -#~ msgid "Entering get_state, symbol = %d (%s)\n" -#~ msgstr "Entrant dans get_state, symbole = %d (%s)\n" - -#~ msgid "Exiting get_state => %d\n" -#~ msgstr "Sortant de get_state => %d\n" - -#~ msgid "Entering append_states, state = %d\n" -#~ msgstr "Entrant dans append_states, état = %d\n" - -#~ msgid "Processing state %d (reached by %s)\n" -#~ msgstr "Traitement de l'état %d (atteint par %s)\n" - -#~ msgid "undefined associativity" -#~ msgstr "associativité indéfinie" - -#~ msgid "Closure: %s\n" -#~ msgstr "Fermeture: %s\n" - -#~ msgid " (rule %d)\n" -#~ msgstr " (règle %d)\n" - -#~ msgid "RTC: Firsts Input" -#~ msgstr "RTC: premières entrées" - -#~ msgid "RTC: Firsts Output" -#~ msgstr "RTC: premières sorties" - -#~ msgid "input" -#~ msgstr "entrée" - -#~ msgid "output" -#~ msgstr "sortie" - -#~ msgid "" -#~ "Variables\n" -#~ "---------\n" -#~ "\n" -#~ msgstr "" -#~ "Variables\n" -#~ "---------\n" -#~ "\n" - -#~ msgid "Value Sprec Sassoc Tag\n" -#~ msgstr "Valeur Sprec Sassoc Étiquette\n" - -#~ msgid "" -#~ "Rules\n" -#~ "-----\n" -#~ "\n" -#~ msgstr "" -#~ "Règles\n" -#~ "------\n" -#~ "\n" - -#~ msgid "" -#~ "Num (Prec, Assoc, Useful, Ritem Range) Lhs -> Rhs (Ritem range) [Num]\n" -#~ msgstr "" -#~ "Num (Prec, Assoc, Utile, Ritem étendue) Lhs -> Rhs (Ritem étendue) " -#~ "[Num]\n" - -#~ msgid "" -#~ "Rules interpreted\n" -#~ "-----------------\n" -#~ "\n" -#~ msgstr "" -#~ "Règles interprétées\n" -#~ "-------------------\n" -#~ "\n" - -#~ msgid "Lookaheads: BEGIN\n" -#~ msgstr "Lookaheads: DÉBUT\n" - -#~ msgid "State %d: %d lookaheads\n" -#~ msgstr "État %d: %d lookaheads\n" - -#~ msgid " on %d (%s) -> rule %d\n" -#~ msgstr " sur %d (%s) -> règle %d\n" - -#~ msgid "Lookaheads: END\n" -#~ msgstr "Lookaheads: FIN\n" - -#~ msgid "relation_transpose: input\n" -#~ msgstr "relation_transpose: entrée\n" - -#~ msgid "relation_transpose: output\n" -#~ msgstr "relation_transpose: sortie\n" - -#~ msgid "growing table and check from: %lu to %lu\n" -#~ msgstr "table en croissance et vérification depuis %lu à %lu\n" - -#~ msgid "base_t too small to hold %d\n" -#~ msgstr "base_t trop petite pour contenir %d\n" - -#~ msgid "reduce" -#~ msgstr "réduction" - -#~ msgid "shift" -#~ msgstr "décalage" - -#~ msgid "%s contains " -#~ msgstr "%s contient " - -#~ msgid "`%s' is no longer supported" -#~ msgstr "« %s » n'est plus supporté" - -#~ msgid "unexpected `/' found and ignored" -#~ msgstr "« / » inattendu et ignoré" - -#~ msgid "unterminated comment" -#~ msgstr "le commentaire ne se termine pas" - -#~ msgid "unescaped newline in constant" -#~ msgstr "retour de chariot sans échappement dans une constante" - -#~ msgid "octal value outside range 0...255: `\\%o'" -#~ msgstr "valeur octale à l'extérieur de l'intervalle 0...255: « \\%o »" - -#~ msgid "hexadecimal value above 255: `\\x%x'" -#~ msgstr "valeur hexadécimale supérieure à 255: « \\x%x »" - -#~ msgid "unknown escape sequence: `\\' followed by `%s'" -#~ msgstr "séquence d'échappement inconnue: « \\ » suivie de « %s »" - -#~ msgid "unterminated type name at end of file" -#~ msgstr "le nom de type ne se termine pas avant la fin de fichier" - -#~ msgid "unterminated type name" -#~ msgstr "le nom de type ne se termine pas" - -#~ msgid "use \"...\" for multi-character literal tokens" -#~ msgstr "" -#~ "utilisez \"...\" pour les terminaux litéraux de plusieurs caractères" - -#~ msgid "`%s' supports no argument: %s" -#~ msgstr "« %s » ne supporte aucun argument: %s" - -#~ msgid "`%s' requires an argument" -#~ msgstr "« %s »: requiert un argument" - -#~ msgid " %-4s\terror (nonassociative)\n" -#~ msgstr " %-4s\terreur (non-associatif)\n" - -#~ msgid "" -#~ " $default\treduce using rule %d (%s)\n" -#~ "\n" -#~ msgstr "" -#~ " $défaut\tréduction par la règle %d (%s)\n" -#~ "\n" - -#~ msgid " %-4s\t[reduce using rule %d (%s)]\n" -#~ msgstr " %-4s\t[réduction par la règle %d (%s)]\n" - -#~ msgid " %-4s\treduce using rule %d (%s)\n" -#~ msgstr " %-4s\tréduction par la règle %d (%s)\n" - -#~ msgid " $default\treduce using rule %d (%s)\n" -#~ msgstr " $défaut\tréduction par la règle %d (%s)\n" - -#~ msgid " $default\taccept\n" -#~ msgstr " $défaut\taccepter\n" - -#~ msgid " NO ACTIONS\n" -#~ msgstr " PAS D'ACTION\n" - -#~ msgid "Number, Line, Rule" -#~ msgstr "Nombre, ligne, règle" - -#~ msgid " %3d %3d %s ->" -#~ msgstr " %3d %3d %s ->" - -#~ msgid " Skipping to next \\n" -#~ msgstr " Saut jusqu'au prochain \\n" - -#~ msgid " Skipping to next %c" -#~ msgstr " Saut jusqu'au prochain %c" - -#~ msgid "unterminated string" -#~ msgstr "chaîne de caractère non terminée" - -#~ msgid "unterminated `%{' definition" -#~ msgstr "" -#~ "La section de définition « %{ » ne termine pas avant la fin du fichier" - -#~ msgid "Premature EOF after %s" -#~ msgstr "Fin de fichier prématutée après %s" - -#~ msgid "`%s' is invalid in %s" -#~ msgstr "« %s » n'est pas valide dans %s" - -#~ msgid "invalid %s declaration" -#~ msgstr "la déclaration %s n'est pas valide" - -#~ msgid "%type declaration has no " -#~ msgstr "la déclaration %type n'a pas de " - -#~ msgid "invalid %%type declaration due to item: %s" -#~ msgstr "la déclaration %%type n'est pas valide en raison de l'item: %s" - -#~ msgid "invalid text (%s) - number should be after identifier" -#~ msgstr "" -#~ "le texte n'est pas valide (%s) - le nombre devrait suivre l'identificateur" - -#~ msgid "unexpected item: %s" -#~ msgstr "item inattendu: %s" - -#~ msgid "unmatched %s" -#~ msgstr "non appariement de %s" - -#~ msgid "argument of %%expect is not an integer" -#~ msgstr "l'argument de %%expect n'est pas un entier" - -#~ msgid "unrecognized item %s, expected an identifier" -#~ msgstr "item %s non reconnu, un identificateur est attendu" - -#~ msgid "expected string constant instead of %s" -#~ msgstr "chaîne de caractères constante attendue plutôt que %s" - -#~ msgid "no input grammar" -#~ msgstr "aucune grammaire en entrée" - -#~ msgid "unknown character: %s" -#~ msgstr "caractère inconnu: %s" - -#~ msgid "ill-formed rule: initial symbol not followed by colon" -#~ msgstr "règle mal formée: le symbole initial n'est pas suivi de « : »" - -#~ msgid "grammar starts with vertical bar" -#~ msgstr "la grammaire débute par une barre verticale" - -#~ msgid "previous rule lacks an ending `;'" -#~ msgstr "règle précédente manque une terminaison « ; »" - -#~ msgid "%%guard present but %%semantic_parser not specified" -#~ msgstr "%%guard est présent mais %%semantic_parser n'est pas spécifié" - -#~ msgid "two actions at end of one rule" -#~ msgstr "deux actions à la fin d'une même règle" - -#~ msgid "maximum table size (%d) exceeded" -#~ msgstr "taille maximale de la table (%d) dépassée" - -#~ msgid " $ \tgo to state %d\n" -#~ msgstr " $ \taller à l'état %d\n" - -#~ msgid "unterminated %guard clause" -#~ msgstr "clause %guard non terminée" - -#~ msgid "%s: internal error: %s\n" -#~ msgstr "%s: erreur interne: %s\n" - -#~ msgid "DERIVES" -#~ msgstr "DÉRIVES" - -#~ msgid "%s derives" -#~ msgstr "%s dérive" - -#~ msgid "Entering set_nullable" -#~ msgstr "Entré dans set_nullable" - -#~ msgid "" -#~ "reduced %s defines %d terminal%s, %d nonterminal%s, and %d production%s.\n" -#~ msgstr "" -#~ "la réduction de %s définit %d terminal%s, %d catégorie%s et %d production%" -#~ "s.\n" - -#~ msgid " 1 shift/reduce conflict" -#~ msgstr " 1 conflit décalage/réduction" - -#~ msgid "%s contains" -#~ msgstr "%s contient" - -#~ msgid "\t\t/* empty */" -#~ msgstr "\t\t/* epsilon */" - -#~ msgid "multiple %%header_extension declarations" -#~ msgstr "multiples déclarations %%header_extension" - -#~ msgid "multiple %%source_extension declarations" -#~ msgstr "multiples déclarations %%source_extension" - -#~ msgid "vcg graph: no such color." -#~ msgstr "graphe vcg: pas de telle couleur" - -#~ msgid "vcg graph: no such text mode" -#~ msgstr "graphe vcg: pas de tel mode texte" - -#~ msgid "vcg graph: no such shape" -#~ msgstr "graphe vcg: pas de telle forme" - -#~ msgid "vcg graph: no such decision" -#~ msgstr "graphe vcg: pas de telle décision" - -#~ msgid "vcg graph: no such an orientation" -#~ msgstr "graphe vcg: pas de telle orientation" - -#~ msgid "vcg graph: no such an alignement" -#~ msgstr "graphe vcg: pas de tel alignement" - -#~ msgid "vcg graph: no such an arrow mode" -#~ msgstr "graphe vcg: pas de tel mode de flèche" - -#~ msgid "vcg graph: no such crossing_type" -#~ msgstr "graphe vcg: pas de tel type de croisement (crossing_type)" - -#~ msgid "vcg graph: no such view" -#~ msgstr "graphe vcg: pas de tel vue" - -#~ msgid "vcg graph: no such linestyle" -#~ msgstr "graphe vcg: pas de tel style de ligne" - -#~ msgid "vcg graph: no such an arrowstyle" -#~ msgstr "graphe vcg: pas de tel style de flèche" - -#~ msgid "" -#~ "\n" -#~ "\n" -#~ "\n" -#~ "DERIVES\n" -#~ "\n" -#~ msgstr "" -#~ "\n" -#~ "\n" -#~ "\n" -#~ "DERIVES\n" -#~ "\n" - -#~ msgid "unterminated comment at end of file" -#~ msgstr "le commentaire ne se termine pas avant la fin du fichier" - -#~ msgid "unmatched close-brace (`}')" -#~ msgstr "accolade fermante `}' non appariée" - -#~ msgid "@%s is invalid" -#~ msgstr "@%s n'est pas valide" - -#~ msgid "unmatched right brace (`}')" -#~ msgstr "accolade fermante `}' non appariée" - -#~ msgid "ill-formed %type declaration" -#~ msgstr "déclaration %type mal formée" - -#~ msgid "" -#~ "\n" -#~ "\n" -#~ "\n" -#~ "FIRSTS\n" -#~ "\n" -#~ msgstr "" -#~ "\n" -#~ "\n" -#~ "\n" -#~ "FIRSTS\n" -#~ "\n" - -#~ msgid "" -#~ "\n" -#~ "\n" -#~ "%s firsts\n" -#~ "\n" -#~ msgstr "" -#~ "\n" -#~ "\n" -#~ "%s firsts\n" -#~ "\n" - -#~ msgid "" -#~ "\n" -#~ "\n" -#~ "%s derives\n" -#~ "\n" -#~ msgstr "" -#~ "\n" -#~ "\n" -#~ "%s derives\n" -#~ "\n" - -#~ msgid "" -#~ "Usage: %s [-dhklntvyV] [-b file-prefix] [-o outfile] [-p name-prefix]\n" -#~ " [--debug] [--defines] [--fixed-output-files] [--no-lines]\n" -#~ " [--verbose] [--version] [--help] [--yacc]\n" -#~ " [--no-parser] [--token-table]\n" -#~ " [--file-prefix=prefix] [--name-prefix=prefix]\n" -#~ " [--output=outfile] grammar-file\n" -#~ msgstr "" -#~ "Usage: %s [-dhklntvyV] [-b préfixe-de-fichier] [-o sortie] [-p préfixe-de-" -#~ "nom]\n" -#~ " [--debug] [--defines] [--fixed-output-files] [--no-lines]\n" -#~ " [--verbose] [--version] [--help] [--yacc]\n" -#~ " [--no-parser] [--token-table]\n" -#~ " [--file-prefix=préfixe] [--name-prefix=préfixe]\n" -#~ " [--output=outfile] grammaire\n" - -#~ msgid "gotos" -#~ msgstr "gotos" - -#~ msgid "\"%s\", line %d: %s\n" -#~ msgstr "\"%s\", ligne %d: %s\n" - -#~ msgid "(\"%s\", line %d) error: %s\n" -#~ msgstr "(\"%s\", ligne %d) erreur: %s\n" - -#~ msgid "limit of %d exceeded, too many %s" -#~ msgstr "limite de %d dépassée, trop de %s" - -#~ msgid "unterminated comment in `%{' definition" -#~ msgstr "le commentaire ne se termine pas dans la section de définition (%{)" - -#~ msgid "invalid @-construct" -#~ msgstr "la construction «@» n'est pas valide" diff --git a/po/hr.po b/po/hr.po deleted file mode 100644 index 2246a6ae..00000000 --- a/po/hr.po +++ /dev/null @@ -1,896 +0,0 @@ -# Translation of bision to Croatian -# Copyright (C) 2002 Free Software Foundation, Inc. -# Denis Lackovic , 2002. -# This file is distributed under the same license as the bison package. -# Denis Lackovic , 2002. -# -msgid "" -msgstr "" -"Project-Id-Version: bison 1.34a\n" -"Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2003-08-25 17:14+0200\n" -"PO-Revision-Date: 2002-04-10 22:20+01\n" -"Last-Translator: Denis Lackovic \n" -"Language-Team: Croatian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=iso-8859-2\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n==1 ? 0 : 1);\n" - -#: src/complain.c:56 lib/error.c:135 lib/error.c:163 -msgid "Unknown system error" -msgstr "Nepoznata sistemska gre¹ka" - -#: src/complain.c:79 src/complain.c:94 -msgid "warning: " -msgstr "upozorenje:" - -#: src/complain.c:150 src/complain.c:166 -msgid "fatal error: " -msgstr "fatalna gre¹ka:" - -#: src/conflicts.c:75 -#, fuzzy, c-format -msgid " Conflict between rule %d and token %s resolved as shift" -msgstr "Konflikt u stanju %d izmeðu pravila %d i znaka %s razrije¹en kao %s.\n" - -#: src/conflicts.c:83 -#, fuzzy, c-format -msgid " Conflict between rule %d and token %s resolved as reduce" -msgstr "Konflikt u stanju %d izmeðu pravila %d i znaka %s razrije¹en kao %s.\n" - -#: src/conflicts.c:90 -#, fuzzy, c-format -msgid " Conflict between rule %d and token %s resolved as an error" -msgstr "Konflikt u stanju %d izmeðu pravila %d i znaka %s razrije¹en kao %s.\n" - -#: src/conflicts.c:398 -#, c-format -msgid "conflicts: %d shift/reduce, %d reduce/reduce\n" -msgstr "" - -#: src/conflicts.c:401 -#, fuzzy, c-format -msgid "conflicts: %d shift/reduce\n" -msgstr " %d pomakni/reduciraj" - -#: src/conflicts.c:403 -#, fuzzy, c-format -msgid "conflicts: %d reduce/reduce\n" -msgstr " %d reduviraj/reduciraj" - -#: src/conflicts.c:421 -#, fuzzy, c-format -msgid "State %d " -msgstr "stanje %d" - -#: src/conflicts.c:498 -#, fuzzy, c-format -msgid "expected %d shift/reduce conflict" -msgid_plural "expected %d shift/reduce conflicts" -msgstr[0] "oèekujem %d pomakni/reduciraj konflikt\n" -msgstr[1] "oèekujem %d pomakni/reduciraj konflikata\n" - -#: src/conflicts.c:503 -#, fuzzy -msgid "expected 0 reduce/reduce conflicts" -msgstr "%d reduciraj/reduciraj konflikt" - -#: src/files.c:99 -#, c-format -msgid "cannot open file `%s'" -msgstr "ne mogu otvoriti datoteku `%s'" - -#: src/files.c:115 -#, fuzzy -msgid "I/O error" -msgstr "gre¹ka" - -#: src/files.c:118 -msgid "cannot close file" -msgstr "ne mogu zatvoriti datoteku" - -#: src/files.c:336 -#, fuzzy, c-format -msgid "conflicting outputs to file %s" -msgstr "konfliktne asocijativne vrijednosti za %s i %s" - -#: src/getargs.c:186 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "Poku¹aj `%s --help' za vi¹e informacija.\n" - -#: src/getargs.c:192 -msgid "GNU bison generates parsers for LALR(1) grammars.\n" -msgstr "GNU bison generira parsere za LALR(1) gramatike.\n" - -#: src/getargs.c:196 -#, c-format -msgid "Usage: %s [OPTION]... FILE\n" -msgstr "Kori¹tenje: %s [OPCIJA]... DATOTEKA\n" - -#: src/getargs.c:200 -msgid "" -"If a long option shows an argument as mandatory, then it is mandatory\n" -"for the equivalent short option also. Similarly for optional arguments.\n" -msgstr "" -"Ako duga opcija ka¾e da je argument obavezan, tada je on obavezan\n" -"i za ekvivalentnu kratku opciju. Slièno je i za opcionalne argumente.\n" - -#: src/getargs.c:206 -msgid "" -"Operation modes:\n" -" -h, --help display this help and exit\n" -" -V, --version output version information and exit\n" -" -y, --yacc emulate POSIX yacc\n" -msgstr "" -"Naèini rada:\n" -" -h, --help prika¾i ovu pomoæ i izaði\n" -" -V, --version prika¾i verziju i izaði\n" -" -y, --yacc emuliraj POSIX yacc\n" - -#: src/getargs.c:213 -msgid "" -"Parser:\n" -" -S, --skeleton=FILE specify the skeleton to use\n" -" -t, --debug instrument the parser for debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n" -" -l, --no-lines don't generate `#line' directives\n" -" -n, --no-parser generate the tables only\n" -" -k, --token-table include a table of token names\n" -msgstr "" -"Parser:\n" -" -S, --skeleton=DATOTEKA specificiraj kostur za uporabu\n" -" -t, --debug pripremi parser za deugiranje\n" -" --locations omoguæi izraèunavanje lokacija\n" -" -p, --name-prefix=PREFIKS stavi PREFIX ispred vanjskih simbola\n" -" -l, --no-lines ne eneriraj `#line' direktive\n" -" -n, --no-parser generiraj samo tablice\n" -" -k, --token-table ukljuèi tablicu imena znakova\n" - -#: src/getargs.c:225 -#, fuzzy -msgid "" -"Output:\n" -" -d, --defines also produce a header file\n" -" -r, --report=THINGS also produce details on the automaton\n" -" -v, --verbose same as `--report=state'\n" -" -b, --file-prefix=PREFIX specify a PREFIX for output files\n" -" -o, --output=FILE leave output to FILE\n" -" -g, --graph also produce a VCG description of the " -"automaton\n" -msgstr "" -"Izlaz:\n" -" -d, --defines takoðer proizvedi header datoteku\n" -" -v, --verbose takoðer proizvedi obja¹njenje automata\n" -" -b, --file-prefix=PREFIKS specificiraj PREFIKS za izlazne datoteke\n" -" -o, --output=DATOTEKA ispi¹i izlaz u DATOTEKU\n" -" -g, --graph takoðer proizvedi VCG opis automata\n" - -#: src/getargs.c:236 -msgid "" -"THINGS is a list of comma separated words that can include:\n" -" `state' describe the states\n" -" `itemset' complete the core item sets with their closure\n" -" `lookahead' explicitly associate lookaheads to items\n" -" `solved' describe shift/reduce conflicts solving\n" -" `all' include all the above information\n" -" `none' disable the report\n" -msgstr "" - -#: src/getargs.c:247 -msgid "Report bugs to .\n" -msgstr "Izvjesti o bugovima na .\n" - -#: src/getargs.c:264 -#, c-format -msgid "bison (GNU Bison) %s" -msgstr "bison (GNU Bison) %s" - -#: src/getargs.c:266 -msgid "Written by Robert Corbett and Richard Stallman.\n" -msgstr "" - -#: src/getargs.c:270 -#, fuzzy, c-format -msgid "Copyright (C) %d Free Software Foundation, Inc.\n" -msgstr "" -"Copyright 1984, 1986, 1989, 1992, 2000, 2001, 2002\n" -"Free Software Foundation, Inc.\n" - -#: src/getargs.c:272 -msgid "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"Ovo je slobodni softver; pogledajte kod kako biste doznali uvjete " -"kopiranja. NEMA\n" -"garancije; èak ni tvrdnje o ISPLATIVOSTI ili POGODNOSTI ZA NEKU SVRHU.\n" - -#: src/getargs.c:438 -#, c-format -msgid "missing operand after `%s'" -msgstr "" - -#: src/getargs.c:440 -#, c-format -msgid "extra operand `%s'" -msgstr "" - -#: src/gram.c:139 -msgid "empty" -msgstr "prazno" - -#: src/gram.c:233 -msgid "Grammar" -msgstr "Gramatika" - -#: src/gram.c:321 src/reduce.c:394 -#, fuzzy -msgid "warning" -msgstr "upozorenje:" - -#: src/main.c:124 -msgid "rule never reduced because of conflicts" -msgstr "" - -#: src/parse-gram.y:353 -msgid "POSIX forbids declarations in the grammar" -msgstr "" - -#: src/parse-gram.y:476 -msgid "missing identifier in parameter declaration" -msgstr "" - -#: src/print.c:49 -#, c-format -msgid " type %d is %s\n" -msgstr " tip %d je %s\n" - -#: src/print.c:165 -#, fuzzy, c-format -msgid "shift, and go to state %d\n" -msgstr " %-4s\tpomakni i idi u stanje %d\n" - -#: src/print.c:167 -#, fuzzy, c-format -msgid "go to state %d\n" -msgstr " $ \tidu u stanje %d\n" - -#: src/print.c:204 -#, fuzzy -msgid "error (nonassociative)\n" -msgstr "%-4s\tgre¹ka (nonassociative)" - -#: src/print.c:292 -#, fuzzy, c-format -msgid "reduce using rule %d (%s)" -msgstr "$default\treduciraj koristeæi pravilo %d (%s)" - -#: src/print.c:294 -msgid "accept" -msgstr "" - -#: src/print.c:325 src/print.c:391 -msgid "$default" -msgstr "" - -#: src/print.c:420 -#, c-format -msgid "state %d" -msgstr "stanje %d" - -#: src/print.c:456 -msgid "Terminals, with rules where they appear" -msgstr "Zavr¹ni znakovi, sa pravilima gdje se pojavljuju" - -#: src/print.c:483 -msgid "Nonterminals, with rules where they appear" -msgstr "Nezavr¹ni znakovi, sa pravilima gdje se pojavljuju" - -#: src/print.c:512 -msgid " on left:" -msgstr "s lijeva:" - -#: src/print.c:527 -msgid " on right:" -msgstr "s desna:" - -#: src/print.c:555 -#, fuzzy -msgid "Rules never reduced" -msgstr "%d pravilo nije nikad reducirano\n" - -#: src/reader.c:53 -#, c-format -msgid "multiple %s declarations" -msgstr "vi¹estruke %s deklaracije" - -#: src/reader.c:115 -#, c-format -msgid "result type clash on merge function %s: <%s> != <%s>" -msgstr "" - -#: src/reader.c:213 -#, c-format -msgid "rule given for %s, which is a token" -msgstr "pravilo dato za %s, a to je znak" - -#: src/reader.c:242 -#, fuzzy, c-format -msgid "type clash on default action: <%s> != <%s>" -msgstr "sudar tipova (`%s' `%s') na deaultnoj akciji" - -#: src/reader.c:248 -msgid "empty rule for typed nonterminal, and no action" -msgstr "prazno pravilo za nezavr¹ni znak, i nema akcije" - -#: src/reader.c:318 src/reader.c:332 src/reader.c:345 -#, c-format -msgid "only one %s allowed per rule" -msgstr "" - -#: src/reader.c:328 src/reader.c:343 -#, c-format -msgid "%s affects only GLR parsers" -msgstr "" - -#: src/reader.c:330 -#, c-format -msgid "%s must be followed by positive number" -msgstr "" - -#: src/reader.c:487 -msgid "no rules in the input grammar" -msgstr "nema pravila u ulaznoj gramatici" - -#: src/reduce.c:242 -#, fuzzy -msgid "useless rule" -msgstr "%d beskorisno pravilo" - -#: src/reduce.c:303 -#, fuzzy, c-format -msgid "useless nonterminal: %s" -msgstr "Beskorisni nezavr¹ni znakovi:" - -#: src/reduce.c:351 -#, fuzzy -msgid "Useless nonterminals" -msgstr "Beskorisni nezavr¹ni znakovi:" - -#: src/reduce.c:364 -#, fuzzy -msgid "Terminals which are not used" -msgstr "Zavr¹ni znakovi koji nisu kori¹teni:" - -#: src/reduce.c:373 -#, fuzzy -msgid "Useless rules" -msgstr "Beskorisna pravila:" - -#: src/reduce.c:389 -#, c-format -msgid "%d rule never reduced\n" -msgid_plural "%d rules never reduced\n" -msgstr[0] "%d pravilo nije nikad reducirano\n" -msgstr[1] "%d pravila nisu nikad reducirana\n" - -#: src/reduce.c:397 -#, c-format -msgid "%d useless nonterminal" -msgid_plural "%d useless nonterminals" -msgstr[0] "%d beskorisan nezavr¹ni znak" -msgstr[1] "%d beskorisnih nezavr¹nih znakova" - -#: src/reduce.c:403 -msgid " and " -msgstr " i" - -#: src/reduce.c:406 -#, c-format -msgid "%d useless rule" -msgid_plural "%d useless rules" -msgstr[0] "%d beskorisno pravilo" -msgstr[1] "%d beskorisnih pravila" - -#: src/reduce.c:436 -#, fuzzy, c-format -msgid "start symbol %s does not derive any sentence" -msgstr "Poèetni simbol %s ne daje niti jednu reèenicu" - -#: src/scan-gram.l:160 -msgid "stray `,' treated as white space" -msgstr "" - -#: src/scan-gram.l:221 -#, fuzzy, c-format -msgid "invalid directive: %s" -msgstr "nedozvoljeni ulaz: %s" - -#: src/scan-gram.l:241 src/scan-gram.l:804 src/scan-gram.l:873 -#, c-format -msgid "integer out of range: %s" -msgstr "" - -#: src/scan-gram.l:283 -#, fuzzy, c-format -msgid "invalid character: %s" -msgstr "nepoznati znak: %s" - -#: src/scan-gram.l:412 src/scan-gram.l:422 src/scan-gram.l:441 -#, fuzzy, c-format -msgid "invalid escape sequence: %s" -msgstr "nedozvoljeni ulaz: %s" - -#: src/scan-gram.l:446 -#, fuzzy, c-format -msgid "unrecognized escape sequence: %s" -msgstr "neprepoznati: %s" - -#: src/scan-gram.l:534 -#, c-format -msgid "missing `{' in `%s'" -msgstr "" - -#: src/scan-gram.l:774 -#, c-format -msgid "$$ of `%s' has no declared type" -msgstr "$$ od `%s' nema deklarirani tip" - -#: src/scan-gram.l:795 -#, c-format -msgid "$%d of `%s' has no declared type" -msgstr "$%d od `%s' nema deklarirani tip" - -#: src/scan-gram.l:840 src/scan-gram.l:908 -#, fuzzy, c-format -msgid "invalid value: %s" -msgstr "nedozvoljena $ vrijednost" - -#: src/scan-gram.l:996 -#, fuzzy, c-format -msgid "missing `%s' at end of file" -msgstr "nezavr¹eni znakovni niz na kraju datoteke" - -#: src/symlist.c:97 src/symlist.c:108 -msgid "invalid $ value" -msgstr "nedozvoljena $ vrijednost" - -#: src/symtab.c:84 -#, c-format -msgid "type redeclaration for %s" -msgstr "ponovna deklaracija za %s" - -#: src/symtab.c:101 src/symtab.c:119 -#, fuzzy, c-format -msgid "%s redeclaration for %s" -msgstr "ponovna deklaracija za %s" - -#: src/symtab.c:138 -#, c-format -msgid "redefining precedence of %s" -msgstr "ponovno definiran prethodnik od %s" - -#: src/symtab.c:156 -#, c-format -msgid "symbol %s redefined" -msgstr "simbol %s ponovo definiran" - -#: src/symtab.c:179 -#, fuzzy, c-format -msgid "redefining user token number of %s" -msgstr "ponovno definiran prethodnik od %s" - -#: src/symtab.c:206 -#, c-format -msgid "symbol %s is used, but is not defined as a token and has no rules" -msgstr "simbol %s je kori¹ten, ali nije definiran kao znak i nema pravila" - -#: src/symtab.c:231 -#, c-format -msgid "symbol `%s' used more than once as a literal string" -msgstr "simbol `%s' kori¹ten vi¹e puta kao znakovni niz" - -#: src/symtab.c:234 -#, c-format -msgid "symbol `%s' given more than one literal string" -msgstr "simbolz `%s' dat vi¹e od jednog znakovnog niza" - -#: src/symtab.c:270 -#, c-format -msgid "conflicting precedences for %s and %s" -msgstr "konflikt u prethodnici za %s and %s" - -#: src/symtab.c:282 -#, fuzzy, c-format -msgid "conflicting associativities for %s (%s) and %s (%s)" -msgstr "konfliktne asocijativne vrijednosti za %s i %s" - -#: src/symtab.c:367 -#, c-format -msgid "tokens %s and %s both assigned number %d" -msgstr "objema znakovima %s i %s je pridru¾en broj %d" - -#: src/symtab.c:590 -#, c-format -msgid "the start symbol %s is undefined" -msgstr "poèetni simbol %s nije definiran" - -#: src/symtab.c:594 -#, c-format -msgid "the start symbol %s is a token" -msgstr "poèetni simbol %s je znak" - -#: lib/argmatch.c:135 -#, fuzzy, c-format -msgid "invalid argument %s for %s" -msgstr "nedozvoljeni ulaz: %s" - -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "" - -#: lib/argmatch.c:155 -msgid "Valid arguments are:" -msgstr "" - -#: lib/bitset_stats.c:179 -#, c-format -msgid "%u bitset_allocs, %u freed (%.2f%%).\n" -msgstr "" - -#: lib/bitset_stats.c:182 -#, c-format -msgid "%u bitset_sets, %u cached (%.2f%%)\n" -msgstr "" - -#: lib/bitset_stats.c:185 -#, c-format -msgid "%u bitset_resets, %u cached (%.2f%%)\n" -msgstr "" - -#: lib/bitset_stats.c:188 -#, c-format -msgid "%u bitset_tests, %u cached (%.2f%%)\n" -msgstr "" - -#: lib/bitset_stats.c:192 -#, c-format -msgid "%u bitset_lists\n" -msgstr "" - -#: lib/bitset_stats.c:194 -msgid "count log histogram\n" -msgstr "" - -#: lib/bitset_stats.c:197 -msgid "size log histogram\n" -msgstr "" - -#: lib/bitset_stats.c:200 -msgid "density histogram\n" -msgstr "" - -#: lib/bitset_stats.c:214 -msgid "" -"Bitset statistics:\n" -"\n" -msgstr "" - -#: lib/bitset_stats.c:217 -#, c-format -msgid "Accumulated runs = %u\n" -msgstr "" - -#: lib/bitset_stats.c:261 lib/bitset_stats.c:266 -msgid "Could not read stats file." -msgstr "" - -#: lib/bitset_stats.c:263 -msgid "Bad stats file size.\n" -msgstr "" - -#: lib/bitset_stats.c:289 lib/bitset_stats.c:291 -msgid "Could not write stats file." -msgstr "" - -#: lib/bitset_stats.c:294 -msgid "Could not open stats file for writing." -msgstr "" - -#: lib/getopt.c:688 lib/getopt.c:700 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: opcija `%s' je nejednoznaèna\n" - -#: lib/getopt.c:733 lib/getopt.c:737 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: opcija `--%s' ne dopu¹ta argument\n" - -#: lib/getopt.c:746 lib/getopt.c:751 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: opcija `%c%s' ne dopu¹ta argument\n" - -#: lib/getopt.c:787 lib/getopt.c:800 lib/getopt.c:1089 lib/getopt.c:1102 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: opcija `%s' zahtijeva argument\n" - -#: lib/getopt.c:838 lib/getopt.c:841 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: neprepoznata opcija `--%s'\n" - -#: lib/getopt.c:849 lib/getopt.c:852 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: neprepoznata opcija `%c%s'\n" - -#: lib/getopt.c:899 lib/getopt.c:902 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: nedozvoljena opcija -- %c\n" - -#: lib/getopt.c:908 lib/getopt.c:911 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: nedozvoljena opcija -- %c\n" - -#: lib/getopt.c:958 lib/getopt.c:969 lib/getopt.c:1155 lib/getopt.c:1168 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: opcija zahtijeva argument -- %c\n" - -#: lib/getopt.c:1021 lib/getopt.c:1032 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: opcija `-W %s' je nejednoznaèna\n" - -#: lib/getopt.c:1056 lib/getopt.c:1068 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: opcija `-W %s' ne dopu¹ta argument\n" - -#: lib/obstack.c:487 lib/obstack.c:490 lib/xmalloc.c:63 -msgid "memory exhausted" -msgstr "iscrpljeni memorijski resursi" - -#: lib/quotearg.c:236 -msgid "`" -msgstr "`" - -#: lib/quotearg.c:237 -msgid "'" -msgstr "'" - -#: lib/subpipe.c:187 -#, c-format -msgid "subsidiary program `%s' could not be invoked" -msgstr "" - -#: lib/subpipe.c:189 -#, c-format -msgid "subsidiary program `%s' not found" -msgstr "" - -#: lib/subpipe.c:191 -#, c-format -msgid "subsidiary program `%s' failed" -msgstr "" - -#: lib/subpipe.c:192 -#, c-format -msgid "subsidiary program `%s' failed (exit status %d)" -msgstr "" - -#: lib/timevar.c:476 -msgid "" -"\n" -"Execution times (seconds)\n" -msgstr "" - -#: lib/timevar.c:526 -msgid " TOTAL :" -msgstr "" - -#: lib/timevar.c:562 -#, c-format -msgid "time in %s: %ld.%06ld (%ld%%)\n" -msgstr "" - -#~ msgid "too many states (max %d)" -#~ msgstr "previ¹e stanja (maks %d)" - -#~ msgid "reduce" -#~ msgstr "reduciraj" - -#~ msgid "shift" -#~ msgstr "pomakni" - -#~ msgid "%d shift/reduce conflict" -#~ msgid_plural "%d shift/reduce conflicts" -#~ msgstr[0] "%d pomakni/reduciraj konflikat" -#~ msgstr[1] "%d pomakni/reduciraj konflikata" - -#~ msgid "and" -#~ msgstr "i" - -#~ msgid "State %d contains " -#~ msgstr "Stanje %d sadr¾i" - -#~ msgid "conflicts: " -#~ msgstr "konflikt:" - -#~ msgid "%s contains " -#~ msgstr "%s sadr¾i" - -#~ msgid " %-4s\t[reduce using rule %d (%s)]\n" -#~ msgstr " %-4s\t[reduciraj koristeæi pravilo %d (%s)]\n" - -#~ msgid "" -#~ " $default\treduce using rule %d (%s)\n" -#~ "\n" -#~ msgstr "" -#~ " $default\treduciraj koristeæi pravilo %d (%s)\n" -#~ "\n" - -#~ msgid " %-4s\treduce using rule %d (%s)\n" -#~ msgstr " %-4s\treduciraj koristeæi pravilo %d (%s)\n" - -#~ msgid " $default\treduce using rule %d (%s)\n" -#~ msgstr " $default\treduciraj koristeæi pravilo %d (%s)\n" - -#~ msgid "`%s' is no longer supported" -#~ msgstr "`%s' vi¹e nije podr¾ano" - -#~ msgid "%s: no grammar file given\n" -#~ msgstr "%s: nije data datoteka sa gramatikom\n" - -#~ msgid "%s: extra arguments ignored after `%s'\n" -#~ msgstr "%s: dodatni argumenti se ignoriraju nakon `%s'\n" - -#~ msgid "too many gotos (max %d)" -#~ msgstr "previ¹e goto-a (maksimalno %d)" - -#~ msgid "unexpected `/' found and ignored" -#~ msgstr "neoèekivan `/' naðen i zanemaren" - -#~ msgid "unterminated comment" -#~ msgstr "nezavr¹eni komentar" - -#~ msgid "unexpected end of file" -#~ msgstr "neoèekivan kraj datoteke" - -#~ msgid "unescaped newline in constant" -#~ msgstr "neoèekivan znak za novu liniju u konstanti" - -#~ msgid "octal value outside range 0...255: `\\%o'" -#~ msgstr "oktalna vrijednost izvan dosega 0...255: `\\%o'" - -#~ msgid "hexadecimal value above 255: `\\x%x'" -#~ msgstr "heksadecimalna vrijednost vi¹a od 255: `\\x%x'" - -#~ msgid "unknown escape sequence: `\\' followed by `%s'" -#~ msgstr "nepoznata escape sekvenca: `\\' koju slijedi `%s'" - -#~ msgid "unterminated type name at end of file" -#~ msgstr "nezavr¹eno ime tipa pri kraju datoteke" - -#~ msgid "unterminated type name" -#~ msgstr "nezavr¹eno ime tipa" - -#~ msgid "use \"...\" for multi-character literal tokens" -#~ msgstr "koristi \"...\" za vi¹ebajtne znakove" - -#~ msgid "`%s' supports no argument: %s" -#~ msgstr "`%s' ne podr¾ava argument: %s" - -#~ msgid "`%s' requires an argument" -#~ msgstr "`%s' zahtijeva argument" - -#~ msgid "maximum table size (%d) exceeded" -#~ msgstr "maksimalna velièina tablice (%d) prekoraèena" - -#~ msgid " (rule %d)" -#~ msgstr " (pravilo %d)" - -#~ msgid " $default\taccept\n" -#~ msgstr " $default\tprihvati\n" - -#~ msgid " NO ACTIONS\n" -#~ msgstr " NEMA AKCIJA\n" - -#~ msgid " %-4s\terror (nonassociative)\n" -#~ msgstr " %-4s\tgre¹ka (nonassociative)\n" - -#~ msgid " %-4s\tgo to state %d\n" -#~ msgstr " %-4s\tidu u stanje %d\n" - -#~ msgid "Number, Line, Rule" -#~ msgstr "Broj, Linija, Pravilo" - -#~ msgid " %3d %3d %s ->" -#~ msgstr " %3d %3d %s ->" - -#~ msgid " Skipping to next \\n" -#~ msgstr " Preskaèem na slijedeæe \\n" - -#~ msgid " Skipping to next %c" -#~ msgstr " Preskaèem na slijedeæi %c" - -#~ msgid "unterminated string" -#~ msgstr "nezavr¹eni znakovni niz" - -#~ msgid "invalid @ value" -#~ msgstr "nedozvoljena @ vrijednost" - -#~ msgid "%s is invalid" -#~ msgstr "%s je nedozvoljeno" - -#~ msgid "unterminated `%{' definition" -#~ msgstr "nezavr¹ena `%{' definicija" - -#~ msgid "Premature EOF after %s" -#~ msgstr "Preuranjeni EOF nakon %s" - -#~ msgid "`%s' is invalid in %s" -#~ msgstr "`%s' je nedozvoljen u %s" - -#~ msgid "invalid %s declaration" -#~ msgstr "nedozvoljena %s deklaracija" - -#~ msgid "%type declaration has no " -#~ msgstr "%type deklaracija nema " - -#~ msgid "invalid %%type declaration due to item: %s" -#~ msgstr "nedozvoljena %%type deklaracija zbog: %s" - -#~ msgid "invalid text (%s) - number should be after identifier" -#~ msgstr "nedozvoljeno tekst (%s) - broj bi trebao biti nakon identifikatora" - -#~ msgid "unexpected item: %s" -#~ msgstr "neoèekivani: %s" - -#~ msgid "unmatched %s" -#~ msgstr "nije pronaðen %s" - -#~ msgid "argument of %%expect is not an integer" -#~ msgstr "argument od %%expect nije cijeli broj" - -#~ msgid "unrecognized item %s, expected an identifier" -#~ msgstr "neprepoznati %s, oèekivan nakon identifikatora" - -#~ msgid "expected string constant instead of %s" -#~ msgstr "oèekivana znakovna konstana umjesto %s" - -#~ msgid "no input grammar" -#~ msgstr "nema ulazne gramatike" - -#~ msgid "unterminated %guard clause" -#~ msgstr "nezavr¹ena %guard klauzula" - -#~ msgid "ill-formed rule: initial symbol not followed by colon" -#~ msgstr "lo¹e pravilo: zarez ne bi trebao slijediti poèetni simbol" - -#~ msgid "grammar starts with vertical bar" -#~ msgstr "gramatika poèinje sa okomitom crtom" - -#~ msgid "previous rule lacks an ending `;'" -#~ msgstr "prethodnom pravilu nedostaje zavr¹etak `;'" - -#~ msgid "two @prec's in a row" -#~ msgstr "dva @prec's u retku" - -#~ msgid "%%guard present but %%semantic_parser not specified" -#~ msgstr "%%guard prisutan ali %%semantic_parser nije specificiran" - -#~ msgid "two actions at end of one rule" -#~ msgstr "dvije akcije pri kraju jednog pravila" - -#~ msgid "too many symbols (tokens plus nonterminals); maximum %d" -#~ msgstr "previ¹e simbola (znakovi plus nezavr¹ni znakovi); maksimalno %d" diff --git a/po/id.po b/po/id.po deleted file mode 100644 index c7bd63c4..00000000 --- a/po/id.po +++ /dev/null @@ -1,721 +0,0 @@ -# bison 1.875 (Indonesian) -# Copyright (C) 2002 Free Software Foundation, Inc. -# This file is distributed under the same license as the bison 1.50 package. -# Tedi Heriyanto , 2002, 2003 -# -msgid "" -msgstr "" -"Project-Id-Version: bison 1.875\n" -"Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2003-08-25 17:14+0200\n" -"PO-Revision-Date: 2003-01-07 13:25GMT+0700\n" -"Last-Translator: Tedi Heriyanto \n" -"Language-Team: Indonesian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: KBabel 0.9.6\n" - -#: src/complain.c:56 lib/error.c:135 lib/error.c:163 -msgid "Unknown system error" -msgstr "Kesalahan sistem tidak dikenal" - -#: src/complain.c:79 src/complain.c:94 -msgid "warning: " -msgstr "peringatan: " - -#: src/complain.c:150 src/complain.c:166 -msgid "fatal error: " -msgstr "kesalahan fatal: " - -#: src/conflicts.c:75 -#, c-format -msgid " Conflict between rule %d and token %s resolved as shift" -msgstr " Konflik antara aturan %d dan token %s diselesaikan sebagai shift" - -#: src/conflicts.c:83 -#, c-format -msgid " Conflict between rule %d and token %s resolved as reduce" -msgstr " Konflik antara aturan %d dan token %s diselesaikan sebagai reduce" - -#: src/conflicts.c:90 -#, c-format -msgid " Conflict between rule %d and token %s resolved as an error" -msgstr "" -" Konflik antara aturan %d dan token %s diselesaikan sebagai kesalahan" - -#: src/conflicts.c:398 -#, c-format -msgid "conflicts: %d shift/reduce, %d reduce/reduce\n" -msgstr "konflik: %d geser/kurangi, %d kurangi/kurangi\n" - -#: src/conflicts.c:401 -#, c-format -msgid "conflicts: %d shift/reduce\n" -msgstr "konflik: %d geser/kurangi\n" - -#: src/conflicts.c:403 -#, c-format -msgid "conflicts: %d reduce/reduce\n" -msgstr "konflik: %d kurangi/kurangi\n" - -#: src/conflicts.c:421 -#, c-format -msgid "State %d " -msgstr "State %d " - -#: src/conflicts.c:498 -#, c-format -msgid "expected %d shift/reduce conflict" -msgid_plural "expected %d shift/reduce conflicts" -msgstr[0] "mengharapkan %d shift/reduce konflik" -msgstr[1] "mengharapkan %d shift/reduce konflik" - -#: src/conflicts.c:503 -msgid "expected 0 reduce/reduce conflicts" -msgstr "diharapkan 0 kurangi/kurangi konflik" - -#: src/files.c:99 -#, c-format -msgid "cannot open file `%s'" -msgstr "tidak dapat membuka file `%s'" - -#: src/files.c:115 -msgid "I/O error" -msgstr "Kesalahan I/O" - -#: src/files.c:118 -msgid "cannot close file" -msgstr "tidak dapat menutup file" - -#: src/files.c:336 -#, c-format -msgid "conflicting outputs to file %s" -msgstr "output konflik ke file %s" - -#: src/getargs.c:186 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "Coba `%s --help' untuk informasi lebih lanjut.\n" - -#: src/getargs.c:192 -msgid "GNU bison generates parsers for LALR(1) grammars.\n" -msgstr "GNU bison generates parsers for LALR(1) grammars.\n" - -#: src/getargs.c:196 -#, c-format -msgid "Usage: %s [OPTION]... FILE\n" -msgstr "Penggunaan: %s [OPTION]... FILE\n" - -#: src/getargs.c:200 -msgid "" -"If a long option shows an argument as mandatory, then it is mandatory\n" -"for the equivalent short option also. Similarly for optional arguments.\n" -msgstr "" -"Jika option panjang menyatakan argumen sebagai mandatori, maka ia mandatori " -"juga\n" -"untuk option pendek. Hal yang sama untuk argumen opsional.\n" - -#: src/getargs.c:206 -msgid "" -"Operation modes:\n" -" -h, --help display this help and exit\n" -" -V, --version output version information and exit\n" -" -y, --yacc emulate POSIX yacc\n" -msgstr "" -"Mode Operasi:\n" -" -h, --help tampilkan bantuan ini dan keluar\n" -" -V, --version tampilkan informasi versi dan keluar\n" -" -y, --yacc emulasikan POSIX yacc\n" - -#: src/getargs.c:213 -msgid "" -"Parser:\n" -" -S, --skeleton=FILE specify the skeleton to use\n" -" -t, --debug instrument the parser for debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n" -" -l, --no-lines don't generate `#line' directives\n" -" -n, --no-parser generate the tables only\n" -" -k, --token-table include a table of token names\n" -msgstr "" -"Parser:\n" -" -S, --skeleton=FILE specifikasikan rangka yang akan digunakan\n" -" -t, --debug instrumen parser untuk debugging\n" -" --locations aktifkan lokasi perhitungan\n" -" -p, --name-prefix=PREFIX tambahkan PREFIX ke simbol eksternal\n" -" -l, --no-lines jangan hasilkan direktiv `#line'\n" -" -n, --no-parser hasilkan hanya tabel\n" -" -k, --token-table sertakan tabel nama token\n" - -#: src/getargs.c:225 -msgid "" -"Output:\n" -" -d, --defines also produce a header file\n" -" -r, --report=THINGS also produce details on the automaton\n" -" -v, --verbose same as `--report=state'\n" -" -b, --file-prefix=PREFIX specify a PREFIX for output files\n" -" -o, --output=FILE leave output to FILE\n" -" -g, --graph also produce a VCG description of the " -"automaton\n" -msgstr "" -"Output:\n" -" -d, --defines juga hasilkan file header\n" -" -r, --report=THINGS juga hasilkan detil tentang otomaton\n" -" -v, --verbose sama seperti `--report=state'\n" -" -b, --file-prefix=PREFIX spesifikasikan PREFIX untuk file output\n" -" -o, --output=FILE simpan output ke FILE\n" -" -g, --graph juga hasilkan deskripsi VCG automaton\n" - -#: src/getargs.c:236 -msgid "" -"THINGS is a list of comma separated words that can include:\n" -" `state' describe the states\n" -" `itemset' complete the core item sets with their closure\n" -" `lookahead' explicitly associate lookaheads to items\n" -" `solved' describe shift/reduce conflicts solving\n" -" `all' include all the above information\n" -" `none' disable the report\n" -msgstr "" -"THINGS adalah daftar kata yang dipisahkan koma termasuk:\n" -" `state' menggambarkan state\n" -" `itemset' lengkapi himpunan item inti dengan klosurnya\n" -" `lookahead' asosiasikan lookaheads ke items secara eksplisit\n" -" `solved' gambarkan penyelesaian konflik shift/reduce\n" -" `all' sertakan semua informasi di atas\n" -" `none' tiadakan laporan\n" - -#: src/getargs.c:247 -msgid "Report bugs to .\n" -msgstr "Laporkan kesalahan ke .\n" - -#: src/getargs.c:264 -#, c-format -msgid "bison (GNU Bison) %s" -msgstr "bison (GNU Bison) %s" - -#: src/getargs.c:266 -msgid "Written by Robert Corbett and Richard Stallman.\n" -msgstr "Written by Robert Corbett and Richard Stallman.\n" - -#: src/getargs.c:270 -#, c-format -msgid "Copyright (C) %d Free Software Foundation, Inc.\n" -msgstr "Copyright (C) %d Free Software Foundation, Inc.\n" - -#: src/getargs.c:272 -msgid "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" - -#: src/getargs.c:438 -#, c-format -msgid "missing operand after `%s'" -msgstr "operand hilang setelah `%s'" - -#: src/getargs.c:440 -#, c-format -msgid "extra operand `%s'" -msgstr "operand ekstra `%s'" - -#: src/gram.c:139 -msgid "empty" -msgstr "kosong" - -#: src/gram.c:233 -msgid "Grammar" -msgstr "Grammar" - -#: src/gram.c:321 src/reduce.c:394 -msgid "warning" -msgstr "peringatan" - -#: src/main.c:124 -msgid "rule never reduced because of conflicts" -msgstr "aturan tidak pernah dikurangi karena konflik" - -#: src/parse-gram.y:353 -msgid "POSIX forbids declarations in the grammar" -msgstr "POSIX melarang deklarasi dalam grammar" - -#: src/parse-gram.y:476 -msgid "missing identifier in parameter declaration" -msgstr "identifier tidak ada dalam deklarasi parameter" - -#: src/print.c:49 -#, c-format -msgid " type %d is %s\n" -msgstr " tipe %d adalah %s\n" - -#: src/print.c:165 -#, c-format -msgid "shift, and go to state %d\n" -msgstr "geser, dan ke state %d\n" - -#: src/print.c:167 -#, c-format -msgid "go to state %d\n" -msgstr "ke state %d\n" - -#: src/print.c:204 -msgid "error (nonassociative)\n" -msgstr "kesalahan(nonasosiatif)\n" - -#: src/print.c:292 -#, c-format -msgid "reduce using rule %d (%s)" -msgstr "kurangi gunakan aturan %d (%s)" - -#: src/print.c:294 -msgid "accept" -msgstr "terima" - -#: src/print.c:325 src/print.c:391 -msgid "$default" -msgstr "$default" - -#: src/print.c:420 -#, c-format -msgid "state %d" -msgstr "state %d" - -#: src/print.c:456 -msgid "Terminals, with rules where they appear" -msgstr "Terminal, dengan aturan tempat mereka muncul" - -#: src/print.c:483 -msgid "Nonterminals, with rules where they appear" -msgstr "Nonterminal, dengan aturan tempat mereka muncul" - -#: src/print.c:512 -msgid " on left:" -msgstr " di kiri:" - -#: src/print.c:527 -msgid " on right:" -msgstr " di kanan:" - -#: src/print.c:555 -msgid "Rules never reduced" -msgstr "Aturan tidak pernah dikurangi" - -#: src/reader.c:53 -#, c-format -msgid "multiple %s declarations" -msgstr "deklarasi ganda %s" - -#: src/reader.c:115 -#, c-format -msgid "result type clash on merge function %s: <%s> != <%s>" -msgstr "tipe hasil bentrok pada fungsi merge %s: <%s> != <%s>" - -#: src/reader.c:213 -#, c-format -msgid "rule given for %s, which is a token" -msgstr "aturan diberikan untuk %s, yang merupakan sebuah token" - -#: src/reader.c:242 -#, c-format -msgid "type clash on default action: <%s> != <%s>" -msgstr "bentrokan tipe pada aksi baku: <%s> != <%s>" - -#: src/reader.c:248 -msgid "empty rule for typed nonterminal, and no action" -msgstr "aturan kosong untuk nonterminal typed, dan tidak ada aksi" - -#: src/reader.c:318 src/reader.c:332 src/reader.c:345 -#, c-format -msgid "only one %s allowed per rule" -msgstr "hanya satu %s yang dibolehkan per aturan" - -#: src/reader.c:328 src/reader.c:343 -#, c-format -msgid "%s affects only GLR parsers" -msgstr "%s hanya mempengaruhi parser GLR" - -#: src/reader.c:330 -#, c-format -msgid "%s must be followed by positive number" -msgstr "%s harus diikuti angka positif" - -#: src/reader.c:487 -msgid "no rules in the input grammar" -msgstr "tidak ada aturan dalam grammar input" - -#: src/reduce.c:242 -msgid "useless rule" -msgstr "aturan tidak berguna" - -#: src/reduce.c:303 -#, c-format -msgid "useless nonterminal: %s" -msgstr "nonterminal tidak berguna: %s" - -#: src/reduce.c:351 -msgid "Useless nonterminals" -msgstr "Nonterminal tidak berguna" - -#: src/reduce.c:364 -msgid "Terminals which are not used" -msgstr "Terminal yang tidak digunakan" - -#: src/reduce.c:373 -msgid "Useless rules" -msgstr "Useless rules" - -#: src/reduce.c:389 -#, c-format -msgid "%d rule never reduced\n" -msgid_plural "%d rules never reduced\n" -msgstr[0] "Aturan %d tidak pernah dikurangi\n" -msgstr[1] "Aturan %d tidak pernah dikurangi\n" - -#: src/reduce.c:397 -#, c-format -msgid "%d useless nonterminal" -msgid_plural "%d useless nonterminals" -msgstr[0] "nonterminal tidak berguna %d" -msgstr[1] "nonterminal tidak berguna %d" - -#: src/reduce.c:403 -msgid " and " -msgstr " dan " - -#: src/reduce.c:406 -#, c-format -msgid "%d useless rule" -msgid_plural "%d useless rules" -msgstr[0] "aturan tidak berguna %d" -msgstr[1] "aturan tidak berguna %d" - -#: src/reduce.c:436 -#, c-format -msgid "start symbol %s does not derive any sentence" -msgstr "simbol awal %s tidak melahirkan kalimat" - -#: src/scan-gram.l:160 -msgid "stray `,' treated as white space" -msgstr "stray `,' dianggap sebagai white space" - -#: src/scan-gram.l:221 -#, c-format -msgid "invalid directive: %s" -msgstr "direktif tidak valid: %s" - -#: src/scan-gram.l:241 src/scan-gram.l:804 src/scan-gram.l:873 -#, c-format -msgid "integer out of range: %s" -msgstr "integer ke luar batas: %s" - -#: src/scan-gram.l:283 -#, c-format -msgid "invalid character: %s" -msgstr "karakter tidak valid: %s" - -#: src/scan-gram.l:412 src/scan-gram.l:422 src/scan-gram.l:441 -#, c-format -msgid "invalid escape sequence: %s" -msgstr "urutan escape tidak valid: %s" - -#: src/scan-gram.l:446 -#, c-format -msgid "unrecognized escape sequence: %s" -msgstr "urutan escape tidak dikenal: %s" - -#: src/scan-gram.l:534 -#, c-format -msgid "missing `{' in `%s'" -msgstr "hilang `{' dalam `%s'" - -#: src/scan-gram.l:774 -#, c-format -msgid "$$ of `%s' has no declared type" -msgstr "$$ dari `%s' tidak memiliki tipe yang terdeklarasi" - -#: src/scan-gram.l:795 -#, c-format -msgid "$%d of `%s' has no declared type" -msgstr "$%d dari `%s' tidak memiliki tipe terdeklarasi" - -#: src/scan-gram.l:840 src/scan-gram.l:908 -#, c-format -msgid "invalid value: %s" -msgstr "nilai tidak valid: %s" - -#: src/scan-gram.l:996 -#, c-format -msgid "missing `%s' at end of file" -msgstr "`%s' hilang di akhir file" - -#: src/symlist.c:97 src/symlist.c:108 -msgid "invalid $ value" -msgstr "nilai $ tidak valid" - -#: src/symtab.c:84 -#, c-format -msgid "type redeclaration for %s" -msgstr "redeklarasi tipe untuk %s" - -#: src/symtab.c:101 src/symtab.c:119 -#, c-format -msgid "%s redeclaration for %s" -msgstr "%s redeklarasi untuk %s" - -#: src/symtab.c:138 -#, c-format -msgid "redefining precedence of %s" -msgstr "mendefinisikan kembali presedens %s" - -#: src/symtab.c:156 -#, c-format -msgid "symbol %s redefined" -msgstr "simbol %s didefinisikan ulang" - -#: src/symtab.c:179 -#, c-format -msgid "redefining user token number of %s" -msgstr "mendefinisikan ulang nomor token user %s" - -#: src/symtab.c:206 -#, c-format -msgid "symbol %s is used, but is not defined as a token and has no rules" -msgstr "" -"simbol %s digunakan, namun tidak didefinisikan sebagai token dan tidak " -"memiliki aturan" - -#: src/symtab.c:231 -#, c-format -msgid "symbol `%s' used more than once as a literal string" -msgstr "simbol `%s' digunakan lebih dari satu kali sebagai string literal" - -#: src/symtab.c:234 -#, c-format -msgid "symbol `%s' given more than one literal string" -msgstr "simbol `%s' diberikan lebih dari satu string literal" - -#: src/symtab.c:270 -#, c-format -msgid "conflicting precedences for %s and %s" -msgstr "presenden konflik untuk %s dan %s" - -#: src/symtab.c:282 -#, c-format -msgid "conflicting associativities for %s (%s) and %s (%s)" -msgstr "asosiatif konflik untuk %s (%s) dan %s (%s)" - -#: src/symtab.c:367 -#, c-format -msgid "tokens %s and %s both assigned number %d" -msgstr "token %s dan %s keduanya memiliki angka %d" - -#: src/symtab.c:590 -#, c-format -msgid "the start symbol %s is undefined" -msgstr "simbol awal %s tidak didefinisikan" - -#: src/symtab.c:594 -#, c-format -msgid "the start symbol %s is a token" -msgstr "simbol awal %s adalah sebuah token" - -#: lib/argmatch.c:135 -#, c-format -msgid "invalid argument %s for %s" -msgstr "argument %s tidak valid untuk %s" - -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "argumen %s ambigu untuk %s" - -#: lib/argmatch.c:155 -msgid "Valid arguments are:" -msgstr "Argumen valid adalah:" - -#: lib/bitset_stats.c:179 -#, c-format -msgid "%u bitset_allocs, %u freed (%.2f%%).\n" -msgstr "%u bitset_allocs, %u freed (%.2f%%).\n" - -#: lib/bitset_stats.c:182 -#, c-format -msgid "%u bitset_sets, %u cached (%.2f%%)\n" -msgstr "%u bitset_sets, %u cached (%.2f%%)\n" - -#: lib/bitset_stats.c:185 -#, c-format -msgid "%u bitset_resets, %u cached (%.2f%%)\n" -msgstr "%u bitset_resets, %u cached (%.2f%%)\n" - -#: lib/bitset_stats.c:188 -#, c-format -msgid "%u bitset_tests, %u cached (%.2f%%)\n" -msgstr "%u bitset_tests, %u cached (%.2f%%)\n" - -#: lib/bitset_stats.c:192 -#, c-format -msgid "%u bitset_lists\n" -msgstr "%u bitset_lists\n" - -#: lib/bitset_stats.c:194 -msgid "count log histogram\n" -msgstr "hitung log histogram\n" - -#: lib/bitset_stats.c:197 -msgid "size log histogram\n" -msgstr "ukuran log histogram\n" - -#: lib/bitset_stats.c:200 -msgid "density histogram\n" -msgstr "kepadatan histogram\n" - -#: lib/bitset_stats.c:214 -msgid "" -"Bitset statistics:\n" -"\n" -msgstr "" -"Statistik bitset:\n" -"\n" - -#: lib/bitset_stats.c:217 -#, c-format -msgid "Accumulated runs = %u\n" -msgstr "Run terakumulasi = %u\n" - -#: lib/bitset_stats.c:261 lib/bitset_stats.c:266 -msgid "Could not read stats file." -msgstr "Tidak dapat membaca file stat." - -#: lib/bitset_stats.c:263 -msgid "Bad stats file size.\n" -msgstr "Ukuran file stat buruk.\n" - -#: lib/bitset_stats.c:289 lib/bitset_stats.c:291 -msgid "Could not write stats file." -msgstr "Tidak dapat menulis file stat." - -#: lib/bitset_stats.c:294 -msgid "Could not open stats file for writing." -msgstr "Tidak dapat membuka file stat untuk ditulisi." - -#: lib/getopt.c:688 lib/getopt.c:700 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: option `%s' ambigu\n" - -#: lib/getopt.c:733 lib/getopt.c:737 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: option `--%s' tidak membolehkan sebuah argumen\n" - -#: lib/getopt.c:746 lib/getopt.c:751 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: option `%c%s' tidak membolehkan sebuah argumen\n" - -#: lib/getopt.c:787 lib/getopt.c:800 lib/getopt.c:1089 lib/getopt.c:1102 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: option `%s' membutuhkan sebuah argumen\n" - -#: lib/getopt.c:838 lib/getopt.c:841 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: option tidak dikenal `--%s'\n" - -#: lib/getopt.c:849 lib/getopt.c:852 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: option tidak dikenal `%c%s'\n" - -#: lib/getopt.c:899 lib/getopt.c:902 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: option ilegal -- %c\n" - -#: lib/getopt.c:908 lib/getopt.c:911 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: option tidak valid -- %c\n" - -#: lib/getopt.c:958 lib/getopt.c:969 lib/getopt.c:1155 lib/getopt.c:1168 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: option membutuhkan sebuah argumen -- %c\n" - -#: lib/getopt.c:1021 lib/getopt.c:1032 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: option `-W %s' ambigu\n" - -#: lib/getopt.c:1056 lib/getopt.c:1068 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: option `-W %s' tidak membolehkan sebuah argumen\n" - -#: lib/obstack.c:487 lib/obstack.c:490 lib/xmalloc.c:63 -msgid "memory exhausted" -msgstr "memori habis" - -#: lib/quotearg.c:236 -msgid "`" -msgstr "`" - -#: lib/quotearg.c:237 -msgid "'" -msgstr "'" - -#: lib/subpipe.c:187 -#, c-format -msgid "subsidiary program `%s' could not be invoked" -msgstr "program subsider `%s' tidak dapat dipanggil" - -#: lib/subpipe.c:189 -#, c-format -msgid "subsidiary program `%s' not found" -msgstr "program subsider `%s' tidak ditemukan" - -#: lib/subpipe.c:191 -#, c-format -msgid "subsidiary program `%s' failed" -msgstr "program subsider `%s' gagal" - -#: lib/subpipe.c:192 -#, c-format -msgid "subsidiary program `%s' failed (exit status %d)" -msgstr "program subsider `%s' gagal (status kegagalan %d)" - -#: lib/timevar.c:476 -msgid "" -"\n" -"Execution times (seconds)\n" -msgstr "" -"\n" -"Waktu eksekusi (detik)\n" - -#: lib/timevar.c:526 -msgid " TOTAL :" -msgstr " TOTAL :" - -#: lib/timevar.c:562 -#, c-format -msgid "time in %s: %ld.%06ld (%ld%%)\n" -msgstr "waktu dalam %s: %ld.%06ld (%ld%%)\n" - -#~ msgid "%d shift/reduce conflict" -#~ msgid_plural "%d shift/reduce conflicts" -#~ msgstr[0] "%d geser/kurangi konflik" -#~ msgstr[1] "%d geser/kurangi konflik" - -#~ msgid "and" -#~ msgstr "dan" - -#~ msgid "conflicts: " -#~ msgstr "konflik: " - -#~ msgid "State %d contains " -#~ msgstr "State %d berisi " diff --git a/po/it.po b/po/it.po deleted file mode 100644 index c8f86d3f..00000000 --- a/po/it.po +++ /dev/null @@ -1,761 +0,0 @@ -# Italian translation for message of GNU bison. -# Copyright (C) 2002 Free Software Foundation, Inc. -# Paolo Bonzini , 2002. -# -msgid "" -msgstr "" -"Project-Id-Version: bison 1.50\n" -"Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2003-08-25 17:14+0200\n" -"PO-Revision-Date: 2002-10-17 14:37+0100\n" -"Last-Translator: Paolo Bonzini \n" -"Language-Team: Italian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ISO-8859-1\n" -"Content-Transfer-Encoding: 8-bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: src/complain.c:56 lib/error.c:135 lib/error.c:163 -msgid "Unknown system error" -msgstr "Errore di sistema sconosciuto" - -#: src/complain.c:79 src/complain.c:94 -msgid "warning: " -msgstr "attenzione: " - -#: src/complain.c:150 src/complain.c:166 -msgid "fatal error: " -msgstr "errore fatale: " - -#: src/conflicts.c:75 -#, c-format -msgid " Conflict between rule %d and token %s resolved as shift" -msgstr " Conflitto tra la regola %d e il token %s risolto come shift" - -#: src/conflicts.c:83 -#, c-format -msgid " Conflict between rule %d and token %s resolved as reduce" -msgstr " Conflitto tra la regola %d e il token %s risolto come riduzione" - -#: src/conflicts.c:90 -#, c-format -msgid " Conflict between rule %d and token %s resolved as an error" -msgstr " Conflitto tra la regola %d e il token %s risolto come errore" - -#: src/conflicts.c:398 -#, c-format -msgid "conflicts: %d shift/reduce, %d reduce/reduce\n" -msgstr "" - -#: src/conflicts.c:401 -#, fuzzy, c-format -msgid "conflicts: %d shift/reduce\n" -msgstr " %d shift/riduzione" - -#: src/conflicts.c:403 -#, fuzzy, c-format -msgid "conflicts: %d reduce/reduce\n" -msgstr " %d riduzione/riduzione" - -#: src/conflicts.c:421 -#, fuzzy, c-format -msgid "State %d " -msgstr "stato %d" - -#: src/conflicts.c:498 -#, c-format -msgid "expected %d shift/reduce conflict" -msgid_plural "expected %d shift/reduce conflicts" -msgstr[0] "atteso %d conflitto shift/riduzione" -msgstr[1] "attesi %d conflitti shift/riduzione" - -#: src/conflicts.c:503 -#, fuzzy -msgid "expected 0 reduce/reduce conflicts" -msgstr "%d conflitto riduzione/riduzione" - -#: src/files.c:99 -#, c-format -msgid "cannot open file `%s'" -msgstr "impossibile aprire il file `%s'" - -#: src/files.c:115 -msgid "I/O error" -msgstr "" - -#: src/files.c:118 -msgid "cannot close file" -msgstr "impossibile chiudere il file `%s'" - -#: src/files.c:336 -#, c-format -msgid "conflicting outputs to file %s" -msgstr "" - -#: src/getargs.c:186 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "Provare `%s --help' per ulteriori informazioni.\n" - -#: src/getargs.c:192 -msgid "GNU bison generates parsers for LALR(1) grammars.\n" -msgstr "GNU bison genera parser per grammatiche LALR(1).\n" - -#: src/getargs.c:196 -#, c-format -msgid "Usage: %s [OPTION]... FILE\n" -msgstr "Utilizzo: %s [OPZIONE]... FILE\n" - -#: src/getargs.c:200 -msgid "" -"If a long option shows an argument as mandatory, then it is mandatory\n" -"for the equivalent short option also. Similarly for optional arguments.\n" -msgstr "" -"Se un argomento è indicato come obbligatorio in un'opzione lunga, allora\n" -"è obbligatorio anche per l'equivalente opzione corta. Analogamente per\n" -"gli argomenti opzionali.\n" - -#: src/getargs.c:206 -msgid "" -"Operation modes:\n" -" -h, --help display this help and exit\n" -" -V, --version output version information and exit\n" -" -y, --yacc emulate POSIX yacc\n" -msgstr "" -"Modalità operative:\n" -" -h, --help mostra questo aiuto ed esce\n" -" -V, --version mostra informazioni sulla versione ed esce\n" -" -y, --yacc emula il comportamento di POSIX yacc\n" - -#: src/getargs.c:213 -msgid "" -"Parser:\n" -" -S, --skeleton=FILE specify the skeleton to use\n" -" -t, --debug instrument the parser for debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n" -" -l, --no-lines don't generate `#line' directives\n" -" -n, --no-parser generate the tables only\n" -" -k, --token-table include a table of token names\n" -msgstr "" -" -S, --skeleton=FILE specifica lo scheletro da usare\n" -" -t, --debug aggiunge informazioni di debug al parser\n" -" --locations abilita il calcolo delle locazioni (@N)\n" -" -p, --name-prefix=PREFIX prepone PREFIX ai simboli globali\n" -" -l, --no-lines non genera direttive `#line'\n" -" -n, --no-parser genera le sole tabelle\n" -" -k, --token-table include una tabella di nomi dei token\n" - -#: src/getargs.c:225 -msgid "" -"Output:\n" -" -d, --defines also produce a header file\n" -" -r, --report=THINGS also produce details on the automaton\n" -" -v, --verbose same as `--report=state'\n" -" -b, --file-prefix=PREFIX specify a PREFIX for output files\n" -" -o, --output=FILE leave output to FILE\n" -" -g, --graph also produce a VCG description of the " -"automaton\n" -msgstr "" -"Output:\n" -" -d, --defines produce anche uno header\n" -" -r, --report=THINGS produce anche dettagli sull'automa\n" -" -v, --verbose produce anche una spiegazione dell'automa\n" -" -b, --file-prefix=PREFIX specifica un prefisso per il file di output\n" -" -o, --output=FILE lascia l'output in FILE\n" -" -g, --graph produce anche una descrizione VCG dell'automa\n" - -#: src/getargs.c:236 -msgid "" -"THINGS is a list of comma separated words that can include:\n" -" `state' describe the states\n" -" `itemset' complete the core item sets with their closure\n" -" `lookahead' explicitly associate lookaheads to items\n" -" `solved' describe shift/reduce conflicts solving\n" -" `all' include all the above information\n" -" `none' disable the report\n" -msgstr "" -"THINGS è un elenco di parole separate da virgola scelte tra:\n" -" `state' descrive gli stati\n" -" `itemset' completa gli insiemi dei simboli con la loro chiusura " -"transitiva\n" -" `lookahead' associa i token di prospezione ai simboli\n" -" `solved' descrive la riduzione dei conflitti shift/riduzione\n" -" `all' include tutte queste informazioni\n" -" `none' disabilita la produzione del rapporto\n" - -#: src/getargs.c:247 -msgid "Report bugs to .\n" -msgstr "Segnalare eventuali bug a .\n" - -#: src/getargs.c:264 -#, c-format -msgid "bison (GNU Bison) %s" -msgstr "bison (GNU Bison) %s" - -#: src/getargs.c:266 -msgid "Written by Robert Corbett and Richard Stallman.\n" -msgstr "Scritto da Robert Corbett e Richard Stallman.\n" - -#: src/getargs.c:270 -#, c-format -msgid "Copyright (C) %d Free Software Foundation, Inc.\n" -msgstr "Copyright (C) %d Free Software Foundation, Inc.\n" - -#: src/getargs.c:272 -msgid "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"Questo e' software libero; vedere il sorgente per le condizioni cui e'\n" -"sottoposta la copia. NON c'è ALCUNA garanzia, neanche di\n" -"COMMERCIABILITA` o di ADEGUATEZZA AD UN PARTICOLARE SCOPO.\n" - -#: src/getargs.c:438 -#, c-format -msgid "missing operand after `%s'" -msgstr "" - -#: src/getargs.c:440 -#, c-format -msgid "extra operand `%s'" -msgstr "" - -#: src/gram.c:139 -msgid "empty" -msgstr "vuoto" - -#: src/gram.c:233 -msgid "Grammar" -msgstr "Grammatica" - -#: src/gram.c:321 src/reduce.c:394 -msgid "warning" -msgstr "attenzione" - -#: src/main.c:124 -msgid "rule never reduced because of conflicts" -msgstr "regola mai ridotta a causa dei conflitti" - -#: src/parse-gram.y:353 -msgid "POSIX forbids declarations in the grammar" -msgstr "POSIX proibisce l'uso di dichiarazioni interne alla grammatica" - -#: src/parse-gram.y:476 -msgid "missing identifier in parameter declaration" -msgstr "" - -#: src/print.c:49 -#, c-format -msgid " type %d is %s\n" -msgstr " il tipo %d è %s\n" - -#: src/print.c:165 -#, c-format -msgid "shift, and go to state %d\n" -msgstr "shift e prosecuzione allo stato %d\n" - -#: src/print.c:167 -#, c-format -msgid "go to state %d\n" -msgstr "prosecuzione allo stato %d\n" - -#: src/print.c:204 -msgid "error (nonassociative)\n" -msgstr "errore (non associativo)\n" - -#: src/print.c:292 -#, c-format -msgid "reduce using rule %d (%s)" -msgstr "riduzione con la regola %d (%s)" - -#: src/print.c:294 -msgid "accept" -msgstr "accetta" - -#: src/print.c:325 src/print.c:391 -msgid "$default" -msgstr "$default" - -#: src/print.c:420 -#, c-format -msgid "state %d" -msgstr "stato %d" - -#: src/print.c:456 -msgid "Terminals, with rules where they appear" -msgstr "Simboli terminali e regole in cui appaiono" - -#: src/print.c:483 -msgid "Nonterminals, with rules where they appear" -msgstr "Simboli nonterminali e regole in cui appaiono" - -#: src/print.c:512 -msgid " on left:" -msgstr " nel primo membro:" - -#: src/print.c:527 -msgid " on right:" -msgstr " nel secondo membro:" - -#: src/print.c:555 -msgid "Rules never reduced" -msgstr "Regole mai ridotte" - -#: src/reader.c:53 -#, c-format -msgid "multiple %s declarations" -msgstr "dichiarazioni multiple per %s" - -#: src/reader.c:115 -#, fuzzy, c-format -msgid "result type clash on merge function %s: <%s> != <%s>" -msgstr "" -"conflitto nei tipi del risultato della funzione di merge %s: `%s' e `%s'" - -#: src/reader.c:213 -#, c-format -msgid "rule given for %s, which is a token" -msgstr "fornita una regola per il token %s" - -#: src/reader.c:242 -#, fuzzy, c-format -msgid "type clash on default action: <%s> != <%s>" -msgstr "conflitto di tipo (`%s' e `%s') nell'azione di default" - -#: src/reader.c:248 -msgid "empty rule for typed nonterminal, and no action" -msgstr "regola vuota e nessuna azione per un nonterminale con tipo" - -#: src/reader.c:318 src/reader.c:332 src/reader.c:345 -#, fuzzy, c-format -msgid "only one %s allowed per rule" -msgstr "solo un %%merge è permesso in una regola" - -#: src/reader.c:328 src/reader.c:343 -#, fuzzy, c-format -msgid "%s affects only GLR parsers" -msgstr "%%merge considerato solo nei parser GLR" - -#: src/reader.c:330 -#, fuzzy, c-format -msgid "%s must be followed by positive number" -msgstr "%%dprec deve essere seguito da un intero positivo" - -#: src/reader.c:487 -msgid "no rules in the input grammar" -msgstr "nessuna regola nella grammatica di input" - -#: src/reduce.c:242 -msgid "useless rule" -msgstr "regola inutile" - -#: src/reduce.c:303 -#, fuzzy, c-format -msgid "useless nonterminal: %s" -msgstr "simbolo nonterminale inutilizzato" - -#: src/reduce.c:351 -msgid "Useless nonterminals" -msgstr "Simboli nonterminali inutili" - -#: src/reduce.c:364 -msgid "Terminals which are not used" -msgstr "Simboli terminali inutilizzati" - -#: src/reduce.c:373 -msgid "Useless rules" -msgstr "Regole inutili" - -#: src/reduce.c:389 -#, c-format -msgid "%d rule never reduced\n" -msgid_plural "%d rules never reduced\n" -msgstr[0] "%d regola non applicata\n" -msgstr[1] "%d regole non applicate\n" - -#: src/reduce.c:397 -#, c-format -msgid "%d useless nonterminal" -msgid_plural "%d useless nonterminals" -msgstr[0] "%d simbolo nonterminale inutilizzato" -msgstr[1] "%d simboli nonterminali inutilizzati" - -#: src/reduce.c:403 -msgid " and " -msgstr " e " - -#: src/reduce.c:406 -#, c-format -msgid "%d useless rule" -msgid_plural "%d useless rules" -msgstr[0] "%d regola inutile" -msgstr[1] "%d regole inutili" - -#: src/reduce.c:436 -#, c-format -msgid "start symbol %s does not derive any sentence" -msgstr "dal simbolo iniziale %s non deriva alcuna frase" - -#: src/scan-gram.l:160 -msgid "stray `,' treated as white space" -msgstr "" - -#: src/scan-gram.l:221 -#, fuzzy, c-format -msgid "invalid directive: %s" -msgstr ": escape non valido: %s\n" - -#: src/scan-gram.l:241 src/scan-gram.l:804 src/scan-gram.l:873 -#, c-format -msgid "integer out of range: %s" -msgstr "" - -#: src/scan-gram.l:283 -#, fuzzy, c-format -msgid "invalid character: %s" -msgstr ": carattere non valido: `%c'\n" - -#: src/scan-gram.l:412 src/scan-gram.l:422 src/scan-gram.l:441 -#, fuzzy, c-format -msgid "invalid escape sequence: %s" -msgstr ": escape non valido: %s\n" - -#: src/scan-gram.l:446 -#, fuzzy, c-format -msgid "unrecognized escape sequence: %s" -msgstr ": escape non riconosciuto: %s\n" - -#: src/scan-gram.l:534 -#, c-format -msgid "missing `{' in `%s'" -msgstr "" - -#: src/scan-gram.l:774 -#, c-format -msgid "$$ of `%s' has no declared type" -msgstr "Manca una dichiarazione di tipo per $$ di `%s'" - -#: src/scan-gram.l:795 -#, c-format -msgid "$%d of `%s' has no declared type" -msgstr "Manca una dichiarazione di tipo per $%d di `%s'" - -#: src/scan-gram.l:840 src/scan-gram.l:908 -#, fuzzy, c-format -msgid "invalid value: %s" -msgstr "valore non valido: %s%d" - -#: src/scan-gram.l:996 -#, c-format -msgid "missing `%s' at end of file" -msgstr "" - -#: src/symlist.c:97 src/symlist.c:108 -msgid "invalid $ value" -msgstr "valore $ non valido" - -#: src/symtab.c:84 -#, c-format -msgid "type redeclaration for %s" -msgstr "tipo dichiarato due volte per %s" - -#: src/symtab.c:101 src/symtab.c:119 -#, c-format -msgid "%s redeclaration for %s" -msgstr "dichiarazione due volte di %s per %s" - -#: src/symtab.c:138 -#, c-format -msgid "redefining precedence of %s" -msgstr "precedenza di `%s' definita due volte" - -#: src/symtab.c:156 -#, c-format -msgid "symbol %s redefined" -msgstr "simbolo %s ridefinito" - -#: src/symtab.c:179 -#, c-format -msgid "redefining user token number of %s" -msgstr "numero di token definito dall'utente specificato due volte per %s" - -#: src/symtab.c:206 -#, c-format -msgid "symbol %s is used, but is not defined as a token and has no rules" -msgstr "usato il simbolo %s, ma non è un token e non ha regole" - -#: src/symtab.c:231 -#, c-format -msgid "symbol `%s' used more than once as a literal string" -msgstr "simbolo `%s' usato più di una volta in una stringa letterale" - -#: src/symtab.c:234 -#, c-format -msgid "symbol `%s' given more than one literal string" -msgstr "il simbolo `%s' dà pi` di una stringa letterale" - -#: src/symtab.c:270 -#, c-format -msgid "conflicting precedences for %s and %s" -msgstr "precedenze in conflitto per %s und %s" - -#: src/symtab.c:282 -#, c-format -msgid "conflicting associativities for %s (%s) and %s (%s)" -msgstr "associatività in conflitto per %s (%s) e %s (%s)" - -#: src/symtab.c:367 -#, c-format -msgid "tokens %s and %s both assigned number %d" -msgstr "i token %s e %s hanno lo stesso numero %d" - -#: src/symtab.c:590 -#, c-format -msgid "the start symbol %s is undefined" -msgstr "simbolo iniziale %s non definito" - -#: src/symtab.c:594 -#, c-format -msgid "the start symbol %s is a token" -msgstr "specificato il token %s come simbolo iniziale" - -#: lib/argmatch.c:135 -#, c-format -msgid "invalid argument %s for %s" -msgstr "argomento non valido %s per %s" - -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "argomento ambiguo %s per %s" - -#: lib/argmatch.c:155 -msgid "Valid arguments are:" -msgstr "Gli argomenti validi sono:" - -#: lib/bitset_stats.c:179 -#, c-format -msgid "%u bitset_allocs, %u freed (%.2f%%).\n" -msgstr "%u bitset_alloc, %u liberati (%.2f%%).\n" - -#: lib/bitset_stats.c:182 -#, c-format -msgid "%u bitset_sets, %u cached (%.2f%%)\n" -msgstr "%u bitset_set, %u in cache (%.2f%%)\n" - -#: lib/bitset_stats.c:185 -#, c-format -msgid "%u bitset_resets, %u cached (%.2f%%)\n" -msgstr "%u bitset_reset, %u in cache (%.2f%%)\n" - -#: lib/bitset_stats.c:188 -#, c-format -msgid "%u bitset_tests, %u cached (%.2f%%)\n" -msgstr "%u bitset_test, %u in cache (%.2f%%)\n" - -#: lib/bitset_stats.c:192 -#, c-format -msgid "%u bitset_lists\n" -msgstr "%u bitset_list\n" - -#: lib/bitset_stats.c:194 -msgid "count log histogram\n" -msgstr "istogramma dei conteggi\n" - -#: lib/bitset_stats.c:197 -msgid "size log histogram\n" -msgstr "istogramma delle dimensioni\n" - -#: lib/bitset_stats.c:200 -msgid "density histogram\n" -msgstr "istogranna delle densità\n" - -#: lib/bitset_stats.c:214 -msgid "" -"Bitset statistics:\n" -"\n" -msgstr "" -"Statistiche dei bitset:\n" -"\n" - -#: lib/bitset_stats.c:217 -#, c-format -msgid "Accumulated runs = %u\n" -msgstr "Esecuzioni accumulate = %u\n" - -#: lib/bitset_stats.c:261 lib/bitset_stats.c:266 -msgid "Could not read stats file." -msgstr "Impossibile leggere il file delle statistiche." - -#: lib/bitset_stats.c:263 -msgid "Bad stats file size.\n" -msgstr "Dimensione errata del file delle statistiche.\n" - -#: lib/bitset_stats.c:289 lib/bitset_stats.c:291 -msgid "Could not write stats file." -msgstr "Impossibile scrivere il file delle statistiche." - -#: lib/bitset_stats.c:294 -msgid "Could not open stats file for writing." -msgstr "Impossibile aprire in scrittura il file delle statistiche." - -#: lib/getopt.c:688 lib/getopt.c:700 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: l'opzione `%s' è ambigua\n" - -#: lib/getopt.c:733 lib/getopt.c:737 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: l'opzione `--%s' non ammette argomenti\n" - -#: lib/getopt.c:746 lib/getopt.c:751 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: l'opzione `%c%s' non ammette argomenti\n" - -#: lib/getopt.c:787 lib/getopt.c:800 lib/getopt.c:1089 lib/getopt.c:1102 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: l'opzione `%s' richiede un argomento\n" - -#: lib/getopt.c:838 lib/getopt.c:841 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: opzione sconosciuta `--%s'\n" - -#: lib/getopt.c:849 lib/getopt.c:852 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: opzione sconosciuta `%c%s'\n" - -#: lib/getopt.c:899 lib/getopt.c:902 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: opzione non valida -- %c\n" - -#: lib/getopt.c:908 lib/getopt.c:911 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: opzione non valida -- %c\n" - -#: lib/getopt.c:958 lib/getopt.c:969 lib/getopt.c:1155 lib/getopt.c:1168 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: l'opzione richiede un argomento -- %c\n" - -#: lib/getopt.c:1021 lib/getopt.c:1032 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: l'opzione `-W %s' è ambigua\n" - -#: lib/getopt.c:1056 lib/getopt.c:1068 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: l'opzione `-W %s' non ammette un argomento\n" - -#: lib/obstack.c:487 lib/obstack.c:490 lib/xmalloc.c:63 -msgid "memory exhausted" -msgstr "memoria esaurita" - -#: lib/quotearg.c:236 -msgid "`" -msgstr "`" - -#: lib/quotearg.c:237 -msgid "'" -msgstr "'" - -#: lib/subpipe.c:187 -#, c-format -msgid "subsidiary program `%s' could not be invoked" -msgstr "" - -#: lib/subpipe.c:189 -#, c-format -msgid "subsidiary program `%s' not found" -msgstr "" - -#: lib/subpipe.c:191 -#, c-format -msgid "subsidiary program `%s' failed" -msgstr "" - -#: lib/subpipe.c:192 -#, c-format -msgid "subsidiary program `%s' failed (exit status %d)" -msgstr "" - -#: lib/timevar.c:476 -msgid "" -"\n" -"Execution times (seconds)\n" -msgstr "" -"\n" -"Tempo di esecuzione (in secondi)\n" - -#: lib/timevar.c:526 -msgid " TOTAL :" -msgstr " TOTALE :" - -#: lib/timevar.c:562 -#, c-format -msgid "time in %s: %ld.%06ld (%ld%%)\n" -msgstr "tempo in %s: %ld.%06ld (%ld%%)\n" - -#~ msgid "%d shift/reduce conflict" -#~ msgid_plural "%d shift/reduce conflicts" -#~ msgstr[0] "%d conflitto shift/riduzione" -#~ msgstr[1] "%d conflitti shift/riduzione" - -#~ msgid "and" -#~ msgstr "e" - -#~ msgid "conflicts: " -#~ msgstr "conflitti: " - -#~ msgid "State %d contains " -#~ msgstr "Lo stato %d contiene" - -#~ msgid "%s: no grammar file given\n" -#~ msgstr "%s: nessun file grammatica specificato\n" - -#~ msgid "%s: extra arguments ignored after `%s'\n" -#~ msgstr "%s: ignorati gli argomenti successivi a `%s'\n" - -#~ msgid "too many gotos (max %d)" -#~ msgstr "troppi goto (max %d)" - -#~ msgid "two @prec's in a row" -#~ msgstr "due @prec di seguito" - -#~ msgid "%%dprec affects only GLR parsers" -#~ msgstr "%%dprec considerato solo nei parser GLR" - -#~ msgid "only one %%dprec allowed per rule" -#~ msgstr "solo un %%dprec è permesso in una regola" - -#~ msgid "too many symbols (tokens plus nonterminals); maximum %d" -#~ msgstr "troppi simboli (token e nonterminali); il massimo è %d" - -#~ msgid ": unexpected end of file in a comment\n" -#~ msgstr ": fine del file inattesa in un commento\n" - -#~ msgid ": unexpected end of file in a string\n" -#~ msgstr ": fine del file inattesa in una stringa\n" - -#~ msgid ": unexpected end of file in a character\n" -#~ msgstr ": fine del file inattesa in un carattere\n" - -#~ msgid ": unexpected end of file in a braced code\n" -#~ msgstr ": fine del file inattesa in codice (tra parentesi graffe)\n" - -#~ msgid ": unexpected end of file in a prologue\n" -#~ msgstr ": fine del file inattesa nel prologo\n" - -#~ msgid "%s is invalid" -#~ msgstr "%s non è valido" - -#~ msgid "too many states (max %d)" -#~ msgstr "troppi stati (massimo %d)" diff --git a/po/ja.po b/po/ja.po deleted file mode 100644 index 96637627..00000000 --- a/po/ja.po +++ /dev/null @@ -1,1055 +0,0 @@ -# Japanese message for GNU bison 1.30f -# Copyright (C) 2001 Free Software Foundation, Inc. -# Daisuke Yamashita , 2001. -# -msgid "" -msgstr "" -"Project-Id-Version: GNU bison 1.30f\n" -"Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2003-08-25 17:14+0200\n" -"PO-Revision-Date: 2002-10-29 01:00-05:00\n" -"Last-Translator: Daisuke Yamashita \n" -"Language-Team: Japanese \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=EUC-JP\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#: src/complain.c:56 lib/error.c:135 lib/error.c:163 -msgid "Unknown system error" -msgstr "ÉÔÌÀ¤Ê¥·¥¹¥Æ¥à¥¨¥é¡¼" - -#: src/complain.c:79 src/complain.c:94 -msgid "warning: " -msgstr "·Ù¹ð: " - -#: src/complain.c:150 src/complain.c:166 -msgid "fatal error: " -msgstr "Ã×̿Ū¥¨¥é¡¼: " - -#: src/conflicts.c:75 -#, fuzzy, c-format -msgid " Conflict between rule %d and token %s resolved as shift" -msgstr "¾õÂÖ %d ¤Îµ¬Â§ %d ¤È¥È¡¼¥¯¥ó %s ¤Î¶¥¹ç¤ò%s¤È¤·¤Æ²ò·è¡£\n" - -#: src/conflicts.c:83 -#, fuzzy, c-format -msgid " Conflict between rule %d and token %s resolved as reduce" -msgstr "¾õÂÖ %d ¤Îµ¬Â§ %d ¤È¥È¡¼¥¯¥ó %s ¤Î¶¥¹ç¤ò%s¤È¤·¤Æ²ò·è¡£\n" - -#: src/conflicts.c:90 -#, fuzzy, c-format -msgid " Conflict between rule %d and token %s resolved as an error" -msgstr "¾õÂÖ %d ¤Îµ¬Â§ %d ¤È¥È¡¼¥¯¥ó %s ¤Î¶¥¹ç¤ò%s¤È¤·¤Æ²ò·è¡£\n" - -#: src/conflicts.c:398 -#, c-format -msgid "conflicts: %d shift/reduce, %d reduce/reduce\n" -msgstr "" - -#: src/conflicts.c:401 -#, fuzzy, c-format -msgid "conflicts: %d shift/reduce\n" -msgstr " %d ¥·¥Õ¥È/´Ô¸µ" - -#: src/conflicts.c:403 -#, fuzzy, c-format -msgid "conflicts: %d reduce/reduce\n" -msgstr " %d ´Ô¸µ/´Ô¸µ" - -#: src/conflicts.c:421 -#, fuzzy, c-format -msgid "State %d " -msgstr "¾õÂÖ %d" - -#: src/conflicts.c:498 -#, fuzzy, c-format -msgid "expected %d shift/reduce conflict" -msgid_plural "expected %d shift/reduce conflicts" -msgstr[0] "ËÜÍè %d ¸Ä¤Î¥·¥Õ¥È/´Ô¸µ¾×ÆͤǤ¢¤ë¤Ï¤º¤Ç¤¹\n" - -#: src/conflicts.c:503 -#, fuzzy -msgid "expected 0 reduce/reduce conflicts" -msgstr "%d ´Ô¸µ/´Ô¸µ¾×ÆÍ" - -#: src/files.c:99 -#, c-format -msgid "cannot open file `%s'" -msgstr "¥Õ¥¡¥¤¥ë `%s' ¤ò³«¤±¤Þ¤»¤ó" - -#: src/files.c:115 -#, fuzzy -msgid "I/O error" -msgstr "¥¨¥é¡¼" - -#: src/files.c:118 -msgid "cannot close file" -msgstr "¥Õ¥¡¥¤¥ë¤òÊĤ¸¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó" - -#: src/files.c:336 -#, fuzzy, c-format -msgid "conflicting outputs to file %s" -msgstr "Èó·ë¹çÃÍ %s ¤È %s ¤Ç¶¥¹ç¤¬À¸¤¸¤Æ¤¤¤Þ¤¹" - -#: src/getargs.c:186 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "`%s --help' ¤Ç¾ÜºÙ¾ðÊó¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤\n" - -#: src/getargs.c:192 -msgid "GNU bison generates parsers for LALR(1) grammars.\n" -msgstr "GNU bison ¤Ï LALR(1) ʸˡ¤Î¹½Ê¸²òÀÏ´ï¤òÀ¸À®¤·¤Þ¤¹¡£\n" - -#: src/getargs.c:196 -#, c-format -msgid "Usage: %s [OPTION]... FILE\n" -msgstr "»È¤¤Êý: %s [¥ª¥×¥·¥ç¥ó]... ¥Õ¥¡¥¤¥ë\n" - -#: src/getargs.c:200 -msgid "" -"If a long option shows an argument as mandatory, then it is mandatory\n" -"for the equivalent short option also. Similarly for optional arguments.\n" -msgstr "" -"¥í¥ó¥°¥ª¥×¥·¥ç¥ó¤Çɬ¿Ü¤Î°ú¿ô¤¬¼¨¤µ¤ì¤Æ¤¤¤ì¤Ð¡¢Æ±¤¸°ÕÌ£¤Î¥·¥ç¡¼¥È¥ª¥×¥·¥ç¥ó\n" -"¤Ç¤âƱÍͤËɬ¿Ü¤Î°ú¿ô¤È¤Ê¤ê¤Þ¤¹¡£É¬¿Ü¤Ç¤Ê¤¤ÁªÂòŪ°ú¿ô¤Ç¤âƱÍͤǤ¹¡£\n" - -#: src/getargs.c:206 -msgid "" -"Operation modes:\n" -" -h, --help display this help and exit\n" -" -V, --version output version information and exit\n" -" -y, --yacc emulate POSIX yacc\n" -msgstr "" -"Áàºî¥â¡¼¥É:\n" -" -h, --help ¤³¤Î»È¤¤Êý¤òɽ¼¨¤·¤Æ½ªÎ»¤¹¤ë\n" -" -V, --version ¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤·¤Æ½ªÎ»¤¹¤ë\n" -" -y, --yacc POSIX yacc ¤ò¥¨¥ß¥å¥ì¥¤¥È¤¹¤ë\n" - -#: src/getargs.c:213 -msgid "" -"Parser:\n" -" -S, --skeleton=FILE specify the skeleton to use\n" -" -t, --debug instrument the parser for debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n" -" -l, --no-lines don't generate `#line' directives\n" -" -n, --no-parser generate the tables only\n" -" -k, --token-table include a table of token names\n" -msgstr "" -"¹½Ê¸²òÀÏ´ï:\n" -" -S, --skeleton=FILE ÍøÍѤ¹¤ë¥¹¥±¥ë¥È¥ó¤ò»ØÄꤹ¤ë\n" -" -t, --debug ¹½Ê¸²òÀϤΥǥХå°ÍѤμêÃÊ\n" -" --locations ·×»»·ë²Ì°ÌÃÖ¤òÍ­¸ú¤Ë¤¹¤ë\n" -" -p, --name-prefix=PREFIX PREFIX ¤ò³°Éô¥·¥ó¥Ü¥ë¤È¤·¤ÆÀèƬ¤ËÁÞÆþ¤¹¤ë\n" -" -l, --no-lines `#line' ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤òÀ¸À®¤·¤Ê¤¤\n" -" -n, --no-parser ¥Æ¡¼¥Ö¥ë¤Î¤ß¤òÀ¸À®¤¹¤ë\n" -" -k, --token-table ¥È¡¼¥¯¥ó̾¤Î¥Æ¡¼¥Ö¥ë¤ò´Þ¤á¤ë\n" - -#: src/getargs.c:225 -#, fuzzy -msgid "" -"Output:\n" -" -d, --defines also produce a header file\n" -" -r, --report=THINGS also produce details on the automaton\n" -" -v, --verbose same as `--report=state'\n" -" -b, --file-prefix=PREFIX specify a PREFIX for output files\n" -" -o, --output=FILE leave output to FILE\n" -" -g, --graph also produce a VCG description of the " -"automaton\n" -msgstr "" -"½ÐÎÏ:\n" -" -d, --defines ¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤âºîÀ®¤¹¤ë\n" -" -v, --verbose ¥ª¡¼¥È¥Þ¥È¥ó¤Î²òÀâ¤âºîÀ®¤¹¤ë\n" -" -b, --file-prefix=PREFIX ½ÐÎÏ¥Õ¥¡¥¤¥ë¤Î PREFIX(ÀÜƬ¼­) ¤ò»ØÄꤹ¤ë\n" -" -o, --output=FILE ½ÐÎÏÀè¤ò FILE ¤È¤¹¤ë\n" -" -g, --graph ¥ª¡¼¥È¥Þ¥È¥ó¤Î VCG µ­½Ò»Ò¤âºîÀ®¤¹¤ë\n" - -#: src/getargs.c:236 -msgid "" -"THINGS is a list of comma separated words that can include:\n" -" `state' describe the states\n" -" `itemset' complete the core item sets with their closure\n" -" `lookahead' explicitly associate lookaheads to items\n" -" `solved' describe shift/reduce conflicts solving\n" -" `all' include all the above information\n" -" `none' disable the report\n" -msgstr "" - -#: src/getargs.c:247 -msgid "Report bugs to .\n" -msgstr "¥Ð¥°¥ì¥Ý¡¼¥È¤Ï ¤Þ¤Ç¡£\n" - -#: src/getargs.c:264 -#, c-format -msgid "bison (GNU Bison) %s" -msgstr "bison (GNU Bison) %s" - -#: src/getargs.c:266 -msgid "Written by Robert Corbett and Richard Stallman.\n" -msgstr "" - -#: src/getargs.c:270 -#, fuzzy, c-format -msgid "Copyright (C) %d Free Software Foundation, Inc.\n" -msgstr "" -"Copyright 1984, 1986, 1989, 1992, 2000, 2001 Free Software Foundation, Inc.\n" - -#: src/getargs.c:272 -msgid "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -"[»²¹ÍÌõ -- ˡŪ¸úÎϤϱÑʸ¤¬Å¬ÍѤµ¤ì¤Þ¤¹]\n" -"¤³¤ì¤Ï¥Õ¥ê¡¼¥½¥Õ¥È¥¦¥§¥¢¤Ç¤¹ -- Ê£À½¤Ë¤Ä¤¤¤Æ¤Î¾ò·ï¤Ï¥½¡¼¥¹¤ò¸«¤Þ¤·¤ç¤¦¡£\n" -"°ìÀÚ¤ÎÊݾڤϤ¢¤ê¤Þ¤»¤ó -- ¾¦¶ÈÀ­¤äÌÜŪŬ¹çÀ­¤Ë¤Ä¤¤¤Æ¤ÎÊݾڤ¹¤é¤¢¤ê¤Þ¤»¤ó¡£\n" - -#: src/getargs.c:438 -#, c-format -msgid "missing operand after `%s'" -msgstr "" - -#: src/getargs.c:440 -#, c-format -msgid "extra operand `%s'" -msgstr "" - -#: src/gram.c:139 -msgid "empty" -msgstr "¶õ" - -#: src/gram.c:233 -msgid "Grammar" -msgstr "ʸˡ" - -#: src/gram.c:321 src/reduce.c:394 -#, fuzzy -msgid "warning" -msgstr "·Ù¹ð: " - -#: src/main.c:124 -#, fuzzy -msgid "rule never reduced because of conflicts" -msgstr " 1 ´Ô¸µ/´Ô¸µ¾×ÆÍ" - -#: src/parse-gram.y:353 -msgid "POSIX forbids declarations in the grammar" -msgstr "" - -#: src/parse-gram.y:476 -msgid "missing identifier in parameter declaration" -msgstr "" - -#: src/print.c:49 -#, c-format -msgid " type %d is %s\n" -msgstr " ¥¿¥¤¥× %d ¤Ï %s ¤Ç¤¹\n" - -#: src/print.c:165 -#, fuzzy, c-format -msgid "shift, and go to state %d\n" -msgstr " %-4s\t¥·¥Õ¥È¡¢¤ª¤è¤Ó¾õÂÖ %d ¤Ø\n" - -#: src/print.c:167 -#, fuzzy, c-format -msgid "go to state %d\n" -msgstr " $ \t¾õÂÖ %d ¤Ø\n" - -#: src/print.c:204 -#, fuzzy -msgid "error (nonassociative)\n" -msgstr "%-4s\t¥¨¥é¡¼ (Èó·ë¹ç)" - -#: src/print.c:292 -#, fuzzy, c-format -msgid "reduce using rule %d (%s)" -msgstr "$default\tµ¬Â§ %d ¤òÍøÍѤ·¤Æ´Ô¸µ (%s)" - -#: src/print.c:294 -msgid "accept" -msgstr "" - -#: src/print.c:325 src/print.c:391 -msgid "$default" -msgstr "" - -#: src/print.c:420 -#, c-format -msgid "state %d" -msgstr "¾õÂÖ %d" - -#: src/print.c:456 -msgid "Terminals, with rules where they appear" -msgstr "½Ð¸½°ÌÃ֤ε¬Â§¤Ë¤è¤ë½ªÃ¼" - -#: src/print.c:483 -msgid "Nonterminals, with rules where they appear" -msgstr "½Ð¸½°ÌÃ֤ε¬Â§¤Ë¤è¤ëÈó½ªÃ¼" - -#: src/print.c:512 -msgid " on left:" -msgstr " º¸ÊÕ:" - -#: src/print.c:527 -msgid " on right:" -msgstr " ±¦ÊÕ:" - -#: src/print.c:555 -#, fuzzy -msgid "Rules never reduced" -msgstr "%d ¸Ä¤Îµ¬Â§¤Ï·è¤·¤Æ´Ô¸µ¤µ¤ì¤Þ¤»¤ó\n" - -#: src/reader.c:53 -#, c-format -msgid "multiple %s declarations" -msgstr "%s ¤¬Ê£¿ô¸ÄÀë¸À¤µ¤ì¤Þ¤·¤¿" - -#: src/reader.c:115 -#, c-format -msgid "result type clash on merge function %s: <%s> != <%s>" -msgstr "" - -#: src/reader.c:213 -#, c-format -msgid "rule given for %s, which is a token" -msgstr "%s ¤Ëµ¬Â§¤¬Í¿¤¨¤é¤ì¡¢¤½¤ì¤Ï¥È¡¼¥¯¥ó¤È¤Ê¤ê¤Þ¤¹" - -#: src/reader.c:242 -#, fuzzy, c-format -msgid "type clash on default action: <%s> != <%s>" -msgstr "½é´ü¾õÂÖ¤ÎÆ°ºî¤Ç¤Ï·¿ (`%s' `%s') ¤¬¾×Æͤ·¤Þ¤¹" - -#: src/reader.c:248 -msgid "empty rule for typed nonterminal, and no action" -msgstr "¶õ¤Î·¿ÉÕ¤­Èó½ªÃ¼¥¢¥¤¥Æ¥àÍѵ¬Â§¤Ç¤¢¤ê¡¢Æ°ºî¤¬µ¯¤ê¤Þ¤»¤ó" - -#: src/reader.c:318 src/reader.c:332 src/reader.c:345 -#, c-format -msgid "only one %s allowed per rule" -msgstr "" - -#: src/reader.c:328 src/reader.c:343 -#, c-format -msgid "%s affects only GLR parsers" -msgstr "" - -#: src/reader.c:330 -#, c-format -msgid "%s must be followed by positive number" -msgstr "" - -#: src/reader.c:487 -msgid "no rules in the input grammar" -msgstr "ÆþÎϤ·¤¿Ê¸Ë¡¤Ëµ¬Â§¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó" - -#: src/reduce.c:242 -#, fuzzy -msgid "useless rule" -msgstr "%d ¸Ä¤Î̵°ÕÌ£¤Êµ¬Â§" - -#: src/reduce.c:303 -#, fuzzy, c-format -msgid "useless nonterminal: %s" -msgstr "̵°ÕÌ£¤ÊÈó½ªÃ¼»Ò:" - -#: src/reduce.c:351 -#, fuzzy -msgid "Useless nonterminals" -msgstr "̵°ÕÌ£¤ÊÈó½ªÃ¼»Ò:" - -#: src/reduce.c:364 -#, fuzzy -msgid "Terminals which are not used" -msgstr "ÍøÍѤµ¤ì¤Ê¤¤½ªÃ¼»Ò:" - -#: src/reduce.c:373 -#, fuzzy -msgid "Useless rules" -msgstr "̵°ÕÌ£¤Êµ¬Â§:" - -#: src/reduce.c:389 -#, c-format -msgid "%d rule never reduced\n" -msgid_plural "%d rules never reduced\n" -msgstr[0] "%d ¸Ä¤Îµ¬Â§¤Ï·è¤·¤Æ´Ô¸µ¤µ¤ì¤Þ¤»¤ó\n" - -#: src/reduce.c:397 -#, c-format -msgid "%d useless nonterminal" -msgid_plural "%d useless nonterminals" -msgstr[0] "%d ¸Ä¤Î̵°ÕÌ£¤ÊÈó½ªÃ¼»Ò" - -#: src/reduce.c:403 -msgid " and " -msgstr "¤ª¤è¤Ó" - -#: src/reduce.c:406 -#, c-format -msgid "%d useless rule" -msgid_plural "%d useless rules" -msgstr[0] "%d ¸Ä¤Î̵°ÕÌ£¤Êµ¬Â§" - -#: src/reduce.c:436 -#, fuzzy, c-format -msgid "start symbol %s does not derive any sentence" -msgstr "³«»Ï¥·¥ó¥Ü¥ë %s ¤Ï¤É¤Îʸ¤Ë¤âͳÍ褷¤Þ¤»¤ó" - -#: src/scan-gram.l:160 -msgid "stray `,' treated as white space" -msgstr "" - -#: src/scan-gram.l:221 -#, fuzzy, c-format -msgid "invalid directive: %s" -msgstr "ÉÔŬÀÚ¤ÊÆþÎÏ: %s" - -#: src/scan-gram.l:241 src/scan-gram.l:804 src/scan-gram.l:873 -#, c-format -msgid "integer out of range: %s" -msgstr "" - -#: src/scan-gram.l:283 -#, fuzzy, c-format -msgid "invalid character: %s" -msgstr "̤ÃΤÎʸ»ú: %s" - -#: src/scan-gram.l:412 src/scan-gram.l:422 src/scan-gram.l:441 -#, fuzzy, c-format -msgid "invalid escape sequence: %s" -msgstr "ÉÔŬÀÚ¤ÊÆþÎÏ: %s" - -#: src/scan-gram.l:446 -#, fuzzy, c-format -msgid "unrecognized escape sequence: %s" -msgstr "ǧ¼±¤Ç¤­¤Ê¤¤: %s" - -#: src/scan-gram.l:534 -#, c-format -msgid "missing `{' in `%s'" -msgstr "" - -#: src/scan-gram.l:774 -#, c-format -msgid "$$ of `%s' has no declared type" -msgstr "`%s' ¤Î $$ ¤ËÀë¸À¤Î¤Ê¤¤·¿¤¬¤¢¤ê¤Þ¤¹" - -#: src/scan-gram.l:795 -#, c-format -msgid "$%d of `%s' has no declared type" -msgstr "$%d ¸Ä¤Î `%s' ¤¬Àë¸À¤µ¤ì¤¿·¿¤ò»ý¤Ã¤Æ¤¤¤Þ¤»¤ó" - -#: src/scan-gram.l:840 src/scan-gram.l:908 -#, fuzzy, c-format -msgid "invalid value: %s" -msgstr "ÉÔŬÀÚ¤Ê $ ¤ÎÃÍ" - -#: src/scan-gram.l:996 -#, fuzzy, c-format -msgid "missing `%s' at end of file" -msgstr "ÊĤ¸¤é¤ì¤Æ¤¤¤Ê¤¤Ê¸»úÎ󤬥ե¡¥¤¥ëËöÈø¤Ë¤¢¤ê¤Þ¤¹" - -#: src/symlist.c:97 src/symlist.c:108 -msgid "invalid $ value" -msgstr "ÉÔŬÀÚ¤Ê $ ¤ÎÃÍ" - -#: src/symtab.c:84 -#, c-format -msgid "type redeclaration for %s" -msgstr "%s ¤Î·¿¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿" - -#: src/symtab.c:101 src/symtab.c:119 -#, fuzzy, c-format -msgid "%s redeclaration for %s" -msgstr "%s ¤Î·¿¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿" - -#: src/symtab.c:138 -#, c-format -msgid "redefining precedence of %s" -msgstr "%s ¤ËÀè¹Ô¤·¤¿ºÆÄêµÁ¤Ç¤¹" - -#: src/symtab.c:156 -#, c-format -msgid "symbol %s redefined" -msgstr "¥·¥ó¥Ü¥ë %s ¤¬ºÆÄêµÁ¤µ¤ì¤Þ¤·¤¿" - -#: src/symtab.c:179 -#, fuzzy, c-format -msgid "redefining user token number of %s" -msgstr "%s ¤ËÀè¹Ô¤·¤¿ºÆÄêµÁ¤Ç¤¹" - -#: src/symtab.c:206 -#, c-format -msgid "symbol %s is used, but is not defined as a token and has no rules" -msgstr "" -"¥·¥ó¥Ü¥ë %s ¤¬»È¤ï¤ì¤Æ¤¤¤Þ¤¹¤¬¡¢¥È¡¼¥¯¥ó¤È¤·¤ÆÄêµÁ¤µ¤ì¤Æ¤ª¤é¤º¡¢µ¬Â§¤ò»ý¤Á¤Þ" -"¤»¤ó" - -#: src/symtab.c:231 -#, c-format -msgid "symbol `%s' used more than once as a literal string" -msgstr "¥·¥ó¥Ü¥ë `%s' ¤Ï¥ê¥Æ¥é¥ëʸ»úÎó¤È¤·¤ÆÊ£¿ô²ó»È¤ï¤ì¤Þ¤·¤¿" - -#: src/symtab.c:234 -#, c-format -msgid "symbol `%s' given more than one literal string" -msgstr "¥·¥ó¥Ü¥ë `%s' ¤ÏÊ£¿ô¤Î¥ê¥Æ¥é¥ëʸ»úÎó¤¬Í¿¤¨¤é¤ì¤Þ¤·¤¿" - -#: src/symtab.c:270 -#, c-format -msgid "conflicting precedences for %s and %s" -msgstr "Àè¹Ô¤·¤Æ¤¤¤ë %s ¤È %s ¤Ç¶¥¹ç¤¬À¸¤¸¤Æ¤¤¤Þ¤¹" - -#: src/symtab.c:282 -#, fuzzy, c-format -msgid "conflicting associativities for %s (%s) and %s (%s)" -msgstr "Èó·ë¹çÃÍ %s ¤È %s ¤Ç¶¥¹ç¤¬À¸¤¸¤Æ¤¤¤Þ¤¹" - -#: src/symtab.c:367 -#, c-format -msgid "tokens %s and %s both assigned number %d" -msgstr "¥È¡¼¥¯¥ó %s ¤È %s ¤ÎÁÐÊý¤¬ÈÖ¹æ %d ¤Ë³ä¤êÅö¤Æ¤é¤ì¤Þ¤·¤¿" - -#: src/symtab.c:590 -#, c-format -msgid "the start symbol %s is undefined" -msgstr "³«»Ï¥·¥ó¥Ü¥ë %s ¤ÏÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó" - -#: src/symtab.c:594 -#, c-format -msgid "the start symbol %s is a token" -msgstr "³«»Ï¥·¥ó¥Ü¥ë %s ¤Ï¥È¡¼¥¯¥ó¤Ç¤¹" - -#: lib/argmatch.c:135 -#, fuzzy, c-format -msgid "invalid argument %s for %s" -msgstr "ÉÔŬÀÚ¤ÊÆþÎÏ: %s" - -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "" - -#: lib/argmatch.c:155 -msgid "Valid arguments are:" -msgstr "" - -#: lib/bitset_stats.c:179 -#, c-format -msgid "%u bitset_allocs, %u freed (%.2f%%).\n" -msgstr "" - -#: lib/bitset_stats.c:182 -#, c-format -msgid "%u bitset_sets, %u cached (%.2f%%)\n" -msgstr "" - -#: lib/bitset_stats.c:185 -#, c-format -msgid "%u bitset_resets, %u cached (%.2f%%)\n" -msgstr "" - -#: lib/bitset_stats.c:188 -#, c-format -msgid "%u bitset_tests, %u cached (%.2f%%)\n" -msgstr "" - -#: lib/bitset_stats.c:192 -#, c-format -msgid "%u bitset_lists\n" -msgstr "" - -#: lib/bitset_stats.c:194 -msgid "count log histogram\n" -msgstr "" - -#: lib/bitset_stats.c:197 -msgid "size log histogram\n" -msgstr "" - -#: lib/bitset_stats.c:200 -msgid "density histogram\n" -msgstr "" - -#: lib/bitset_stats.c:214 -msgid "" -"Bitset statistics:\n" -"\n" -msgstr "" - -#: lib/bitset_stats.c:217 -#, c-format -msgid "Accumulated runs = %u\n" -msgstr "" - -#: lib/bitset_stats.c:261 lib/bitset_stats.c:266 -msgid "Could not read stats file." -msgstr "" - -#: lib/bitset_stats.c:263 -msgid "Bad stats file size.\n" -msgstr "" - -#: lib/bitset_stats.c:289 lib/bitset_stats.c:291 -msgid "Could not write stats file." -msgstr "" - -#: lib/bitset_stats.c:294 -msgid "Could not open stats file for writing." -msgstr "" - -#: lib/getopt.c:688 lib/getopt.c:700 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: ¥ª¥×¥·¥ç¥ó `%s' ¤ÏÛ£Ëæ¤Ç¤¹\n" - -#: lib/getopt.c:733 lib/getopt.c:737 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: ¥ª¥×¥·¥ç¥ó `--%s' ¤Ï°ú¿ô¤òµö¤·¤Þ¤»¤ó\n" - -#: lib/getopt.c:746 lib/getopt.c:751 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: ¥ª¥×¥·¥ç¥ó `%c%s' ¤Ï°ú¿ô¤òµö¤·¤Þ¤»¤ó\n" - -#: lib/getopt.c:787 lib/getopt.c:800 lib/getopt.c:1089 lib/getopt.c:1102 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: ¥ª¥×¥·¥ç¥ó `%s' ¤Ï°ú¿ô¤òÍ׵ᤷ¤Þ¤¹\n" - -#: lib/getopt.c:838 lib/getopt.c:841 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: ǧ¼±¤Ç¤­¤Ê¤¤¥ª¥×¥·¥ç¥ó `--%s' ¤Ç¤¹\n" - -#: lib/getopt.c:849 lib/getopt.c:852 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: ǧ¼±¤Ç¤­¤Ê¤¤¥ª¥×¥·¥ç¥ó `%c%s' ¤Ç¤¹\n" - -#: lib/getopt.c:899 lib/getopt.c:902 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: Äê³Ê³°¤Î¥ª¥×¥·¥ç¥ó -- %c\n" - -#: lib/getopt.c:908 lib/getopt.c:911 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: ÉÔŬÀڤʥª¥×¥·¥ç¥ó -- %c\n" - -#: lib/getopt.c:958 lib/getopt.c:969 lib/getopt.c:1155 lib/getopt.c:1168 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: ¥ª¥×¥·¥ç¥ó¤Ï°ú¿ô¤òÍ׵ᤷ¤Þ¤¹ -- %c\n" - -#: lib/getopt.c:1021 lib/getopt.c:1032 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: ¥ª¥×¥·¥ç¥ó `-W %s' ¤ÏÛ£Ëæ¤Ç¤¹\n" - -#: lib/getopt.c:1056 lib/getopt.c:1068 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: ¥ª¥×¥·¥ç¥ó `-W %s' ¤Ï°ú¿ô¤òµö¤·¤Þ¤»¤ó\n" - -#: lib/obstack.c:487 lib/obstack.c:490 lib/xmalloc.c:63 -msgid "memory exhausted" -msgstr "¥á¥â¥ê¤ò»È¤¤²Ì¤¿¤·¤Þ¤·¤¿" - -#: lib/quotearg.c:236 -msgid "`" -msgstr "`" - -#: lib/quotearg.c:237 -msgid "'" -msgstr "'" - -#: lib/subpipe.c:187 -#, c-format -msgid "subsidiary program `%s' could not be invoked" -msgstr "" - -#: lib/subpipe.c:189 -#, c-format -msgid "subsidiary program `%s' not found" -msgstr "" - -#: lib/subpipe.c:191 -#, c-format -msgid "subsidiary program `%s' failed" -msgstr "" - -#: lib/subpipe.c:192 -#, c-format -msgid "subsidiary program `%s' failed (exit status %d)" -msgstr "" - -#: lib/timevar.c:476 -msgid "" -"\n" -"Execution times (seconds)\n" -msgstr "" - -#: lib/timevar.c:526 -msgid " TOTAL :" -msgstr "" - -#: lib/timevar.c:562 -#, c-format -msgid "time in %s: %ld.%06ld (%ld%%)\n" -msgstr "" - -#~ msgid "too many states (max %d)" -#~ msgstr "¾õÂÖ¤¬Â¿¤¹¤®¤Þ¤¹ (ºÇÂç %d)" - -#~ msgid "reduce" -#~ msgstr "´Ô¸µ" - -#~ msgid "shift" -#~ msgstr "¥·¥Õ¥È" - -#~ msgid "%d shift/reduce conflict" -#~ msgid_plural "%d shift/reduce conflicts" -#~ msgstr[0] "%d ¥·¥Õ¥È/´Ô¸µ¾×ÆÍ" - -#~ msgid "and" -#~ msgstr "¤ª¤è¤Ó" - -#~ msgid "State %d contains " -#~ msgstr "¾õÂÖ %d ¤¬´Þ¤à¤Î¤Ï " - -#~ msgid "conflicts: " -#~ msgstr "¾×ÆÍ: " - -#~ msgid "%s contains " -#~ msgstr "%s ¤ÎÃæ¿È¤Ï" - -#~ msgid " %-4s\t[reduce using rule %d (%s)]\n" -#~ msgstr " %-4s\t[µ¬Â§ %d ¤òÍøÍѤ·¤Æ´Ô¸µ (%s)]\n" - -#~ msgid "" -#~ " $default\treduce using rule %d (%s)\n" -#~ "\n" -#~ msgstr "" -#~ " $default\tµ¬Â§ %d ¤òÍøÍѤ·¤Æ´Ô¸µ (%s)\n" -#~ "\n" - -#~ msgid " %-4s\treduce using rule %d (%s)\n" -#~ msgstr " %-4s\tµ¬Â§ %d ¤òÍøÍѤ·¤Æ´Ô¸µ (%s)\n" - -#~ msgid " $default\treduce using rule %d (%s)\n" -#~ msgstr " $default\tµ¬Â§ %d ¤òÍøÍѤ·¤Æ´Ô¸µ (%s)\n" - -#~ msgid "`%s' is no longer supported" -#~ msgstr "`%s' ¤ÏºÇÁ᥵¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó" - -#~ msgid "%s: no grammar file given\n" -#~ msgstr "%s: ʸˡ¥Õ¥¡¥¤¥ë¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó\n" - -#~ msgid "%s: extra arguments ignored after `%s'\n" -#~ msgstr "%s: `%s' ¤Î¸å¤í¤Î;ʬ¤Ê°ú¿ô¤Ï̵»ë¤µ¤ì¤Þ¤·¤¿\n" - -#~ msgid "too many gotos (max %d)" -#~ msgstr "goto ¤Î¿ô¤¬Â¿¤¹¤®¤Þ¤¹ (ºÇÂç %d)" - -#~ msgid "unexpected `/' found and ignored" -#~ msgstr "ͽ´ü¤·¤Ê¤¤ `/' ¤¬¸«¤Ä¤«¤ê¡¢Ìµ»ë¤µ¤ì¤Þ¤·¤¿" - -#~ msgid "unterminated comment" -#~ msgstr "ÊĤ¸¤Æ¤¤¤Ê¤¤¥³¥á¥ó¥È¤Ç¤¹" - -#~ msgid "unexpected end of file" -#~ msgstr "ͽ´ü¤·¤Ê¤¤¥Õ¥¡¥¤¥ë¤Î½ªÃ¼¤Ç¤¹" - -#~ msgid "unescaped newline in constant" -#~ msgstr "Äê¿ô¤ÎÃæ¤Ë¥¨¥¹¥±¡¼¥×¤µ¤ì¤Æ¤¤¤Ê¤¤²þ¹Ô¤¬¤¢¤ê¤Þ¤¹" - -#~ msgid "octal value outside range 0...255: `\\%o'" -#~ msgstr "8 ¿Ê¿ô¤ÎÃͤ¬ 0...255 ¤ÎÈϰϳ°¤Ç¤¹: `\\%o'" - -#~ msgid "hexadecimal value above 255: `\\x%x'" -#~ msgstr "16 ¿Ê¿ô¤ÎÃͤ¬ 255 ¤ò±Û¤¨¤Æ¤¤¤Þ¤¹: `\\x%x'" - -#~ msgid "unknown escape sequence: `\\' followed by `%s'" -#~ msgstr "̤ÃΤΥ¨¥¹¥±¡¼¥×¥·¡¼¥±¥ó¥¹: `\\' ¤Î¸å¤Ë `%s'" - -#~ msgid "unterminated type name at end of file" -#~ msgstr "ÊĤ¸¤é¤ì¤Æ¤¤¤Ê¤¤¥¿¥¤¥×̾¤¬¡¢¥Õ¥¡¥¤¥ëËöÈø¤Ë¤¢¤ê¤Þ¤¹" - -#~ msgid "unterminated type name" -#~ msgstr "ÊĤ¸¤é¤ì¤Æ¤¤¤Ê¤¤¥¿¥¤¥×̾¤¬¤¢¤ê¤Þ¤¹" - -#~ msgid "use \"...\" for multi-character literal tokens" -#~ msgstr "Ê£¿ôʸ»ú¤Î¥ê¥Æ¥é¥ë¥È¡¼¥¯¥ó¤Ë¤Ï \"...\" ¤ò»È¤¤¤Þ¤·¤ç¤¦" - -#~ msgid "`%s' supports no argument: %s" -#~ msgstr "`%s' ¤Ï°ú¿ô¤ò¼õ¤±ÉÕ¤±¤Þ¤»¤ó: %s" - -#~ msgid "`%s' requires an argument" -#~ msgstr "`%s' ¥ª¥×¥·¥ç¥ó¤Ï°ú¿ô¤òÍ׵ᤷ¤Þ¤¹" - -#~ msgid "maximum table size (%d) exceeded" -#~ msgstr "ºÇÂç¥Æ¡¼¥Ö¥ë¥µ¥¤¥º (%d) ¤òĶ¤¨¤Þ¤·¤¿" - -#~ msgid " (rule %d)" -#~ msgstr " (µ¬Â§ %d)" - -#~ msgid " $default\taccept\n" -#~ msgstr " $default\taccept\n" - -#~ msgid " NO ACTIONS\n" -#~ msgstr " Æ°ºî̵¤·\n" - -#~ msgid " %-4s\terror (nonassociative)\n" -#~ msgstr " %-4s\t¥¨¥é¡¼ (Èó·ë¹ç)\n" - -#~ msgid " %-4s\tgo to state %d\n" -#~ msgstr " %-4s\t¾õÂÖ %d ¤Ø\n" - -#~ msgid "Number, Line, Rule" -#~ msgstr "ÈÖ¹æ, ¹Ô, µ¬Â§" - -#~ msgid " %3d %3d %s ->" -#~ msgstr " %3d %3d %s ->" - -#~ msgid " Skipping to next \\n" -#~ msgstr " ¼¡¤Î \\n ¤Ë¥¹¥­¥Ã¥×" - -#~ msgid " Skipping to next %c" -#~ msgstr " ¼¡¤Î %c ¤Ë¥¹¥­¥Ã¥×" - -#~ msgid "unterminated string" -#~ msgstr "ÊĤ¸¤é¤ì¤Æ¤¤¤Ê¤¤Ê¸»úÎó" - -#~ msgid "%s is invalid" -#~ msgstr "%s ¤ÏÉÔŬÀڤǤ¹" - -#~ msgid "unterminated `%{' definition" -#~ msgstr "`%{' ÄêµÁ ¤¬ÊĤ¸¤é¤ì¤Æ¤¤¤Þ¤»¤ó" - -#~ msgid "Premature EOF after %s" -#~ msgstr "%s ¤Î¸å¤í¤ËÁ᤯¤â EOF ¤¬¤¢¤ê¤Þ¤¹" - -#~ msgid "`%s' is invalid in %s" -#~ msgstr "`%s' ¤Ï %s Æâ¤Ç¤ÏÉÔŬÀڤǤ¹" - -#~ msgid "invalid %s declaration" -#~ msgstr "%s ¤ÎÀë¸À¤¬ÉÔŬÀڤǤ¹" - -#~ msgid "%type declaration has no " -#~ msgstr "%type Àë¸À¤Ë <¥¿¥¤¥×̾> ¤¬¤¢¤ê¤Þ¤»¤ó" - -#~ msgid "invalid %%type declaration due to item: %s" -#~ msgstr "¥¢¥¤¥Æ¥à¤Î°Ù¤Î %%type Àë¸À¤¬ÉÔŬÀڤǤ¹: %s" - -#~ msgid "invalid text (%s) - number should be after identifier" -#~ msgstr "ÉÔŬÀڤʥƥ­¥¹¥È (%s) - ¿ôÃͤϼ±Ê̻Ҥθå¤í¤Ë¤¢¤ë¤Ù¤­¤Ç¤¹" - -#~ msgid "unexpected item: %s" -#~ msgstr "ͽ´ü¤»¤Ì¥¢¥¤¥Æ¥à: %s" - -#~ msgid "unmatched %s" -#~ msgstr "Âбþ¤Î¤Ê¤¤ %s ¤Ç¤¹" - -#~ msgid "argument of %%expect is not an integer" -#~ msgstr "%%expect ¤Î°ú¿ô¤¬À°¿ôÃͤǤϤ¢¤ê¤Þ¤»¤ó" - -#~ msgid "unrecognized item %s, expected an identifier" -#~ msgstr "ǧ¼±¤Ç¤­¤Ê¤¤¥¢¥¤¥Æ¥à %s¡¢¤³¤³¤Ç¤Ï¼±Ê̻Ҥ¬´üÂÔ¤µ¤ì¤Þ¤¹" - -#~ msgid "expected string constant instead of %s" -#~ msgstr "¤³¤³¤Ç¤Ï %s ¤Ç¤Ï¤Ê¤¯Ê¸»úÎóÄê¿ô¤¬´üÂÔ¤µ¤ì¤Þ¤¹" - -#~ msgid "no input grammar" -#~ msgstr "ʸˡ¤ÎÆþÎϤ¬Ìµ¤¤" - -#~ msgid "unterminated %guard clause" -#~ msgstr "%guard À᤬ÊĤ¸¤é¤ì¤Æ¤¤¤Þ¤»¤ó" - -#~ msgid "ill-formed rule: initial symbol not followed by colon" -#~ msgstr "¼Ù°­¤Êµ¬Â§: ½é´ü²½¥·¥ó¥Ü¥ë¤Ë¥³¥í¥ó (:) ¤¬Â³¤¤¤Æ¤¤¤Þ¤»¤ó" - -#~ msgid "grammar starts with vertical bar" -#~ msgstr "ʸˡ¤Ï½ÄËÀ (|) ¤Ç»Ï¤á¤Þ¤¹" - -#~ msgid "two @prec's in a row" -#~ msgstr "@prec ¤Î¤â¤ÎÆó¤Ä¤¬Æ±Îó¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹" - -#~ msgid "%%guard present but %%semantic_parser not specified" -#~ msgstr "%%guard ¤¬¤¢¤ê¤Þ¤¹¤¬ %%semantic_parser ¤¬»ØÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó" - -#~ msgid "two actions at end of one rule" -#~ msgstr "°ì¤Ä¤Îµ¬Â§¤Î½ª¤ê¤ËÆó¤Ä¤ÎÆ°ºî¤ò»ØÄꤷ¤Æ¤¤¤Þ¤¹" - -#~ msgid "too many symbols (tokens plus nonterminals); maximum %d" -#~ msgstr "¥·¥ó¥Ü¥ë¤¬Â¿¤¹¤®¤Þ¤¹ (¥È¡¼¥¯¥ó + Èó½ªÃ¼¥¢¥¤¥Æ¥à) -- ºÇÂç %d" - -#~ msgid "" -#~ "\n" -#~ "\n" -#~ "\n" -#~ "FIRSTS\n" -#~ "\n" -#~ msgstr "" -#~ "\n" -#~ "\n" -#~ "\n" -#~ "FIRSTS\n" -#~ "\n" - -#~ msgid "" -#~ "\n" -#~ "\n" -#~ "%s firsts\n" -#~ "\n" -#~ msgstr "" -#~ "\n" -#~ "\n" -#~ "%s firsts\n" -#~ "\n" - -#~ msgid "" -#~ "\n" -#~ "\n" -#~ "\n" -#~ "FDERIVES\n" -#~ msgstr "" -#~ "\n" -#~ "\n" -#~ "\n" -#~ "FDERIVES\n" - -#~ msgid "" -#~ "\n" -#~ "\n" -#~ "%s derives\n" -#~ "\n" -#~ msgstr "" -#~ "\n" -#~ "\n" -#~ "%s ¤Ï°Ê²¼¤«¤éÇÉÀ¸\n" -#~ "\n" - -#~ msgid " 1 shift/reduce conflict" -#~ msgstr " 1 ¥·¥Õ¥È/´Ô¸µ¾×ÆÍ" - -#~ msgid "%s contains" -#~ msgstr "%s ¤Ë¤Ï¡¢" - -#~ msgid "" -#~ "\n" -#~ "\n" -#~ "\n" -#~ "DERIVES\n" -#~ "\n" -#~ msgstr "" -#~ "\n" -#~ "\n" -#~ "\n" -#~ "DERIVES\n" -#~ "\n" - -#~ msgid "%s derives" -#~ msgstr "%s ¤Ï°Ê²¼¤«¤éÇÉÀ¸" - -#~ msgid "" -#~ "Usage: %s [-dhklntvyV] [-b file-prefix] [-o outfile] [-p name-prefix]\n" -#~ " [--debug] [--defines] [--fixed-output-files] [--no-lines]\n" -#~ " [--verbose] [--version] [--help] [--yacc]\n" -#~ " [--no-parser] [--token-table]\n" -#~ " [--file-prefix=prefix] [--name-prefix=prefix]\n" -#~ " [--output=outfile] grammar-file\n" -#~ "\n" -#~ "Report bugs to bug-bison@gnu.org\n" -#~ msgstr "" -#~ "»È¤¤Êý: %s [-dhklntvyV] [-b file-prefix] [-o outfile] [-p name-prefix]\n" -#~ " [--debug] [--defines] [--fixed-output-files] [--no-lines]\n" -#~ " [--verbose] [--version] [--help] [--yacc]\n" -#~ " [--no-parser] [--token-table]\n" -#~ " [--file-prefix=prefix] [--name-prefix=prefix]\n" -#~ " [--output=outfile] ʸˡ¥Õ¥¡¥¤¥ë\n" -#~ "\n" -#~ "¥Ð¥°¤ò¸«¤Ä¤±¤¿¤é bug-bison@gnu.org ¤Þ¤ÇÏ¢Íí¤ò¡£\n" - -#~ msgid "gotos" -#~ msgstr "goto" - -#~ msgid "%s:%d: fatal error: " -#~ msgstr "%s:%d: Ã×̿Ū¥¨¥é¡¼: " - -#~ msgid "%s: " -#~ msgstr "%s: " - -#~ msgid "%s:%d: " -#~ msgstr "%s:%d: " - -#~ msgid "%s: internal error: %s\n" -#~ msgstr "%s: ÆâÉô¥¨¥é¡¼: %s\n" - -#~ msgid "Entering set_nullable" -#~ msgstr "set_nullable ¤ËÆþ¤ê¤Þ¤¹" - -#~ msgid "\t\t/* empty */" -#~ msgstr "\t\t/* ¶õ */" - -#~ msgid "unterminated comment in `%{' definition" -#~ msgstr "`%{' ÄêµÁ ¤ËÊĤ¸¤é¤ì¤Æ¤¤¤Ê¤¤¥³¥á¥ó¥È¤¬¤¢¤ê¤Þ¤¹" - -#~ msgid "multiple %union declarations" -#~ msgstr "Ê£¿ô¤Î %union Àë¸À¤Ç¤¹" - -#~ msgid "unterminated comment at end of file" -#~ msgstr "¥Õ¥¡¥¤¥ëËöÈø¤ËÊĤ¸¤é¤ì¤Æ¤¤¤Ê¤¤¥³¥á¥ó¥È¤¬¤¢¤ê¤Þ¤¹" - -#~ msgid "unmatched close-brace (`}')" -#~ msgstr "Âбþ¤Î¤Ê¤¤ÊĤ¸¥Ö¥ì¡¼¥¹ (`}') ¤Ç¤¹" - -#~ msgid "unmatched right brace (`}')" -#~ msgstr "Âбþ¤Î¤Ê¤¤±¦¥Ö¥ì¡¼¥¹ (`}') ¤Ç¤¹" - -#~ msgid "$%s is invalid" -#~ msgstr "$%s ¤ÏÉÔŬÀڤǤ¹" - -#~ msgid "invalid @-construct" -#~ msgstr "ÉÔŬÀÚ¤Ê @-¥³¥ó¥¹¥È¥é¥¯¥È¤Ç¤¹" - -#~ msgid "ill-formed %type declaration" -#~ msgstr "¼Ù°­¤Ê %type Àë¸À¤Ç¤¹" - -#~ msgid "" -#~ "reduced %s defines %d terminal%s, %d nonterminal%s, and %d production%s.\n" -#~ msgstr "" -#~ "´Ô¸µ¥Õ¥¡¥¤¥ë %s ¤Ç %d ¸Ä¤Î½ªÃ¼»Ò%.0s, %d ¸Ä¤ÎÈó½ªÃ¼»Ò%.0s, %d ¸Ä¤Îµ¬Â§%.0s" -#~ "¤¬ÄêµÁ¤µ¤ì¤Þ¤·¤¿\n" - -#~ msgid "" -#~ "Variables\n" -#~ "---------\n" -#~ "\n" -#~ msgstr "" -#~ "ÊÑ¿ô\n" -#~ "---------\n" -#~ "\n" - -#~ msgid "Value Sprec Sassoc Tag\n" -#~ msgstr "ÃÍ Á°ÃÖ ·ë¹ç ¥¿¥°\n" - -#~ msgid "" -#~ "Rules\n" -#~ "-----\n" -#~ "\n" -#~ msgstr "" -#~ "µ¬Â§\n" -#~ "-----\n" -#~ "\n" - -#~ msgid "" -#~ "Rules interpreted\n" -#~ "-----------------\n" -#~ "\n" -#~ msgstr "" -#~ "²ò¼á¤µ¤ì¤¿µ¬Â§\n" -#~ "-----------------\n" -#~ "\n" diff --git a/po/ms.po b/po/ms.po deleted file mode 100644 index 9b085385..00000000 --- a/po/ms.po +++ /dev/null @@ -1,709 +0,0 @@ -# Bison Bahasa Melayu (Malay) (ms). -# Copyright (C) 2003 Free Software Foundation, Inc. -# This file is distributed under the same license as the Bison package. -# Sharuzzaman Ahmat Raslan , 2003. -# -msgid "" -msgstr "" -"Project-Id-Version: bison 1.875\n" -"Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2003-08-25 17:14+0200\n" -"PO-Revision-Date: 2003-01-26 22:43GMT+8\n" -"Last-Translator: Sharuzzaman Ahmat Raslan \n" -"Language-Team: Malay \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: KBabel 0.9.5\n" - -#: src/complain.c:56 lib/error.c:135 lib/error.c:163 -msgid "Unknown system error" -msgstr "Ralat sistem tidak diketahui" - -#: src/complain.c:79 src/complain.c:94 -msgid "warning: " -msgstr "amaran: " - -#: src/complain.c:150 src/complain.c:166 -msgid "fatal error: " -msgstr "ralat maut: " - -#: src/conflicts.c:75 -#, c-format -msgid " Conflict between rule %d and token %s resolved as shift" -msgstr " Konflik antara hukum %d dan token %s diselesaikan sebagai pindahan" - -#: src/conflicts.c:83 -#, c-format -msgid " Conflict between rule %d and token %s resolved as reduce" -msgstr "" -" Konflik antara hukum %d dan token %s diselesaikan sebagai pengurangan" - -#: src/conflicts.c:90 -#, c-format -msgid " Conflict between rule %d and token %s resolved as an error" -msgstr " Konflik antara hukum %d dan token %s diselesaikan sebagai ralat" - -#: src/conflicts.c:398 -#, c-format -msgid "conflicts: %d shift/reduce, %d reduce/reduce\n" -msgstr "konflik: %d pemindahan/pengurangan, %d pengurangan/pengurangan\n" - -#: src/conflicts.c:401 -#, c-format -msgid "conflicts: %d shift/reduce\n" -msgstr "konflik: %d pemindahan/pengurangan\n" - -#: src/conflicts.c:403 -#, c-format -msgid "conflicts: %d reduce/reduce\n" -msgstr "konflik: %d pengurangan/pengurangan\n" - -#: src/conflicts.c:421 -#, c-format -msgid "State %d " -msgstr "Keadaan %d " - -#: src/conflicts.c:498 -#, c-format -msgid "expected %d shift/reduce conflict" -msgid_plural "expected %d shift/reduce conflicts" -msgstr[0] "jangkaan %d konflik pemindahan/pengurangan" -msgstr[1] "jangkaan %d konflik pemindahan/pengurangan" - -#: src/conflicts.c:503 -msgid "expected 0 reduce/reduce conflicts" -msgstr "jangkaan 0 konflik pengurangan/pengurangan" - -#: src/files.c:99 -#, c-format -msgid "cannot open file `%s'" -msgstr "tidak dapat membuka fail `%s'" - -#: src/files.c:115 -msgid "I/O error" -msgstr "Ralat I/O" - -#: src/files.c:118 -msgid "cannot close file" -msgstr "tidak dapat menutup fail" - -#: src/files.c:336 -#, c-format -msgid "conflicting outputs to file %s" -msgstr "keluaran berkonflik kepada fail %s" - -#: src/getargs.c:186 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "Cuba `%s --help' untuk lebih maklumat.\n" - -#: src/getargs.c:192 -msgid "GNU bison generates parsers for LALR(1) grammars.\n" -msgstr "GNU bison menjanakan penghurai untuk tatabahasa LALR(1).\n" - -#: src/getargs.c:196 -#, c-format -msgid "Usage: %s [OPTION]... FILE\n" -msgstr "Penggunaan: %s [PILIHAN]... FAIL\n" - -#: src/getargs.c:200 -msgid "" -"If a long option shows an argument as mandatory, then it is mandatory\n" -"for the equivalent short option also. Similarly for optional arguments.\n" -msgstr "" -"Jika satu pilihan panjang menunjukkan satu hujah sebagai mandatori, oleh itu " -"ia\n" -"mandatori untuk pilihan pendek sepadan juga. Serupa juga dengan hujah tidak " -"wajib.\n" - -#: src/getargs.c:206 -msgid "" -"Operation modes:\n" -" -h, --help display this help and exit\n" -" -V, --version output version information and exit\n" -" -y, --yacc emulate POSIX yacc\n" -msgstr "" -"Mod operasi:\n" -" -h, --help papar bantuan ini dan keluar\n" -" -V, --version keluarkan maklumat versi dan keluar\n" -" -y, --yacc tiru POSIX yacc\n" - -#: src/getargs.c:213 -msgid "" -"Parser:\n" -" -S, --skeleton=FILE specify the skeleton to use\n" -" -t, --debug instrument the parser for debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n" -" -l, --no-lines don't generate `#line' directives\n" -" -n, --no-parser generate the tables only\n" -" -k, --token-table include a table of token names\n" -msgstr "" -"Parser:\n" -" -S, --skeleton=FAIL nyatakan rangka untuk digunakan\n" -" -t, --debug peralatan parser untuk nyahpepijat\n" -" --locations hidupkan pengiraan lokasi\n" -" -p, --name-prefix=AWALAN tambah AWALAN kepada simbol luaran\n" -" -l, --no-lines jangan jana arahan `#line'\n" -" -n, --no-parser jana jadual sahaja\n" -" -k, --token-table sertakan jadual nama token\n" - -#: src/getargs.c:225 -msgid "" -"Output:\n" -" -d, --defines also produce a header file\n" -" -r, --report=THINGS also produce details on the automaton\n" -" -v, --verbose same as `--report=state'\n" -" -b, --file-prefix=PREFIX specify a PREFIX for output files\n" -" -o, --output=FILE leave output to FILE\n" -" -g, --graph also produce a VCG description of the " -"automaton\n" -msgstr "" -"Keluaran:\n" -" -d, --defines juga hasilkan fail header\n" -" -r, --report=PERKARA juga hasilkan butir terperinci bagi automaton\n" -" -v, --verbose sama seperti `--report=state'\n" -" -b, --file-prefix=AWALAN nyatakan AWALAN untuk fail keluaran\n" -" -o, --output=FAIL biarkan keluaran kepada FAIL\n" -" -g, --graph juga hasilkan huraian VCG bagi automaton\n" - -#: src/getargs.c:236 -msgid "" -"THINGS is a list of comma separated words that can include:\n" -" `state' describe the states\n" -" `itemset' complete the core item sets with their closure\n" -" `lookahead' explicitly associate lookaheads to items\n" -" `solved' describe shift/reduce conflicts solving\n" -" `all' include all the above information\n" -" `none' disable the report\n" -msgstr "" -"PERKARA adalah senarai perkataan dipisah koma yang boleh termasuk:\n" -" `state' nyatakan keadaan\n" -" `itemset' lengkapkan perkara asas dengan penutupnya\n" -" `lookahead' dengan jelas kaitkan lookahead kepada perkara\n" -" `solved' nyatakan penyelesaian konflik pemindahan/pengurangan\n" -" `all' masukkan semua maklumat diatas\n" -" `none' matikan laporan\n" - -#: src/getargs.c:247 -msgid "Report bugs to .\n" -msgstr "Lapor pepijat kepada .\n" - -#: src/getargs.c:264 -#, c-format -msgid "bison (GNU Bison) %s" -msgstr "bison (GNU Bison) %s" - -#: src/getargs.c:266 -msgid "Written by Robert Corbett and Richard Stallman.\n" -msgstr "Ditulis oleh Robert Corbett dan Richard Stallman.\n" - -#: src/getargs.c:270 -#, c-format -msgid "Copyright (C) %d Free Software Foundation, Inc.\n" -msgstr "Hakcipta (C) %d Free Software Foundation, Inc.\n" - -#: src/getargs.c:272 -msgid "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"Ini adalah perisian bebas; lihat sumber untuk syarat menyalin. TIADA\n" -"jaminan disediakan; tidak juga untuk KEBOLEHDAGANGAN atau KEUPAYAAN UNTUK " -"SESUATU TUJUAN KHUSUS.\n" - -#: src/getargs.c:438 -#, c-format -msgid "missing operand after `%s'" -msgstr "operan hilang selepas `%s'" - -#: src/getargs.c:440 -#, c-format -msgid "extra operand `%s'" -msgstr "operan tambahan `%s'" - -#: src/gram.c:139 -msgid "empty" -msgstr "kosong" - -#: src/gram.c:233 -msgid "Grammar" -msgstr "Tatabahasa" - -#: src/gram.c:321 src/reduce.c:394 -msgid "warning" -msgstr "amaran" - -#: src/main.c:124 -msgid "rule never reduced because of conflicts" -msgstr "hukum tidak dikurangkan kerana konflik" - -#: src/parse-gram.y:353 -msgid "POSIX forbids declarations in the grammar" -msgstr "POSIX melarang pengisytiharan didalam tatabahasa" - -#: src/parse-gram.y:476 -msgid "missing identifier in parameter declaration" -msgstr "pengecam hilang dalam parameter pengisytiharan" - -#: src/print.c:49 -#, c-format -msgid " type %d is %s\n" -msgstr " jenis %d adalah %s\n" - -#: src/print.c:165 -#, c-format -msgid "shift, and go to state %d\n" -msgstr "pindah, dan pergi ke keadaan %d\n" - -#: src/print.c:167 -#, c-format -msgid "go to state %d\n" -msgstr "pergi ke keadaan %d\n" - -#: src/print.c:204 -msgid "error (nonassociative)\n" -msgstr "ralat (tidak bergabung)\n" - -#: src/print.c:292 -#, c-format -msgid "reduce using rule %d (%s)" -msgstr "kurang menggunakan hukum %d (%s)" - -#: src/print.c:294 -msgid "accept" -msgstr "terima" - -#: src/print.c:325 src/print.c:391 -msgid "$default" -msgstr "$default" - -#: src/print.c:420 -#, c-format -msgid "state %d" -msgstr "keadaan %d" - -#: src/print.c:456 -msgid "Terminals, with rules where they appear" -msgstr "Terminal, dengan hukum dimana mereka kelihatan" - -#: src/print.c:483 -msgid "Nonterminals, with rules where they appear" -msgstr "Tidak terminal, dengan hukum dimana mereka kelihatan" - -#: src/print.c:512 -msgid " on left:" -msgstr " pada kiri:" - -#: src/print.c:527 -msgid " on right:" -msgstr " pada kanan:" - -#: src/print.c:555 -msgid "Rules never reduced" -msgstr "Hukum tidak dikurangkan" - -#: src/reader.c:53 -#, c-format -msgid "multiple %s declarations" -msgstr "pelbagai pengisytiharan %s" - -#: src/reader.c:115 -#, c-format -msgid "result type clash on merge function %s: <%s> != <%s>" -msgstr "jenis hasil bertelingkah pada fungsi gabung %s: <%s> != <%s>" - -#: src/reader.c:213 -#, c-format -msgid "rule given for %s, which is a token" -msgstr "hukum diberi untuk %s, dimana ia adalah token" - -#: src/reader.c:242 -#, c-format -msgid "type clash on default action: <%s> != <%s>" -msgstr "pertelingkahan jenis pada tindakan default: <%s> != <%s>" - -#: src/reader.c:248 -msgid "empty rule for typed nonterminal, and no action" -msgstr "hukum kosong untuk bukan terminal ditaip, dan tiada tindakan" - -#: src/reader.c:318 src/reader.c:332 src/reader.c:345 -#, c-format -msgid "only one %s allowed per rule" -msgstr "hanya satu %s dibenarkan setiap hukum" - -#: src/reader.c:328 src/reader.c:343 -#, c-format -msgid "%s affects only GLR parsers" -msgstr "%s hanya berkesan kepada parser GLR" - -#: src/reader.c:330 -#, c-format -msgid "%s must be followed by positive number" -msgstr "%s mesti diikuti dengan nombor positif" - -#: src/reader.c:487 -msgid "no rules in the input grammar" -msgstr "tiada hukum dalam masukan tatabahasa" - -#: src/reduce.c:242 -msgid "useless rule" -msgstr "hukum tidak berguna" - -#: src/reduce.c:303 -#, c-format -msgid "useless nonterminal: %s" -msgstr "bukan terminal tidak berguna: %s" - -#: src/reduce.c:351 -msgid "Useless nonterminals" -msgstr "Bukan terminal tidak berguna" - -#: src/reduce.c:364 -msgid "Terminals which are not used" -msgstr "Terminal yang tidak digunakan" - -#: src/reduce.c:373 -msgid "Useless rules" -msgstr "Hukum tidak berguna" - -#: src/reduce.c:389 -#, c-format -msgid "%d rule never reduced\n" -msgid_plural "%d rules never reduced\n" -msgstr[0] "%d hukum tidak dikurangkan\n" -msgstr[1] "%d hukum tidak dikurangkan\n" - -#: src/reduce.c:397 -#, c-format -msgid "%d useless nonterminal" -msgid_plural "%d useless nonterminals" -msgstr[0] "%d bukan terminal tidak berguna" -msgstr[1] "%d bukan terminal tidak berguna" - -#: src/reduce.c:403 -msgid " and " -msgstr " dan " - -#: src/reduce.c:406 -#, c-format -msgid "%d useless rule" -msgid_plural "%d useless rules" -msgstr[0] "%d hukum tidak berguna" -msgstr[1] "%d hukum tidak berguna" - -#: src/reduce.c:436 -#, c-format -msgid "start symbol %s does not derive any sentence" -msgstr "simbol permulaan %s tidak menghasilkan sebarang perkataan" - -#: src/scan-gram.l:160 -msgid "stray `,' treated as white space" -msgstr "`,' sesat dianggap sebagai ruang" - -#: src/scan-gram.l:221 -#, c-format -msgid "invalid directive: %s" -msgstr "arahan tidak sah: %s" - -#: src/scan-gram.l:241 src/scan-gram.l:804 src/scan-gram.l:873 -#, c-format -msgid "integer out of range: %s" -msgstr "integer diluar julat: %s" - -#: src/scan-gram.l:283 -#, c-format -msgid "invalid character: %s" -msgstr "aksara tidak sah: %s" - -#: src/scan-gram.l:412 src/scan-gram.l:422 src/scan-gram.l:441 -#, c-format -msgid "invalid escape sequence: %s" -msgstr "turutan escape tidak sah: %s" - -#: src/scan-gram.l:446 -#, c-format -msgid "unrecognized escape sequence: %s" -msgstr "turutan escape tidak dikenali: %s" - -#: src/scan-gram.l:534 -#, c-format -msgid "missing `{' in `%s'" -msgstr "`(' hilang dalam `%s'" - -#: src/scan-gram.l:774 -#, c-format -msgid "$$ of `%s' has no declared type" -msgstr "$$ dari `%s' tiada jenis diisytiharkan" - -#: src/scan-gram.l:795 -#, c-format -msgid "$%d of `%s' has no declared type" -msgstr "$%d dari `%s' tiada jenis diisytiharkan" - -#: src/scan-gram.l:840 src/scan-gram.l:908 -#, c-format -msgid "invalid value: %s" -msgstr "nilai tidak sah: %s" - -#: src/scan-gram.l:996 -#, c-format -msgid "missing `%s' at end of file" -msgstr "`%s' hilang pada penghujung fail" - -#: src/symlist.c:97 src/symlist.c:108 -msgid "invalid $ value" -msgstr "nilai $ tidak sah" - -#: src/symtab.c:84 -#, c-format -msgid "type redeclaration for %s" -msgstr "pengisytiharan semula jenis untuk %s" - -#: src/symtab.c:101 src/symtab.c:119 -#, c-format -msgid "%s redeclaration for %s" -msgstr "%s pengisytiharan semula untuk %s" - -#: src/symtab.c:138 -#, c-format -msgid "redefining precedence of %s" -msgstr "mentakrif semula keutamaan %s" - -#: src/symtab.c:156 -#, c-format -msgid "symbol %s redefined" -msgstr "simbol %s ditakrif semula" - -#: src/symtab.c:179 -#, c-format -msgid "redefining user token number of %s" -msgstr "mentakrif semula nombor token pengguna %s" - -#: src/symtab.c:206 -#, c-format -msgid "symbol %s is used, but is not defined as a token and has no rules" -msgstr "" -"simbol %s digunakan, tetapi tidak ditakrifkan sebagai token atau mempunyai " -"hukum" - -#: src/symtab.c:231 -#, c-format -msgid "symbol `%s' used more than once as a literal string" -msgstr "simbol `%s' digunakan lebih dari sekali sebagai rentetan perkataan" - -#: src/symtab.c:234 -#, c-format -msgid "symbol `%s' given more than one literal string" -msgstr "simbol `%s' diberikan lebih daripada satu rentetan perkataan" - -#: src/symtab.c:270 -#, c-format -msgid "conflicting precedences for %s and %s" -msgstr "konflik keutamaan untuk %s dan %s" - -#: src/symtab.c:282 -#, c-format -msgid "conflicting associativities for %s (%s) and %s (%s)" -msgstr "konflik kaitan bagi %s (%s) dan %s (%s)" - -#: src/symtab.c:367 -#, c-format -msgid "tokens %s and %s both assigned number %d" -msgstr "token %s dan %s kedua-dunya diberi nombor %d" - -#: src/symtab.c:590 -#, c-format -msgid "the start symbol %s is undefined" -msgstr "simbol permulaan %s tidak ditakrifkan" - -#: src/symtab.c:594 -#, c-format -msgid "the start symbol %s is a token" -msgstr "simbol permulaan %s adalah token" - -#: lib/argmatch.c:135 -#, c-format -msgid "invalid argument %s for %s" -msgstr "hujah tidak sah %s untuk %s" - -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "hujah kabur %s untuk %s" - -#: lib/argmatch.c:155 -msgid "Valid arguments are:" -msgstr "Hujah yang sah adalah:" - -#: lib/bitset_stats.c:179 -#, c-format -msgid "%u bitset_allocs, %u freed (%.2f%%).\n" -msgstr "%u bitset_allocs, %u dibebaskan (%.2f%%).\n" - -#: lib/bitset_stats.c:182 -#, c-format -msgid "%u bitset_sets, %u cached (%.2f%%)\n" -msgstr "%u bitset_sets, %u disimpan (%.2f%%)\n" - -#: lib/bitset_stats.c:185 -#, c-format -msgid "%u bitset_resets, %u cached (%.2f%%)\n" -msgstr "%u bitset_resets, %u disimpan (%.2f%%)\n" - -#: lib/bitset_stats.c:188 -#, c-format -msgid "%u bitset_tests, %u cached (%.2f%%)\n" -msgstr "%u bitset_tests, %u disimpan (%.2f%%)\n" - -#: lib/bitset_stats.c:192 -#, c-format -msgid "%u bitset_lists\n" -msgstr "%u bitset_lists\n" - -#: lib/bitset_stats.c:194 -msgid "count log histogram\n" -msgstr "kira histogram log\n" - -#: lib/bitset_stats.c:197 -msgid "size log histogram\n" -msgstr "saiz histogram log\n" - -#: lib/bitset_stats.c:200 -msgid "density histogram\n" -msgstr "histogram kepadatan\n" - -#: lib/bitset_stats.c:214 -msgid "" -"Bitset statistics:\n" -"\n" -msgstr "" -"Statistik bitset:\n" -"\n" - -#: lib/bitset_stats.c:217 -#, c-format -msgid "Accumulated runs = %u\n" -msgstr "Pelaksanaan terkumpul = %u\n" - -#: lib/bitset_stats.c:261 lib/bitset_stats.c:266 -msgid "Could not read stats file." -msgstr "Tidak dapat membaca fail stats." - -#: lib/bitset_stats.c:263 -msgid "Bad stats file size.\n" -msgstr "Saiz fail stats tidak betul.\n" - -#: lib/bitset_stats.c:289 lib/bitset_stats.c:291 -msgid "Could not write stats file." -msgstr "Tidak dapat menulis fail stats." - -#: lib/bitset_stats.c:294 -msgid "Could not open stats file for writing." -msgstr "Tidak dapat membuka fail stats untuk menulis." - -#: lib/getopt.c:688 lib/getopt.c:700 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: pilihan `%s' adalah kabur\n" - -#: lib/getopt.c:733 lib/getopt.c:737 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: pilihan `--%s' tidak mengizinkan hujah\n" - -#: lib/getopt.c:746 lib/getopt.c:751 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: pilihan `%c%s' tidak mengizinkan hujah\n" - -#: lib/getopt.c:787 lib/getopt.c:800 lib/getopt.c:1089 lib/getopt.c:1102 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: pilihan `%s' memerlukan hujah\n" - -#: lib/getopt.c:838 lib/getopt.c:841 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: pilihan tidak dikenali `--%s'\n" - -#: lib/getopt.c:849 lib/getopt.c:852 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: pilihan tidak dikenali '%c%s'\n" - -#: lib/getopt.c:899 lib/getopt.c:902 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: pilihan salah -- %c\n" - -#: lib/getopt.c:908 lib/getopt.c:911 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: pilihan tidak sah -- %c\n" - -#: lib/getopt.c:958 lib/getopt.c:969 lib/getopt.c:1155 lib/getopt.c:1168 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: pilihan memerlukan hujah -- %c\n" - -#: lib/getopt.c:1021 lib/getopt.c:1032 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: pilihan `-W %s' adalah kabur\n" - -#: lib/getopt.c:1056 lib/getopt.c:1068 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: pilihan `-W %s' tidak mengizinkan hujah\n" - -#: lib/obstack.c:487 lib/obstack.c:490 lib/xmalloc.c:63 -msgid "memory exhausted" -msgstr "kehabisan memori" - -#: lib/quotearg.c:236 -msgid "`" -msgstr "`" - -#: lib/quotearg.c:237 -msgid "'" -msgstr "'" - -#: lib/subpipe.c:187 -#, c-format -msgid "subsidiary program `%s' could not be invoked" -msgstr "program subsidiari `%s' tidak dapat dilaksanakan" - -#: lib/subpipe.c:189 -#, c-format -msgid "subsidiary program `%s' not found" -msgstr "program subsidiari `%s' tidak dijumpai" - -#: lib/subpipe.c:191 -#, c-format -msgid "subsidiary program `%s' failed" -msgstr "program subsidiari `%s' gagal" - -#: lib/subpipe.c:192 -#, c-format -msgid "subsidiary program `%s' failed (exit status %d)" -msgstr "program subsidiari `%s' gagal (status keluar %d)" - -#: lib/timevar.c:476 -msgid "" -"\n" -"Execution times (seconds)\n" -msgstr "" -"\n" -"Masa pelaksanaan (saat)\n" - -#: lib/timevar.c:526 -msgid " TOTAL :" -msgstr " JUMLAH :" - -#: lib/timevar.c:562 -#, c-format -msgid "time in %s: %ld.%06ld (%ld%%)\n" -msgstr "masa dalam %s: %ld.%06ld (%ld%%)\n" diff --git a/po/nl.po b/po/nl.po deleted file mode 100644 index 9d6680b5..00000000 --- a/po/nl.po +++ /dev/null @@ -1,720 +0,0 @@ -# Dutch messages for GNU bison. -# Copyright (C) 1996, 2002, 2003 Free Software Foundation, Inc. -# Tim Van Holder , 2002, 2003. -# Erick Branderhorst , 1996. -# -msgid "" -msgstr "" -"Project-Id-Version: bison 1.875a\n" -"Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2003-08-25 17:14+0200\n" -"PO-Revision-Date: 2003-02-02 02:19+0100\n" -"Last-Translator: Tim Van Holder \n" -"Language-Team: Dutch \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=iso-8859-1\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: src/complain.c:56 lib/error.c:135 lib/error.c:163 -msgid "Unknown system error" -msgstr "Onbekende systeemfout" - -#: src/complain.c:79 src/complain.c:94 -msgid "warning: " -msgstr "let op: " - -#: src/complain.c:150 src/complain.c:166 -msgid "fatal error: " -msgstr "fatale fout: " - -#: src/conflicts.c:75 -#, c-format -msgid " Conflict between rule %d and token %s resolved as shift" -msgstr " Conflict tussen regel %d en token %s opgelost als shift" - -#: src/conflicts.c:83 -#, c-format -msgid " Conflict between rule %d and token %s resolved as reduce" -msgstr " Conflict tussen regel %d en token %s opgelost als reductie" - -#: src/conflicts.c:90 -#, c-format -msgid " Conflict between rule %d and token %s resolved as an error" -msgstr " Conflict tussen regel %d en token %s opgelost als een fout" - -#: src/conflicts.c:398 -#, c-format -msgid "conflicts: %d shift/reduce, %d reduce/reduce\n" -msgstr "conflicten: %d shift/reductie, %d reductie/reductie\n" - -#: src/conflicts.c:401 -#, c-format -msgid "conflicts: %d shift/reduce\n" -msgstr "conflicten: %d shift/reductie\n" - -#: src/conflicts.c:403 -#, c-format -msgid "conflicts: %d reduce/reduce\n" -msgstr "conflicten: %d reductie/reductie\n" - -#: src/conflicts.c:421 -#, c-format -msgid "State %d " -msgstr "Staat %d" - -#: src/conflicts.c:498 -#, c-format -msgid "expected %d shift/reduce conflict" -msgid_plural "expected %d shift/reduce conflicts" -msgstr[0] "%d shift/reductie conflict werd verwacht" -msgstr[1] "%d shift/reductie conflicten werden verwacht" - -#: src/conflicts.c:503 -msgid "expected 0 reduce/reduce conflicts" -msgstr "er werden geen reductie/reductie conflicten verwacht" - -#: src/files.c:99 -#, c-format -msgid "cannot open file `%s'" -msgstr "kan bestand `%s' niet openen" - -#: src/files.c:115 -msgid "I/O error" -msgstr "I/O fout" - -#: src/files.c:118 -msgid "cannot close file" -msgstr "kan bestand niet sluiten" - -#: src/files.c:336 -#, c-format -msgid "conflicting outputs to file %s" -msgstr "conflicterende uitvoer naar bestand %s" - -#: src/getargs.c:186 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "Probeer `%s --help' voor meer informatie.\n" - -# Dank U, Akim :-) -#: src/getargs.c:192 -msgid "GNU bison generates parsers for LALR(1) grammars.\n" -msgstr "GNU bison genereert parsers voor LALR(1) grammatica's.\n" - -#: src/getargs.c:196 -#, c-format -msgid "Usage: %s [OPTION]... FILE\n" -msgstr "Gebruik: %s [OPTIE]... BESTAND\n" - -#: src/getargs.c:200 -msgid "" -"If a long option shows an argument as mandatory, then it is mandatory\n" -"for the equivalent short option also. Similarly for optional arguments.\n" -msgstr "" -"Wanneer een lange optie een argument als verplicht aanduidt, dan is dat\n" -"argument eveneens verplicht bij de overeenkomstige korte optie. Voor\n" -"optionele argumenten geldt dezelfde regel.\n" - -# Misschien beter 'een POSIX-compatibele yacc'? -#: src/getargs.c:206 -msgid "" -"Operation modes:\n" -" -h, --help display this help and exit\n" -" -V, --version output version information and exit\n" -" -y, --yacc emulate POSIX yacc\n" -msgstr "" -"Werkwijzes:\n" -" -h, --help toon deze hulptekst en beëindig het programma\n" -" -V, --version toon versie-informatie en beëindig het programma\n" -" -y, --yacc emuleer POSIX yacc\n" - -# Correcte vervoeging van 'voorvoegen'? -# Betere vertaling voor 'directives'? -#: src/getargs.c:213 -msgid "" -"Parser:\n" -" -S, --skeleton=FILE specify the skeleton to use\n" -" -t, --debug instrument the parser for debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n" -" -l, --no-lines don't generate `#line' directives\n" -" -n, --no-parser generate the tables only\n" -" -k, --token-table include a table of token names\n" -msgstr "" -"Parser:\n" -" -S, --skeleton=BESTAND geef het te gebruiken skeletbestand op\n" -" -t, --debug maak de parser geschikt voor debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX geef een PREFIX op voor de externe symbolen\n" -" -l, --no-lines genereer geen `#line' directieven\n" -" -n, --no-parser genereer alleen de tabellen\n" -" -k, --token-table genereer ook een tabel van tokennamen\n" - -#: src/getargs.c:225 -msgid "" -"Output:\n" -" -d, --defines also produce a header file\n" -" -r, --report=THINGS also produce details on the automaton\n" -" -v, --verbose same as `--report=state'\n" -" -b, --file-prefix=PREFIX specify a PREFIX for output files\n" -" -o, --output=FILE leave output to FILE\n" -" -g, --graph also produce a VCG description of the " -"automaton\n" -msgstr "" -"Uitvoer:\n" -" -d, --defines genereer ook een header-bestand\n" -" -r, --report=DINGEN genereer ook details over de automaat\n" -" -v, --verbose hetzelfde als `--report=state'\n" -" -b, --file-prefix=PREFIX geef een PREFIX op voor de uitvoerbestanden\n" -" -o, --output=BESTAND schrijf uitvoer naar BESTAND\n" -" -g, --graph genereer ook een VCG beschrijving van de " -"automaat\n" - -# Verschillende dingen die beter zouden moeten kunnen - zeker de 'itemset' tekst -#: src/getargs.c:236 -msgid "" -"THINGS is a list of comma separated words that can include:\n" -" `state' describe the states\n" -" `itemset' complete the core item sets with their closure\n" -" `lookahead' explicitly associate lookaheads to items\n" -" `solved' describe shift/reduce conflicts solving\n" -" `all' include all the above information\n" -" `none' disable the report\n" -msgstr "" -"DINGEN is een door komma's gescheiden lijst van woorden; geldige woorden " -"zijn:\n" -" `state' beschijft de staten van de automaat\n" -" `itemset' vervolledig de verzamelingen van core items met hun " -"closures\n" -" `lookahead' verbind lookaheads expliciet met items\n" -" `solved' beschijft het oplossen van shift/reductie conflicten\n" -" `all' bevat al de bovenstaande keuzes\n" -" `none' schakel de rapportering uit\n" - -#: src/getargs.c:247 -msgid "Report bugs to .\n" -msgstr "" -"Meld bugs aan .\n" -"Meld fouten in de vertaling aan .\n" - -#: src/getargs.c:264 -#, c-format -msgid "bison (GNU Bison) %s" -msgstr "bison (GNU Bison) %s" - -#: src/getargs.c:266 -msgid "Written by Robert Corbett and Richard Stallman.\n" -msgstr "Geschreven door Robert Corbett en Richard Stallman.\n" - -#: src/getargs.c:270 -#, c-format -msgid "Copyright (C) %d Free Software Foundation, Inc.\n" -msgstr "Copyright (C) %d Free Software Foundation, Inc.\n" - -#: src/getargs.c:272 -msgid "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"Dit is vrije software; zie de broncode voor kopieercondities. Er is GEEN\n" -"garantie; zelfs niet voor VERKOOPBAARHEID of GESCHIKTHEID VOOR EEN BEPAALD\n" -"DOEL.\n" - -#: src/getargs.c:438 -#, c-format -msgid "missing operand after `%s'" -msgstr "operand ontbreekt na `%s'" - -#: src/getargs.c:440 -#, c-format -msgid "extra operand `%s'" -msgstr "overtollige operand `%s'" - -#: src/gram.c:139 -msgid "empty" -msgstr "leeg" - -#: src/gram.c:233 -msgid "Grammar" -msgstr "Grammatica" - -#: src/gram.c:321 src/reduce.c:394 -msgid "warning" -msgstr "let op" - -#: src/main.c:124 -msgid "rule never reduced because of conflicts" -msgstr "regel wordt nooit gereduceerd omwille van conflicten" - -#: src/parse-gram.y:353 -msgid "POSIX forbids declarations in the grammar" -msgstr "POSIX verbiedt declaraties binnen de grammatica" - -#: src/parse-gram.y:476 -msgid "missing identifier in parameter declaration" -msgstr "naam ontbreekt in parameterdeclaratie" - -#: src/print.c:49 -#, c-format -msgid " type %d is %s\n" -msgstr " type %d is %s\n" - -#: src/print.c:165 -#, c-format -msgid "shift, and go to state %d\n" -msgstr "shift, en ga naar staat %d\n" - -#: src/print.c:167 -#, c-format -msgid "go to state %d\n" -msgstr "ga naar staat %d\n" - -#: src/print.c:204 -msgid "error (nonassociative)\n" -msgstr "fout (niet associatief)\n" - -#: src/print.c:292 -#, c-format -msgid "reduce using rule %d (%s)" -msgstr "reduceren via regel %d (%s)" - -#: src/print.c:294 -msgid "accept" -msgstr "accepteer" - -#: src/print.c:325 src/print.c:391 -msgid "$default" -msgstr "$standaard" - -#: src/print.c:420 -#, c-format -msgid "state %d" -msgstr "staat %d" - -#: src/print.c:456 -msgid "Terminals, with rules where they appear" -msgstr "Eindsymbolen, met de regels waarin ze voorkomen" - -# Betere vertaling voor non-terminals? 'tussensymbolen'? -#: src/print.c:483 -msgid "Nonterminals, with rules where they appear" -msgstr "Niet-eindsymbolen, met de regels waarin ze voorkomen" - -#: src/print.c:512 -msgid " on left:" -msgstr " links:" - -#: src/print.c:527 -msgid " on right:" -msgstr " rechts:" - -#: src/print.c:555 -msgid "Rules never reduced" -msgstr "Regels die nooit gereduceerd worden" - -#: src/reader.c:53 -#, c-format -msgid "multiple %s declarations" -msgstr "meerdere %s declaraties" - -#: src/reader.c:115 -#, c-format -msgid "result type clash on merge function %s: <%s> != <%s>" -msgstr "botsing tussen resultaattypes bij merge-functie %s: «%s» != «%s»" - -#: src/reader.c:213 -#, c-format -msgid "rule given for %s, which is a token" -msgstr "regel opgegeven voor token (%s)" - -#: src/reader.c:242 -#, c-format -msgid "type clash on default action: <%s> != <%s>" -msgstr "type-conflict bij standaardaktie: «%s» != «%s»" - -#: src/reader.c:248 -msgid "empty rule for typed nonterminal, and no action" -msgstr "lege regel voor niet-eindsymbool met type, en geen actie" - -#: src/reader.c:318 src/reader.c:332 src/reader.c:345 -#, c-format -msgid "only one %s allowed per rule" -msgstr "slechts één %s toegestaan per regel" - -#: src/reader.c:328 src/reader.c:343 -#, c-format -msgid "%s affects only GLR parsers" -msgstr "%s is enkel van toepassing op GLR parsers" - -#: src/reader.c:330 -#, c-format -msgid "%s must be followed by positive number" -msgstr "%s moet gevolgd worden door een positief getal" - -#: src/reader.c:487 -msgid "no rules in the input grammar" -msgstr "invoergrammatica bevat geen regels" - -#: src/reduce.c:242 -msgid "useless rule" -msgstr "nutteloze regel" - -#: src/reduce.c:303 -#, c-format -msgid "useless nonterminal: %s" -msgstr "nutteloos niet-eindsymbool: %s" - -#: src/reduce.c:351 -msgid "Useless nonterminals" -msgstr "Nutteloze niet-eindsymbolen" - -#: src/reduce.c:364 -msgid "Terminals which are not used" -msgstr "Eindsymbolen die niet gebruikt worden" - -#: src/reduce.c:373 -msgid "Useless rules" -msgstr "Nutteloze regels" - -#: src/reduce.c:389 -#, c-format -msgid "%d rule never reduced\n" -msgid_plural "%d rules never reduced\n" -msgstr[0] "%d regel wordt nooit gereduceerd\n" -msgstr[1] "%d regels worden nooit gereduceerd\n" - -#: src/reduce.c:397 -#, c-format -msgid "%d useless nonterminal" -msgid_plural "%d useless nonterminals" -msgstr[0] "%d nutteloos niet-eindsymbool" -msgstr[1] "%d nutteloze niet-eindsymbolen" - -#: src/reduce.c:403 -msgid " and " -msgstr " en " - -#: src/reduce.c:406 -#, c-format -msgid "%d useless rule" -msgid_plural "%d useless rules" -msgstr[0] "%d nutteloze regel" -msgstr[1] "%d nutteloze regels" - -# Ik _denk_ dat dit correct weergeeft wat er bedoeld wordt (m.a.w. er is geen regel voor het startsymbool) -#: src/reduce.c:436 -#, c-format -msgid "start symbol %s does not derive any sentence" -msgstr "uit startsymbool %s kan geen enkele zin afgeleid worden" - -#: src/scan-gram.l:160 -msgid "stray `,' treated as white space" -msgstr "losse `,' behandeld als witruimte" - -#: src/scan-gram.l:221 -#, c-format -msgid "invalid directive: %s" -msgstr "ongeldig commando: %s" - -# Hier zou wel het bereik bij vermeld mogen worden... -#: src/scan-gram.l:241 src/scan-gram.l:804 src/scan-gram.l:873 -#, c-format -msgid "integer out of range: %s" -msgstr "integer buiten bereik: %s" - -#: src/scan-gram.l:283 -#, c-format -msgid "invalid character: %s" -msgstr "ongeldig teken: %s" - -#: src/scan-gram.l:412 src/scan-gram.l:422 src/scan-gram.l:441 -#, c-format -msgid "invalid escape sequence: %s" -msgstr "ongeldige escape: %s" - -#: src/scan-gram.l:446 -#, c-format -msgid "unrecognized escape sequence: %s" -msgstr "onbekende escape: %s" - -#: src/scan-gram.l:534 -#, c-format -msgid "missing `{' in `%s'" -msgstr "`{' ontbreekt in `%s'" - -#: src/scan-gram.l:774 -#, c-format -msgid "$$ of `%s' has no declared type" -msgstr "$$ van `%s' heeft geen gedeclareerd type" - -#: src/scan-gram.l:795 -#, c-format -msgid "$%d of `%s' has no declared type" -msgstr "$%d van `%s' heeft geen gedeclareerd type" - -#: src/scan-gram.l:840 src/scan-gram.l:908 -#, c-format -msgid "invalid value: %s" -msgstr "ongeldige waarde: %s" - -#: src/scan-gram.l:996 -#, c-format -msgid "missing `%s' at end of file" -msgstr "`%s' ontbreekt aan einde van bestand" - -#: src/symlist.c:97 src/symlist.c:108 -msgid "invalid $ value" -msgstr "ongeldige $-waarde" - -#: src/symtab.c:84 -#, c-format -msgid "type redeclaration for %s" -msgstr "type herdeclaratie voor %s" - -# Dit ziet er een potentieel slechte originele string uit - wat kan er in die eerste '%s' staan? -#: src/symtab.c:101 src/symtab.c:119 -#, c-format -msgid "%s redeclaration for %s" -msgstr "%s herdeclaratie voor %s" - -#: src/symtab.c:138 -#, c-format -msgid "redefining precedence of %s" -msgstr "herdefinitie van de voorrang van %s" - -#: src/symtab.c:156 -#, c-format -msgid "symbol %s redefined" -msgstr "symbool %s opnieuw gedefinieerd" - -#: src/symtab.c:179 -#, c-format -msgid "redefining user token number of %s" -msgstr "herdefinitie van het door de gebruiker gekozen tokennummer van %s" - -#: src/symtab.c:206 -#, c-format -msgid "symbol %s is used, but is not defined as a token and has no rules" -msgstr "" -"symbool %s wordt gebruikt, maar is niet gedefinieerd als een teken en heeft " -"geen regels" - -#: src/symtab.c:231 -#, c-format -msgid "symbol `%s' used more than once as a literal string" -msgstr "symbool `%s' meer dan eens gebruikt als een letterlijke string" - -#: src/symtab.c:234 -#, c-format -msgid "symbol `%s' given more than one literal string" -msgstr "symbool `%s' krijgt meer dan één letterlijke string toegewezen" - -#: src/symtab.c:270 -#, c-format -msgid "conflicting precedences for %s and %s" -msgstr "voorrangen voor %s en %s geven conflicten" - -#: src/symtab.c:282 -#, c-format -msgid "conflicting associativities for %s (%s) and %s (%s)" -msgstr "associativiteitswaarden voor %s (%s) en %s (%s) geven conflicten" - -#: src/symtab.c:367 -#, c-format -msgid "tokens %s and %s both assigned number %d" -msgstr "tokens %s en %s hebben beide nummer %d toegewezen gekregen" - -#: src/symtab.c:590 -#, c-format -msgid "the start symbol %s is undefined" -msgstr "het startsymbool %s is niet gedefinieerd" - -#: src/symtab.c:594 -#, c-format -msgid "the start symbol %s is a token" -msgstr "het startsymbool %s is een token" - -#: lib/argmatch.c:135 -#, c-format -msgid "invalid argument %s for %s" -msgstr "ongeldige argument %s voor %s" - -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "argument %s voor %s is niet eenduidig" - -#: lib/argmatch.c:155 -msgid "Valid arguments are:" -msgstr "Geldige argumenten zijn:" - -#: lib/bitset_stats.c:179 -#, c-format -msgid "%u bitset_allocs, %u freed (%.2f%%).\n" -msgstr "%u bitset_allocs, %u vrijgegeven (%.2f%%).\n" - -#: lib/bitset_stats.c:182 -#, c-format -msgid "%u bitset_sets, %u cached (%.2f%%)\n" -msgstr "%u bitset_sets, %u gecached (%.2f%%)\n" - -#: lib/bitset_stats.c:185 -#, c-format -msgid "%u bitset_resets, %u cached (%.2f%%)\n" -msgstr "%u bitset_resets, %u gecached (%.2f%%)\n" - -#: lib/bitset_stats.c:188 -#, c-format -msgid "%u bitset_tests, %u cached (%.2f%%)\n" -msgstr "%u bitset_tests, %u gecached (%.2f%%)\n" - -#: lib/bitset_stats.c:192 -#, c-format -msgid "%u bitset_lists\n" -msgstr "%u bitset_lists\n" - -#: lib/bitset_stats.c:194 -msgid "count log histogram\n" -msgstr "count log histogram\n" - -#: lib/bitset_stats.c:197 -msgid "size log histogram\n" -msgstr "size log histogram\n" - -#: lib/bitset_stats.c:200 -msgid "density histogram\n" -msgstr "density histogram\n" - -#: lib/bitset_stats.c:214 -msgid "" -"Bitset statistics:\n" -"\n" -msgstr "" -"Bitset statistieken:\n" -"\n" - -#: lib/bitset_stats.c:217 -#, c-format -msgid "Accumulated runs = %u\n" -msgstr "Accumulated runs = %u\n" - -#: lib/bitset_stats.c:261 lib/bitset_stats.c:266 -msgid "Could not read stats file." -msgstr "Kon het statistiekenbestand niet lezen." - -#: lib/bitset_stats.c:263 -msgid "Bad stats file size.\n" -msgstr "Het statistiekenbestand heeft een verkeerde grootte.\n" - -#: lib/bitset_stats.c:289 lib/bitset_stats.c:291 -msgid "Could not write stats file." -msgstr "Kon niet schrijven naar het statistiekenbestand." - -#: lib/bitset_stats.c:294 -msgid "Could not open stats file for writing." -msgstr "Kon het statistiekenbestand niet openen voor schrijven." - -#: lib/getopt.c:688 lib/getopt.c:700 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: optie `%s' is niet eenduidig\n" - -#: lib/getopt.c:733 lib/getopt.c:737 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: optie `--%s' staat geen argument toe\n" - -#: lib/getopt.c:746 lib/getopt.c:751 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: optie `%c%s' staat geen argument toe\n" - -#: lib/getopt.c:787 lib/getopt.c:800 lib/getopt.c:1089 lib/getopt.c:1102 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: optie `%s' vereist een argument\n" - -#: lib/getopt.c:838 lib/getopt.c:841 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: onbekende optie `--%s'\n" - -#: lib/getopt.c:849 lib/getopt.c:852 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: onbekende optie `%c%s'\n" - -#: lib/getopt.c:899 lib/getopt.c:902 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: ongeldige optie -- %c\n" - -#: lib/getopt.c:908 lib/getopt.c:911 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: ongeldige optie -- %c\n" - -#: lib/getopt.c:958 lib/getopt.c:969 lib/getopt.c:1155 lib/getopt.c:1168 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: optie vereist een argument -- %c\n" - -#: lib/getopt.c:1021 lib/getopt.c:1032 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: optie `-W %s' is niet eenduidig\n" - -#: lib/getopt.c:1056 lib/getopt.c:1068 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: optie `--%s' staat geen argument toe\n" - -#: lib/obstack.c:487 lib/obstack.c:490 lib/xmalloc.c:63 -msgid "memory exhausted" -msgstr "geen geheugen meer beschikbaar" - -#: lib/quotearg.c:236 -msgid "`" -msgstr "`" - -#: lib/quotearg.c:237 -msgid "'" -msgstr "'" - -#: lib/subpipe.c:187 -#, c-format -msgid "subsidiary program `%s' could not be invoked" -msgstr "hulpprogramma `%s' kon niet opgeroepen worden" - -#: lib/subpipe.c:189 -#, c-format -msgid "subsidiary program `%s' not found" -msgstr "hulpprogramma `%s' niet gevonden" - -#: lib/subpipe.c:191 -#, c-format -msgid "subsidiary program `%s' failed" -msgstr "hulpprogramma `%s' mislukt" - -#: lib/subpipe.c:192 -#, c-format -msgid "subsidiary program `%s' failed (exit status %d)" -msgstr "hulpprogramma `%s' mislukt (eindstatus %d)" - -#: lib/timevar.c:476 -msgid "" -"\n" -"Execution times (seconds)\n" -msgstr "" -"\n" -"Uitvoeringstijden (in seconden)\n" - -#: lib/timevar.c:526 -msgid " TOTAL :" -msgstr " TOTAAL :" - -#: lib/timevar.c:562 -#, c-format -msgid "time in %s: %ld.%06ld (%ld%%)\n" -msgstr "tijd in %s: %ld.%06ld (%ld%%)\n" diff --git a/po/pt_BR.po b/po/pt_BR.po deleted file mode 100644 index d7d780c5..00000000 --- a/po/pt_BR.po +++ /dev/null @@ -1,706 +0,0 @@ -# bison: translation to Brazilian Portuguese (pt_BR) -# Copyright (C) 2002 Free Software Foundation, Inc. -# Alexandre Folle de Menezes , 2002, 2003. -# -msgid "" -msgstr "" -"Project-Id-Version: bison 1.875\n" -"Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2003-08-25 17:14+0200\n" -"PO-Revision-Date: 2003-01-06 02:30-0300\n" -"Last-Translator: Alexandre Folle de Menezes \n" -"Language-Team: Brazilian Portuguese \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ISO-8859-1\n" -"Content-Transfer-Encoding: 8-bit\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" - -#: src/complain.c:56 lib/error.c:135 lib/error.c:163 -msgid "Unknown system error" -msgstr "Erro de sistema desconhecido" - -#: src/complain.c:79 src/complain.c:94 -msgid "warning: " -msgstr "aviso: " - -#: src/complain.c:150 src/complain.c:166 -msgid "fatal error: " -msgstr "erro fatal: " - -#: src/conflicts.c:75 -#, c-format -msgid " Conflict between rule %d and token %s resolved as shift" -msgstr " Conflito entre a regra %d e a token %s resolvido como `shift`." - -#: src/conflicts.c:83 -#, c-format -msgid " Conflict between rule %d and token %s resolved as reduce" -msgstr " Conflito entre a regra %d e a token %s resolvido como `reduce`." - -#: src/conflicts.c:90 -#, c-format -msgid " Conflict between rule %d and token %s resolved as an error" -msgstr " Conflito entre a regra %d e a token %s resolvido como um erro." - -#: src/conflicts.c:398 -#, c-format -msgid "conflicts: %d shift/reduce, %d reduce/reduce\n" -msgstr "conflitos: %d de deslocamento/redução, %d de redução/redução\n" - -#: src/conflicts.c:401 -#, c-format -msgid "conflicts: %d shift/reduce\n" -msgstr "conflitos: %d de deslocamento/redução\n" - -#: src/conflicts.c:403 -#, c-format -msgid "conflicts: %d reduce/reduce\n" -msgstr "conflitos: %d de redução/redução\n" - -#: src/conflicts.c:421 -#, c-format -msgid "State %d " -msgstr "Estado %d" - -#: src/conflicts.c:498 -#, c-format -msgid "expected %d shift/reduce conflict" -msgid_plural "expected %d shift/reduce conflicts" -msgstr[0] "esperado: %d conflito de deslocamento/redução" -msgstr[1] "esperados: %d conflitos de deslocamento/redução" - -#: src/conflicts.c:503 -msgid "expected 0 reduce/reduce conflicts" -msgstr "esperados 0 conflitos de redução/redução" - -#: src/files.c:99 -#, c-format -msgid "cannot open file `%s'" -msgstr "impossível abrir o arquivo `%s'" - -#: src/files.c:115 -msgid "I/O error" -msgstr "Erro de E/S" - -#: src/files.c:118 -msgid "cannot close file" -msgstr "impossível fechar o arquivo" - -#: src/files.c:336 -#, c-format -msgid "conflicting outputs to file %s" -msgstr "saídas conflitantes para o arquivo %s" - -#: src/getargs.c:186 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "tente `%s --help' para mais informações.\n" - -#: src/getargs.c:192 -msgid "GNU bison generates parsers for LALR(1) grammars.\n" -msgstr "GNU bison gera analisadores para gramáticas LALR(1).\n" - -#: src/getargs.c:196 -#, c-format -msgid "Usage: %s [OPTION]... FILE\n" -msgstr "Uso: %s [OPCAO]... ARQUIVO\n" - -#: src/getargs.c:200 -msgid "" -"If a long option shows an argument as mandatory, then it is mandatory\n" -"for the equivalent short option also. Similarly for optional arguments.\n" -msgstr "" -"Se uma opção longa mostra um argumento como obrigatório, então ele é\n" -"obrigatório para a opção curta equivalente também. Igualmente para os\n" -"argumentos opcionais.\n" - -#: src/getargs.c:206 -msgid "" -"Operation modes:\n" -" -h, --help display this help and exit\n" -" -V, --version output version information and exit\n" -" -y, --yacc emulate POSIX yacc\n" -msgstr "" -"Modos de operação:\n" -" -h, --help exibe esta ajuda e sai\n" -" -V, --version mostra informações de versão e sai\n" -" -y, --yacc emula o yacc POSIX\n" - -#: src/getargs.c:213 -msgid "" -"Parser:\n" -" -S, --skeleton=FILE specify the skeleton to use\n" -" -t, --debug instrument the parser for debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n" -" -l, --no-lines don't generate `#line' directives\n" -" -n, --no-parser generate the tables only\n" -" -k, --token-table include a table of token names\n" -msgstr "" -"Analizador:\n" -" -S, --skeleton=arquivo especifica o skeleto a ser usado\n" -" -t, --debug instrumenta o analisador para depuração\n" -" --locations habilita a computação de localizações\n" -" -p, --name-prefix=PREFIXO adiciona PREFIXO aos símbolos externos\n" -" -l, --no-lines não gera diretivas `#line'\n" -" -n, --no-parser apenas gera as tabelas\n" -" --k, --token-table inclui uma tabela de nomes de tokens\n" - -#: src/getargs.c:225 -msgid "" -"Output:\n" -" -d, --defines also produce a header file\n" -" -r, --report=THINGS also produce details on the automaton\n" -" -v, --verbose same as `--report=state'\n" -" -b, --file-prefix=PREFIX specify a PREFIX for output files\n" -" -o, --output=FILE leave output to FILE\n" -" -g, --graph also produce a VCG description of the " -"automaton\n" -msgstr "" -"Saída:\n" -" -d, --defines também produz um arquivo de cabeçalho\n" -" -r, --report=ITENS também produz detalhes do autômato\n" -" -v, --verbose o mesmo que `--report=state'\n" -" -b, --file-prefix=PREFIXO especifica o PREFIXO para os arquivos de saída\n" -" -o, --output=ARQUIVO armazena a saída em ARQUIVO\n" -" -g, --graph também produz uma descrição em VCG do autômato\n" - -#: src/getargs.c:236 -msgid "" -"THINGS is a list of comma separated words that can include:\n" -" `state' describe the states\n" -" `itemset' complete the core item sets with their closure\n" -" `lookahead' explicitly associate lookaheads to items\n" -" `solved' describe shift/reduce conflicts solving\n" -" `all' include all the above information\n" -" `none' disable the report\n" -msgstr "" -"ITENS é uma lista separada por vírgulas, que pode incluir:\n" -" `state' descreve os estados\n" -" `itemset' completa os conjuntos de ítens básicos com seus " -"fechamentos\n" -" `lookahead' associa explicitamente as previsões com os ítens\n" -" `solved' descreve a solução de conflitos de deslocamento/redução\n" -" `all' inclui todas as informações acima\n" -" `none' desabilita o relatório\n" - -#: src/getargs.c:247 -msgid "Report bugs to .\n" -msgstr "Informe os erros para .\n" - -#: src/getargs.c:264 -#, c-format -msgid "bison (GNU Bison) %s" -msgstr "bison (GNU bison) %s" - -#: src/getargs.c:266 -msgid "Written by Robert Corbett and Richard Stallman.\n" -msgstr "Escrito por Robert Corbett e Richard Stallman.\n" - -#: src/getargs.c:270 -#, c-format -msgid "Copyright (C) %d Free Software Foundation, Inc.\n" -msgstr "Copyright © %d Free Software Foundation, Inc.\n" - -#: src/getargs.c:272 -msgid "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"Este é um software livre; veja o código fonte para condições de copyright. " -"Não\n" -"existe NENHUMA garantia; nem mesmo a garantia implícita de COMERCIABILIDADE " -"ou\n" -"ADEQUAÇÃO À QUALQUER FINALIDADE PARTICULAR.\n" - -#: src/getargs.c:438 -#, c-format -msgid "missing operand after `%s'" -msgstr "falta operando depois de `%s'" - -#: src/getargs.c:440 -#, c-format -msgid "extra operand `%s'" -msgstr "operando `%s' sobrando" - -#: src/gram.c:139 -msgid "empty" -msgstr "vazio" - -#: src/gram.c:233 -msgid "Grammar" -msgstr "Gramática" - -#: src/gram.c:321 src/reduce.c:394 -msgid "warning" -msgstr "aviso" - -#: src/main.c:124 -msgid "rule never reduced because of conflicts" -msgstr "regra não reduzida por causa de conflitos" - -#: src/parse-gram.y:353 -msgid "POSIX forbids declarations in the grammar" -msgstr "o POSIX proíbe declarações na gramática" - -#: src/parse-gram.y:476 -msgid "missing identifier in parameter declaration" -msgstr "identificador faltando na declaração do parâmetro" - -#: src/print.c:49 -#, c-format -msgid " type %d is %s\n" -msgstr " tipo %d é %s\n" - -#: src/print.c:165 -#, c-format -msgid "shift, and go to state %d\n" -msgstr "deslocar, e ir ao estado %d\n" - -#: src/print.c:167 -#, c-format -msgid "go to state %d\n" -msgstr "ir ao estado %d\n" - -#: src/print.c:204 -msgid "error (nonassociative)\n" -msgstr "erro (não associativo)\n" - -#: src/print.c:292 -#, c-format -msgid "reduce using rule %d (%s)" -msgstr "reduzir usando a regra %d (%s)" - -#: src/print.c:294 -msgid "accept" -msgstr "aceitar" - -#: src/print.c:325 src/print.c:391 -msgid "$default" -msgstr "$padrão" - -#: src/print.c:420 -#, c-format -msgid "state %d" -msgstr "estado %d" - -#: src/print.c:456 -msgid "Terminals, with rules where they appear" -msgstr "Terminais, com as regras onde eles aparecem" - -#: src/print.c:483 -msgid "Nonterminals, with rules where they appear" -msgstr "Não-terminais com as regras onde eles aparecem" - -#: src/print.c:512 -msgid " on left:" -msgstr " à esquerda:" - -#: src/print.c:527 -msgid " on right:" -msgstr " à direita:" - -#: src/print.c:555 -msgid "Rules never reduced" -msgstr "Regras nunca reduzidas" - -#: src/reader.c:53 -#, c-format -msgid "multiple %s declarations" -msgstr "declarações de %s múltiplas" - -#: src/reader.c:115 -#, c-format -msgid "result type clash on merge function %s: <%s> != <%s>" -msgstr "tipo de resultado conflita na fução de mescla %s: <%s> != <%s>" - -#: src/reader.c:213 -#, c-format -msgid "rule given for %s, which is a token" -msgstr "regra fornecida para %s, que é um token" - -#: src/reader.c:242 -#, c-format -msgid "type clash on default action: <%s> != <%s>" -msgstr "conflito de tipos na ação padrão: <%s> != <%s>" - -#: src/reader.c:248 -msgid "empty rule for typed nonterminal, and no action" -msgstr "regra vazia para um não-terminal com tipo, e não há ações" - -#: src/reader.c:318 src/reader.c:332 src/reader.c:345 -#, c-format -msgid "only one %s allowed per rule" -msgstr "apenas um %s é permitido por regra" - -#: src/reader.c:328 src/reader.c:343 -#, c-format -msgid "%s affects only GLR parsers" -msgstr "%s afeta apenas analisadores GLR" - -#: src/reader.c:330 -#, c-format -msgid "%s must be followed by positive number" -msgstr "%s deve ser seguido por um número positivo" - -#: src/reader.c:487 -msgid "no rules in the input grammar" -msgstr "não há regras na gramática de entrada" - -#: src/reduce.c:242 -msgid "useless rule" -msgstr "regra inútil" - -#: src/reduce.c:303 -#, c-format -msgid "useless nonterminal: %s" -msgstr "não-terminal inútil: %s" - -#: src/reduce.c:351 -msgid "Useless nonterminals" -msgstr "Não-terminais inúteis" - -#: src/reduce.c:364 -msgid "Terminals which are not used" -msgstr "Terminais que não foram usados" - -#: src/reduce.c:373 -msgid "Useless rules" -msgstr "Regras inúteis" - -#: src/reduce.c:389 -#, c-format -msgid "%d rule never reduced\n" -msgid_plural "%d rules never reduced\n" -msgstr[0] "%d regra que nunca foi reduzida\n" -msgstr[1] "%d regras que nunca foram reduzidas\n" - -#: src/reduce.c:397 -#, c-format -msgid "%d useless nonterminal" -msgid_plural "%d useless nonterminals" -msgstr[0] "%d não-terminal inútil" -msgstr[1] "%d não-terminal inútil" - -#: src/reduce.c:403 -msgid " and " -msgstr " e " - -#: src/reduce.c:406 -#, c-format -msgid "%d useless rule" -msgid_plural "%d useless rules" -msgstr[0] "%d regra inútil" -msgstr[1] "%d regras inúteis" - -#: src/reduce.c:436 -#, c-format -msgid "start symbol %s does not derive any sentence" -msgstr "símbolo de início %s não deriva nenhuma sentença" - -#: src/scan-gram.l:160 -msgid "stray `,' treated as white space" -msgstr "`,' perdida tratada como branco" - -#: src/scan-gram.l:221 -#, c-format -msgid "invalid directive: %s" -msgstr "diretiva inválida: %s" - -#: src/scan-gram.l:241 src/scan-gram.l:804 src/scan-gram.l:873 -#, c-format -msgid "integer out of range: %s" -msgstr "inteiro fora de faixa: %s" - -#: src/scan-gram.l:283 -#, c-format -msgid "invalid character: %s" -msgstr "caractere inválido: %s" - -#: src/scan-gram.l:412 src/scan-gram.l:422 src/scan-gram.l:441 -#, c-format -msgid "invalid escape sequence: %s" -msgstr "seqüência de escape inválida: %s" - -#: src/scan-gram.l:446 -#, c-format -msgid "unrecognized escape sequence: %s" -msgstr "seqüência de escape não reconhecida: %s" - -#: src/scan-gram.l:534 -#, c-format -msgid "missing `{' in `%s'" -msgstr "falta `{' em `%s'" - -#: src/scan-gram.l:774 -#, c-format -msgid "$$ of `%s' has no declared type" -msgstr "$$ de `%s' não tem tipo declarado" - -#: src/scan-gram.l:795 -#, c-format -msgid "$%d of `%s' has no declared type" -msgstr "$%d de `%s' não tem tipo declarado" - -#: src/scan-gram.l:840 src/scan-gram.l:908 -#, c-format -msgid "invalid value: %s" -msgstr "valor inválido: %s" - -#: src/scan-gram.l:996 -#, c-format -msgid "missing `%s' at end of file" -msgstr "`%s' faltando no final do arquivo" - -#: src/symlist.c:97 src/symlist.c:108 -msgid "invalid $ value" -msgstr "valor $ inválido" - -#: src/symtab.c:84 -#, c-format -msgid "type redeclaration for %s" -msgstr "redeclaração de tipo para %s" - -#: src/symtab.c:101 src/symtab.c:119 -#, c-format -msgid "%s redeclaration for %s" -msgstr "redeclaração de %s para %s" - -#: src/symtab.c:138 -#, c-format -msgid "redefining precedence of %s" -msgstr "redefinindo precedência de %s" - -#: src/symtab.c:156 -#, c-format -msgid "symbol %s redefined" -msgstr "símbolo %s redefinido" - -#: src/symtab.c:179 -#, c-format -msgid "redefining user token number of %s" -msgstr "redefinindo número de token de usuário de %s" - -#: src/symtab.c:206 -#, c-format -msgid "symbol %s is used, but is not defined as a token and has no rules" -msgstr "símbolo %s usado, mas não definido como uma token e não tem regras" - -#: src/symtab.c:231 -#, c-format -msgid "symbol `%s' used more than once as a literal string" -msgstr "símbolo `%s' usado mais the uma vez como uma string literal" - -#: src/symtab.c:234 -#, c-format -msgid "symbol `%s' given more than one literal string" -msgstr "símbolo `%s' associado a mais de uma string literal" - -#: src/symtab.c:270 -#, c-format -msgid "conflicting precedences for %s and %s" -msgstr "precedências conflitantes para %s e %s" - -#: src/symtab.c:282 -#, c-format -msgid "conflicting associativities for %s (%s) and %s (%s)" -msgstr "valores associativos conflitantes para %s (%s) e %s (%s)" - -#: src/symtab.c:367 -#, c-format -msgid "tokens %s and %s both assigned number %d" -msgstr "tokens %s e %s associadas ao mesmo número %d" - -#: src/symtab.c:590 -#, c-format -msgid "the start symbol %s is undefined" -msgstr "o símbolo de início %s não está definido" - -#: src/symtab.c:594 -#, c-format -msgid "the start symbol %s is a token" -msgstr "o símbolo de início %s é um terminal" - -#: lib/argmatch.c:135 -#, c-format -msgid "invalid argument %s for %s" -msgstr "argumento %s inválido para %s" - -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "argumento %s ambíguo para %s" - -#: lib/argmatch.c:155 -msgid "Valid arguments are:" -msgstr "Argumentos válidos são:" - -#: lib/bitset_stats.c:179 -#, c-format -msgid "%u bitset_allocs, %u freed (%.2f%%).\n" -msgstr "%u bitset_allocs, %u liberados (%.2f%%).\n" - -#: lib/bitset_stats.c:182 -#, c-format -msgid "%u bitset_sets, %u cached (%.2f%%)\n" -msgstr "%u bitset_sets, %u em cache (%.2f%%)\n" - -#: lib/bitset_stats.c:185 -#, c-format -msgid "%u bitset_resets, %u cached (%.2f%%)\n" -msgstr "%u bitset_resets, %u em cache (%.2f%%)\n" - -#: lib/bitset_stats.c:188 -#, c-format -msgid "%u bitset_tests, %u cached (%.2f%%)\n" -msgstr "%u bitset_tests, %u em cache (%.2f%%)\n" - -#: lib/bitset_stats.c:192 -#, c-format -msgid "%u bitset_lists\n" -msgstr "%u bitset_lists\n" - -#: lib/bitset_stats.c:194 -msgid "count log histogram\n" -msgstr "histograma de log de contagens\n" - -#: lib/bitset_stats.c:197 -msgid "size log histogram\n" -msgstr "histograma de log de tamanhos\n" - -#: lib/bitset_stats.c:200 -msgid "density histogram\n" -msgstr "histograma de densidades\n" - -#: lib/bitset_stats.c:214 -msgid "" -"Bitset statistics:\n" -"\n" -msgstr "" -"Estatísticas de bitset:\n" -"\n" - -#: lib/bitset_stats.c:217 -#, c-format -msgid "Accumulated runs = %u\n" -msgstr "Execuções acumuladas = %u\n" - -#: lib/bitset_stats.c:261 lib/bitset_stats.c:266 -msgid "Could not read stats file." -msgstr "Impossível ler o arquivo de estatísticas." - -#: lib/bitset_stats.c:263 -msgid "Bad stats file size.\n" -msgstr "Tamanho do arquivo de estatísticas com erro.\n" - -#: lib/bitset_stats.c:289 lib/bitset_stats.c:291 -msgid "Could not write stats file." -msgstr "Impossível de escrever no arquivo de estatísticas." - -#: lib/bitset_stats.c:294 -msgid "Could not open stats file for writing." -msgstr "Impossível abrir arquivo de estatísticas para escrita." - -#: lib/getopt.c:688 lib/getopt.c:700 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: a opção `%s' é ambígua\n" - -#: lib/getopt.c:733 lib/getopt.c:737 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: a opção `--%s' no admite nenhum argumento\n" - -#: lib/getopt.c:746 lib/getopt.c:751 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: a opção `%c%s' não admite nenhum argumento\n" - -#: lib/getopt.c:787 lib/getopt.c:800 lib/getopt.c:1089 lib/getopt.c:1102 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: a opção `%s' exige um argumento\n" - -#: lib/getopt.c:838 lib/getopt.c:841 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: opção `--%s' não reconhecida\n" - -#: lib/getopt.c:849 lib/getopt.c:852 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: opção `%c%s' não reconhecida\n" - -#: lib/getopt.c:899 lib/getopt.c:902 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: opção -- %c ilegal\n" - -#: lib/getopt.c:908 lib/getopt.c:911 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: opção -- %c inválida\n" - -#: lib/getopt.c:958 lib/getopt.c:969 lib/getopt.c:1155 lib/getopt.c:1168 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: a opção -- %c exige um argumento\n" - -#: lib/getopt.c:1021 lib/getopt.c:1032 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: a opção `-W %s' é ambígua\n" - -#: lib/getopt.c:1056 lib/getopt.c:1068 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: a opção `-W %s' não admite nenhum argumento\n" - -#: lib/obstack.c:487 lib/obstack.c:490 lib/xmalloc.c:63 -msgid "memory exhausted" -msgstr "memória esgotada" - -#: lib/quotearg.c:236 -msgid "`" -msgstr "`" - -#: lib/quotearg.c:237 -msgid "'" -msgstr "'" - -#: lib/subpipe.c:187 -#, c-format -msgid "subsidiary program `%s' could not be invoked" -msgstr "programa subsidiário `%s' não pôde ser invocado" - -#: lib/subpipe.c:189 -#, c-format -msgid "subsidiary program `%s' not found" -msgstr "programa subsidiário `%s' não foi encontrado" - -#: lib/subpipe.c:191 -#, c-format -msgid "subsidiary program `%s' failed" -msgstr "programa subsidiário `%s' falhou" - -#: lib/subpipe.c:192 -#, c-format -msgid "subsidiary program `%s' failed (exit status %d)" -msgstr "programa subsidiário `%s' falhou (estado de saída %d)" - -#: lib/timevar.c:476 -msgid "" -"\n" -"Execution times (seconds)\n" -msgstr "" -"\n" -"Tempos de execução (segundos)\n" - -#: lib/timevar.c:526 -msgid " TOTAL :" -msgstr " TOTAL :" - -#: lib/timevar.c:562 -#, c-format -msgid "time in %s: %ld.%06ld (%ld%%)\n" -msgstr "tempo em %s: %ld.%06ld (%ld%%)\n" diff --git a/po/ro.po b/po/ro.po deleted file mode 100644 index 6d64599d..00000000 --- a/po/ro.po +++ /dev/null @@ -1,713 +0,0 @@ -# Mesajele în limba românã pentru GNU Bison. -# Copyright (C) 2003 Free Software Foundation, Inc. -# Acest fiºier este distribuit sub aceeaºi licenþã ca ºi pachetul bison. -# Laurentiu Buzdugan , 2003. -# -# -# -msgid "" -msgstr "" -"Project-Id-Version: bison 1.875a\n" -"Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2003-08-25 17:14+0200\n" -"PO-Revision-Date: 2003-03-01 21:43-0500\n" -"Last-Translator: Laurentiu Buzdugan \n" -"Language-Team: Romanian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ISO-8859-2\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: src/complain.c:56 lib/error.c:135 lib/error.c:163 -msgid "Unknown system error" -msgstr "Eroare de sistem necunoscutã" - -#: src/complain.c:79 src/complain.c:94 -msgid "warning: " -msgstr "avertisment:" - -#: src/complain.c:150 src/complain.c:166 -msgid "fatal error: " -msgstr "eroare fatalã:" - -#: src/conflicts.c:75 -#, c-format -msgid " Conflict between rule %d and token %s resolved as shift" -msgstr " Conflict între regula %d ºi elementul (token) %s rezolvat ca shift" - -#: src/conflicts.c:83 -#, c-format -msgid " Conflict between rule %d and token %s resolved as reduce" -msgstr "" -" Conflict între regula %d ºi elementul (token) %s rezolvat ca reduce" - -#: src/conflicts.c:90 -#, c-format -msgid " Conflict between rule %d and token %s resolved as an error" -msgstr "" -" Conflict între regula %d ºi elementul (token) %s rezolvat ca eroare" - -#: src/conflicts.c:398 -#, c-format -msgid "conflicts: %d shift/reduce, %d reduce/reduce\n" -msgstr "conflicte: %d shift/reduce, %d reduce/reduce\n" - -#: src/conflicts.c:401 -#, c-format -msgid "conflicts: %d shift/reduce\n" -msgstr "conflicte: %d shift/reduce\n" - -#: src/conflicts.c:403 -#, c-format -msgid "conflicts: %d reduce/reduce\n" -msgstr "conflicte: %d reduce/reduce\n" - -#: src/conflicts.c:421 -#, c-format -msgid "State %d " -msgstr "Stare %d" - -#: src/conflicts.c:498 -#, c-format -msgid "expected %d shift/reduce conflict" -msgid_plural "expected %d shift/reduce conflicts" -msgstr[0] "am aºteptat %d conflict shift/reduce" -msgstr[1] "am aºteptat %d conflicte shift/reduce" - -#: src/conflicts.c:503 -msgid "expected 0 reduce/reduce conflicts" -msgstr "am aºteptat 0 conflicte reduce/reduce" - -#: src/files.c:99 -#, c-format -msgid "cannot open file `%s'" -msgstr "nu am putut deschide fiºierul `%s'" - -#: src/files.c:115 -msgid "I/O error" -msgstr "Eroare I/O" - -#: src/files.c:118 -msgid "cannot close file" -msgstr "nu pot închide fiºierul" - -#: src/files.c:336 -#, c-format -msgid "conflicting outputs to file %s" -msgstr "ieºiri în conflict în fiºierul %s" - -#: src/getargs.c:186 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "Încercaþi `%s --help' pentru informaþii suplimentare.\n" - -#: src/getargs.c:192 -msgid "GNU bison generates parsers for LALR(1) grammars.\n" -msgstr "GNU bison genereazã parsere pentru gramatici LALR(1).\n" - -#: src/getargs.c:196 -#, c-format -msgid "Usage: %s [OPTION]... FILE\n" -msgstr "Folosire: %s [OPÞIUNE]... FIªIER\n" - -#: src/getargs.c:200 -msgid "" -"If a long option shows an argument as mandatory, then it is mandatory\n" -"for the equivalent short option also. Similarly for optional arguments.\n" -msgstr "" -"Dacã o opþiune lungã aratã un argument ca necesar, atunci el este necesar\n" -"ºi pentru opþiunea scurtã echivalentã. Similar pentru argumentele " -"opþionale.\n" - -#: src/getargs.c:206 -msgid "" -"Operation modes:\n" -" -h, --help display this help and exit\n" -" -V, --version output version information and exit\n" -" -y, --yacc emulate POSIX yacc\n" -msgstr "" -"Moduri de operare:\n" -" -h, --help afiºeazã acest mesaj ºi terminã\n" -" -V, --version afiºeazã informaþii despre versiune ºi terminã\n" -" -y, --yacc emuleazã POSIX yacc\n" - -#: src/getargs.c:213 -msgid "" -"Parser:\n" -" -S, --skeleton=FILE specify the skeleton to use\n" -" -t, --debug instrument the parser for debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n" -" -l, --no-lines don't generate `#line' directives\n" -" -n, --no-parser generate the tables only\n" -" -k, --token-table include a table of token names\n" -msgstr "" -"Parser:\n" -" -S, --skeleton=FIªIER specificã scheletul de folosit\n" -" -t, --debug instrumenteazã parserul pentru depanare\n" -" --locations activeazã calculul locaþiilor\n" -" -p, --name-prefix=PREFIX pune prefix PREFIX la simbolurile externe\n" -" -l, --no-lines nu genera directive `#line'\n" -" -n, --no-parser genereazã numai tabelele\n" -" -k, --token-table include un tabel cu nume de elemente\n" - -#: src/getargs.c:225 -msgid "" -"Output:\n" -" -d, --defines also produce a header file\n" -" -r, --report=THINGS also produce details on the automaton\n" -" -v, --verbose same as `--report=state'\n" -" -b, --file-prefix=PREFIX specify a PREFIX for output files\n" -" -o, --output=FILE leave output to FILE\n" -" -g, --graph also produce a VCG description of the " -"automaton\n" -msgstr "" -"Ieºire:\n" -" -d, --defines creazã ºi un fiºier header\n" -" -r, --report=LUCRURI creazã ºi detalii despre automaton\n" -" -v, --verbose la fel ca `--report=state'\n" -" -b, --file-prefix=PREFIX specificã un PREFIX pentru fiºierele ieºire\n" -" -o, --output=FIªIER creazã ieºire în FIªIER\n" -" -g, --graph creazã ºi o descriere VCG a automaton-ului\n" - -#: src/getargs.c:236 -msgid "" -"THINGS is a list of comma separated words that can include:\n" -" `state' describe the states\n" -" `itemset' complete the core item sets with their closure\n" -" `lookahead' explicitly associate lookaheads to items\n" -" `solved' describe shift/reduce conflicts solving\n" -" `all' include all the above information\n" -" `none' disable the report\n" -msgstr "" -"LUCRURI este o listã de cuvinte separate de virgulã ce pot fi:\n" -" `state' descrie stãrile\n" -" `itemset' completeazã seturile de elemente nucleu cu închiderea lor\n" -" `lookahead' asociazã explicit lookaheads la elemente\n" -" `solved' descrie rezolvarea conflictelor shift/reduce\n" -" `all' include toatã informaþia de deasupra\n" -" `none' deactiveazã raportarea\n" - -#: src/getargs.c:247 -msgid "Report bugs to .\n" -msgstr "Raportaþi bug-uri la .\n" - -#: src/getargs.c:264 -#, c-format -msgid "bison (GNU Bison) %s" -msgstr "bison (GNU Bison) %s" - -#: src/getargs.c:266 -msgid "Written by Robert Corbett and Richard Stallman.\n" -msgstr "Scris de Robert Corbett ºi Richard Stallman.\n" - -#: src/getargs.c:270 -#, c-format -msgid "Copyright (C) %d Free Software Foundation, Inc.\n" -msgstr "Copyright (C) %d Free Software Foundation, Inc.\n" - -#: src/getargs.c:272 -msgid "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"Acesta este software liber; vedeþi codul sursã pentru condiþii despre " -"copiere.\n" -"Nu existã nici o garanþie; nici chiar pentru COMERCIALIZARE sau de " -"POTRIVIRE\n" -"PENTRU UN SCOP ANUME.\n" - -#: src/getargs.c:438 -#, c-format -msgid "missing operand after `%s'" -msgstr "operator lipsã dupã `%s'" - -#: src/getargs.c:440 -#, c-format -msgid "extra operand `%s'" -msgstr "extra operator `%s'" - -#: src/gram.c:139 -msgid "empty" -msgstr "goleºte" - -#: src/gram.c:233 -msgid "Grammar" -msgstr "Gramaticã" - -#: src/gram.c:321 src/reduce.c:394 -msgid "warning" -msgstr "avertisment" - -#: src/main.c:124 -msgid "rule never reduced because of conflicts" -msgstr "regula nu este redusã niciodatã din cauza conflictelor" - -#: src/parse-gram.y:353 -msgid "POSIX forbids declarations in the grammar" -msgstr "POSIX interzice declaraþii în gramaticã" - -#: src/parse-gram.y:476 -msgid "missing identifier in parameter declaration" -msgstr "identificator lipsã în declaraþia parametrului" - -#: src/print.c:49 -#, c-format -msgid " type %d is %s\n" -msgstr " tipul %d este %s\n" - -#: src/print.c:165 -#, c-format -msgid "shift, and go to state %d\n" -msgstr "shift, ºi mergi în starea %d\n" - -#: src/print.c:167 -#, c-format -msgid "go to state %d\n" -msgstr "mergi în starea %d\n" - -#: src/print.c:204 -msgid "error (nonassociative)\n" -msgstr "eroare (ne-asociativitate)\n" - -#: src/print.c:292 -#, c-format -msgid "reduce using rule %d (%s)" -msgstr "reduce folosind regula %d (%s)" - -#: src/print.c:294 -msgid "accept" -msgstr "accept" - -#: src/print.c:325 src/print.c:391 -msgid "$default" -msgstr "$implicit" - -#: src/print.c:420 -#, c-format -msgid "state %d" -msgstr "stare %d" - -#: src/print.c:456 -msgid "Terminals, with rules where they appear" -msgstr "Terminale, cu reguli acolo unde acestea apar" - -#: src/print.c:483 -msgid "Nonterminals, with rules where they appear" -msgstr "Non-terminale, cu reguli acolo unde acestea apar" - -#: src/print.c:512 -msgid " on left:" -msgstr " pe stânga:" - -#: src/print.c:527 -msgid " on right:" -msgstr " pe dreapta:" - -#: src/print.c:555 -msgid "Rules never reduced" -msgstr "Regulile nu au fost reduse" - -#: src/reader.c:53 -#, c-format -msgid "multiple %s declarations" -msgstr "declaraþii %s multiple" - -#: src/reader.c:115 -#, c-format -msgid "result type clash on merge function %s: <%s> != <%s>" -msgstr "" -"tipul rezultatului în conflict cu funcþia de combinare %s: <%s> != <%s>" - -#: src/reader.c:213 -#, c-format -msgid "rule given for %s, which is a token" -msgstr "regula datã pentru %s, care este un element (token)" - -#: src/reader.c:242 -#, c-format -msgid "type clash on default action: <%s> != <%s>" -msgstr "conflict de tip pentru acþiunea implicitã: <%s> != <%s>" - -#: src/reader.c:248 -msgid "empty rule for typed nonterminal, and no action" -msgstr "regulã vidã pentru nonterminal cu tip, ºi nici o acþiune" - -#: src/reader.c:318 src/reader.c:332 src/reader.c:345 -#, c-format -msgid "only one %s allowed per rule" -msgstr "un singur %s permis pe fiecare regulã" - -#: src/reader.c:328 src/reader.c:343 -#, c-format -msgid "%s affects only GLR parsers" -msgstr "%s afecteazã numai parsere GLR" - -#: src/reader.c:330 -#, c-format -msgid "%s must be followed by positive number" -msgstr "%s trebuie sã fie urmat de numere pozitive" - -#: src/reader.c:487 -msgid "no rules in the input grammar" -msgstr "nici o regulã în gramatica furnizatã" - -#: src/reduce.c:242 -msgid "useless rule" -msgstr "regulã fãrã rost" - -#: src/reduce.c:303 -#, c-format -msgid "useless nonterminal: %s" -msgstr "nonterminal fãrã rost: %s" - -#: src/reduce.c:351 -msgid "Useless nonterminals" -msgstr "Nonterminale fãrã rost" - -#: src/reduce.c:364 -msgid "Terminals which are not used" -msgstr "Terminale care nu sunt folosite" - -#: src/reduce.c:373 -msgid "Useless rules" -msgstr "Reguli fãrã rost" - -#: src/reduce.c:389 -#, c-format -msgid "%d rule never reduced\n" -msgid_plural "%d rules never reduced\n" -msgstr[0] "%d regulã niciodatã redusã\n" -msgstr[1] "%d reguli niciodatã reduse\n" - -#: src/reduce.c:397 -#, c-format -msgid "%d useless nonterminal" -msgid_plural "%d useless nonterminals" -msgstr[0] "%d nonterminal fãrã rost" -msgstr[1] "%d nonterminale fãrã rost" - -#: src/reduce.c:403 -msgid " and " -msgstr " ºi " - -#: src/reduce.c:406 -#, c-format -msgid "%d useless rule" -msgid_plural "%d useless rules" -msgstr[0] "%d regulã fãrã rost" -msgstr[1] "%d reguli fãrã rost" - -#: src/reduce.c:436 -#, c-format -msgid "start symbol %s does not derive any sentence" -msgstr "simbol de start %s nu deriveazã nici o propoziþie" - -#: src/scan-gram.l:160 -msgid "stray `,' treated as white space" -msgstr "Virgulã `,' rãtãcitã tratatã ca spaþiu gol" - -#: src/scan-gram.l:221 -#, c-format -msgid "invalid directive: %s" -msgstr "directivã invalidã: %s" - -#: src/scan-gram.l:241 src/scan-gram.l:804 src/scan-gram.l:873 -#, c-format -msgid "integer out of range: %s" -msgstr "întreg în afara domeniului: %s" - -#: src/scan-gram.l:283 -#, c-format -msgid "invalid character: %s" -msgstr "caracter invalid: %s" - -#: src/scan-gram.l:412 src/scan-gram.l:422 src/scan-gram.l:441 -#, c-format -msgid "invalid escape sequence: %s" -msgstr "secvenþã escape invalidã: %s" - -#: src/scan-gram.l:446 -#, c-format -msgid "unrecognized escape sequence: %s" -msgstr "secvenþã escape nerecunoscutã: %s" - -#: src/scan-gram.l:534 -#, c-format -msgid "missing `{' in `%s'" -msgstr "`{' lipsã în `%s'" - -#: src/scan-gram.l:774 -#, c-format -msgid "$$ of `%s' has no declared type" -msgstr "$$ a lui `%s' nu are nici un tip declarat" - -#: src/scan-gram.l:795 -#, c-format -msgid "$%d of `%s' has no declared type" -msgstr "$%d a lui `%s' nu are nici un tip declarat" - -#: src/scan-gram.l:840 src/scan-gram.l:908 -#, c-format -msgid "invalid value: %s" -msgstr "valoare invalidã: %s" - -#: src/scan-gram.l:996 -#, c-format -msgid "missing `%s' at end of file" -msgstr "`%s' lipsã la sfârºitul fiºierului" - -#: src/symlist.c:97 src/symlist.c:108 -msgid "invalid $ value" -msgstr "valoare $ invalidã" - -#: src/symtab.c:84 -#, c-format -msgid "type redeclaration for %s" -msgstr "redeclarare de tip pentru %s" - -#: src/symtab.c:101 src/symtab.c:119 -#, c-format -msgid "%s redeclaration for %s" -msgstr "redeclarare %s pentru %s" - -#: src/symtab.c:138 -#, c-format -msgid "redefining precedence of %s" -msgstr "precedenþã redefinitã pentru %s" - -#: src/symtab.c:156 -#, c-format -msgid "symbol %s redefined" -msgstr "simbol %s redefinit" - -#: src/symtab.c:179 -#, c-format -msgid "redefining user token number of %s" -msgstr "numãrul elementului (token) definit de utilizator redefinit pentru %s" - -#: src/symtab.c:206 -#, c-format -msgid "symbol %s is used, but is not defined as a token and has no rules" -msgstr "" -"simbolul %s e folosit, dar nu este definit ca element (token) ºi nu are nici " -"o regulã" - -#: src/symtab.c:231 -#, c-format -msgid "symbol `%s' used more than once as a literal string" -msgstr "simbolul `%s' este folosit de mai multe ori ca ºir literar" - -#: src/symtab.c:234 -#, c-format -msgid "symbol `%s' given more than one literal string" -msgstr "simbolului `%s' îi este dat mai mult de un singur ºir literar" - -#: src/symtab.c:270 -#, c-format -msgid "conflicting precedences for %s and %s" -msgstr "precedenþe în conflict pentru %s ºi %s" - -#: src/symtab.c:282 -#, c-format -msgid "conflicting associativities for %s (%s) and %s (%s)" -msgstr "asoaciativitãþi în conflict pentru %s (%s) ºi %s (%s)" - -#: src/symtab.c:367 -#, c-format -msgid "tokens %s and %s both assigned number %d" -msgstr "ambelor elementele (tokens) %s ºi %s le sunt alocate acelaºi numãr %d" - -#: src/symtab.c:590 -#, c-format -msgid "the start symbol %s is undefined" -msgstr "simbolul de start %s nu este definit" - -#: src/symtab.c:594 -#, c-format -msgid "the start symbol %s is a token" -msgstr "simbolul de start %s este un element (token)" - -#: lib/argmatch.c:135 -#, c-format -msgid "invalid argument %s for %s" -msgstr "argument invalid %s pentru %s" - -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "argument ambiguu %s pentru %s" - -#: lib/argmatch.c:155 -msgid "Valid arguments are:" -msgstr "Argumente valide sunt:" - -#: lib/bitset_stats.c:179 -#, c-format -msgid "%u bitset_allocs, %u freed (%.2f%%).\n" -msgstr "%u bitset_allocs, %u eliberate (%.2f%%).\n" - -#: lib/bitset_stats.c:182 -#, c-format -msgid "%u bitset_sets, %u cached (%.2f%%)\n" -msgstr "%u bitset_sets, %u stocate (cached) (%.2f%%)\n" - -#: lib/bitset_stats.c:185 -#, c-format -msgid "%u bitset_resets, %u cached (%.2f%%)\n" -msgstr "%u bitset_resets, %u stocate (cached) (%.2f%%)\n" - -#: lib/bitset_stats.c:188 -#, c-format -msgid "%u bitset_tests, %u cached (%.2f%%)\n" -msgstr "%u bitset_tests, %u stocate (cached) (%.2f%%)\n" - -#: lib/bitset_stats.c:192 -#, c-format -msgid "%u bitset_lists\n" -msgstr "%u bitset_lists\n" - -#: lib/bitset_stats.c:194 -msgid "count log histogram\n" -msgstr "numãrã histograma jurnal\n" - -#: lib/bitset_stats.c:197 -msgid "size log histogram\n" -msgstr "dimensiune histogramã jurnal\n" - -#: lib/bitset_stats.c:200 -msgid "density histogram\n" -msgstr "densitate histogramã\n" - -#: lib/bitset_stats.c:214 -msgid "" -"Bitset statistics:\n" -"\n" -msgstr "" -"Statistici bitset:\n" -"\n" - -#: lib/bitset_stats.c:217 -#, c-format -msgid "Accumulated runs = %u\n" -msgstr "Rulãri acumulate = %u\n" - -#: lib/bitset_stats.c:261 lib/bitset_stats.c:266 -msgid "Could not read stats file." -msgstr "Nu am putut citi fiºierul de statistici." - -#: lib/bitset_stats.c:263 -msgid "Bad stats file size.\n" -msgstr "Dimensiune fiºier cu statistici incorectã.\n" - -#: lib/bitset_stats.c:289 lib/bitset_stats.c:291 -msgid "Could not write stats file." -msgstr "Nu am putut scrie fiºier statistici." - -#: lib/bitset_stats.c:294 -msgid "Could not open stats file for writing." -msgstr "Nu am putut deschide fiºierul de statistici pentru scriere." - -#: lib/getopt.c:688 lib/getopt.c:700 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: opþiunea `%s' este ambiguã\n" - -#: lib/getopt.c:733 lib/getopt.c:737 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: opþiunea `--%s' nu permite un argument\n" - -#: lib/getopt.c:746 lib/getopt.c:751 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: opþiunea `%c%s' nu permite un argument\n" - -#: lib/getopt.c:787 lib/getopt.c:800 lib/getopt.c:1089 lib/getopt.c:1102 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: opþiunea `%s' necesitã un argument\n" - -#: lib/getopt.c:838 lib/getopt.c:841 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: opþiune nerecunoscutã `--%s'\n" - -#: lib/getopt.c:849 lib/getopt.c:852 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: opþiune nerecunoscutã `%c%s'\n" - -#: lib/getopt.c:899 lib/getopt.c:902 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: opþiune ilegalã -- %c\n" - -#: lib/getopt.c:908 lib/getopt.c:911 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: opþiune ilegalã -- %c\n" - -#: lib/getopt.c:958 lib/getopt.c:969 lib/getopt.c:1155 lib/getopt.c:1168 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: opþiunea necesitã un argument -- %c\n" - -#: lib/getopt.c:1021 lib/getopt.c:1032 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: opþiunea `-W %s' este ambiguã\n" - -#: lib/getopt.c:1056 lib/getopt.c:1068 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: opþiunea `-W %s' nu permite un argument\n" - -#: lib/obstack.c:487 lib/obstack.c:490 lib/xmalloc.c:63 -msgid "memory exhausted" -msgstr "memorie epuizatã" - -#: lib/quotearg.c:236 -msgid "`" -msgstr "`" - -#: lib/quotearg.c:237 -msgid "'" -msgstr "'" - -#: lib/subpipe.c:187 -#, c-format -msgid "subsidiary program `%s' could not be invoked" -msgstr "programul auxiliar `%s' nu poate fi invocat" - -#: lib/subpipe.c:189 -#, c-format -msgid "subsidiary program `%s' not found" -msgstr "programul auxiliar `%s' nu a fost gãsit" - -#: lib/subpipe.c:191 -#, c-format -msgid "subsidiary program `%s' failed" -msgstr "programul auxiliar `%s' a eºuat" - -#: lib/subpipe.c:192 -#, c-format -msgid "subsidiary program `%s' failed (exit status %d)" -msgstr "programul auxiliar `%s' a eºuat (stare de terminare %d)" - -#: lib/timevar.c:476 -msgid "" -"\n" -"Execution times (seconds)\n" -msgstr "" -"\n" -"Timp de execuþie (secunde)\n" - -#: lib/timevar.c:526 -msgid " TOTAL :" -msgstr " TOTAL :" - -#: lib/timevar.c:562 -#, c-format -msgid "time in %s: %ld.%06ld (%ld%%)\n" -msgstr "timp în %s: %ld.%06ld (%ld%%)\n" diff --git a/po/ru.po b/po/ru.po deleted file mode 100644 index a6567376..00000000 --- a/po/ru.po +++ /dev/null @@ -1,958 +0,0 @@ -# ðÅÒÅ×ÏÄ ÓÏÏÂÝÅÎÉÊ bison. -# Copyright (C) 1999 Free Software Foundation, Inc. -# Dmitry S. Sivachenko , 1999,2000,2001,2002. -# -msgid "" -msgstr "" -"Project-Id-Version: bison 1.875\n" -"Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2003-08-25 17:14+0200\n" -"PO-Revision-Date: 2003-01-01 20:35+0300\n" -"Last-Translator: Dmitry S. Sivachenko \n" -"Language-Team: Russian \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=koi8-r\n" -"Content-Transfer-Encoding: 8-bit\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" -"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" - -#: src/complain.c:56 lib/error.c:135 lib/error.c:163 -msgid "Unknown system error" -msgstr "îÅÉÚ×ÅÓÔÎÁÑ ÓÉÓÔÅÍÎÁÑ ÏÛÉÂËÁ" - -#: src/complain.c:79 src/complain.c:94 -msgid "warning: " -msgstr "ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ: " - -#: src/complain.c:150 src/complain.c:166 -msgid "fatal error: " -msgstr "ÆÁÔÁÌØÎÁÑ ÏÛÉÂËÁ: " - -#: src/conflicts.c:75 -#, c-format -msgid " Conflict between rule %d and token %s resolved as shift" -msgstr " ëÏÎÆÌÉËÔ ÍÅÖÄÕ ÐÒÁ×ÉÌÏÍ %d É ÌÅËÓÅÍÏÊ %s ÒÁÚÒÅÛÅÎ ÓÄ×ÉÇÏÍ" - -#: src/conflicts.c:83 -#, c-format -msgid " Conflict between rule %d and token %s resolved as reduce" -msgstr " ëÏÎÆÌÉËÔ ÍÅÖÄÕ ÐÒÁ×ÉÌÏÍ %d É ÌÅËÓÅÍÏÊ %s ÒÁÚÒÅÛÅÎ ×Ù×ÏÄÏÍ" - -#: src/conflicts.c:90 -#, c-format -msgid " Conflict between rule %d and token %s resolved as an error" -msgstr " ëÏÎÆÌÉËÔ ÍÅÖÄÕ ÐÒÁ×ÉÌÏÍ %d É ÌÅËÓÅÍÏÊ %s ÒÁÚÒÅÛÅÎ ËÁË ÏÛÉÂËÁ" - -#: src/conflicts.c:398 -#, c-format -msgid "conflicts: %d shift/reduce, %d reduce/reduce\n" -msgstr "ËÏÎÆÌÉËÔÙ: %d ÓÄ×ÉÇÁ/×Ù×ÏÄÁ, %d ×Ù×ÏÄÁ/×Ù×ÏÄÁ\n" - -#: src/conflicts.c:401 -#, c-format -msgid "conflicts: %d shift/reduce\n" -msgstr "ËÏÎÆÌÉËÔÙ: %d ÓÄ×ÉÇÁ/×Ù×ÏÄÁ\n" - -#: src/conflicts.c:403 -#, c-format -msgid "conflicts: %d reduce/reduce\n" -msgstr "ËÏÎÆÌÉËÔÙ: %d ×Ù×ÏÄÁ/×Ù×ÏÄÁ\n" - -#: src/conflicts.c:421 -#, c-format -msgid "State %d " -msgstr "óÏÓÔÏÑÎÉÅ %d " - -#: src/conflicts.c:498 -#, c-format -msgid "expected %d shift/reduce conflict" -msgid_plural "expected %d shift/reduce conflicts" -msgstr[0] "ÏÖÉÄÁÌÓÑ %d ËÏÎÆÌÉËÔ ÓÄ×ÉÇÁ/×Ù×ÏÄÁ" -msgstr[1] "ÏÖÉÄÁÌÏÓØ %d ËÏÎÆÌÉËÔÁ ÓÄ×ÉÇÁ/×Ù×ÏÄÁ" -msgstr[2] "ÏÖÉÄÁÌÏÓØ %d ËÏÎÆÌÉËÔÏ× ÓÄ×ÉÇÁ/×Ù×ÏÄÁ" - -#: src/conflicts.c:503 -msgid "expected 0 reduce/reduce conflicts" -msgstr "ÏÖÉÄÁÌÏÓØ 0 ËÏÎÆÌÉËÔÏ× ×Ù×ÏÄÁ/×Ù×ÏÄÁ" - -#: src/files.c:99 -#, c-format -msgid "cannot open file `%s'" -msgstr "ÎÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ ÆÁÊÌ `%s'" - -#: src/files.c:115 -msgid "I/O error" -msgstr "ÏÛÉÂËÁ ××ÏÄÁ-×Ù×ÏÄÁ" - -#: src/files.c:118 -msgid "cannot close file" -msgstr "ÎÅ ÕÄÁÅÔÓÑ ÚÁËÒÙÔØ ÆÁÊÌ" - -#: src/files.c:336 -#, fuzzy, c-format -msgid "conflicting outputs to file %s" -msgstr "ÐÒÏÔÉ×ÏÒÅÞÉ×ÙÅ ÚÎÁÞÅÎÉÑ ÁÓÓÏÃÉÁÔÉ×ÎÏÓÔÉ ÄÌÑ %s É %s" - -#: src/getargs.c:186 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "éÓÐÏÌØÚÕÊÔÅ `%s --help' ÄÌÑ ÄÏÐÏÌÎÉÔÅÌØÎÏÊ ÉÎÆÏÒÍÁÃÉÉ.\n" - -#: src/getargs.c:192 -msgid "GNU bison generates parsers for LALR(1) grammars.\n" -msgstr "GNU bison ÇÅÎÅÒÉÒÕÅÔ ÁÎÁÌÉÚÁÔÏÒÙ ÄÌÑ ÇÒÁÍÍÁÔÉË LALR(1).\n" - -#: src/getargs.c:196 -#, c-format -msgid "Usage: %s [OPTION]... FILE\n" -msgstr "éÓÐÏÌØÚÏ×ÁÎÉÅ: %s [ëìàþé]... æáêì\n" - -#: src/getargs.c:200 -msgid "" -"If a long option shows an argument as mandatory, then it is mandatory\n" -"for the equivalent short option also. Similarly for optional arguments.\n" -msgstr "" -"åÓÌÉ ÄÌÉÎÎÁÑ ÆÏÒÍÁ ËÌÀÞÁ ÏÐÒÅÄÅÌÑÅÔ ÁÒÇÕÍÅÎÔ ËÁË ÏÂÑÚÁÔÅÌØÎÙÊ, ÔÏ ÏÎ ÔÁËÖÅ\n" -"Ñ×ÌÑÅÔÓÑ ÏÂÑÚÁÔÅÌØÎÙÍ ÄÌÑ ËÏÒÏÔËÏÊ ÆÏÒÍÙ. ôÏ ÖÅ ËÁÓÁÅÔÓÑ ÎÅÏÂÑÚÁÔÅÌØÎÙÈ\n" -"ÁÒÇÕÍÅÎÔÏ×.\n" - -#: src/getargs.c:206 -msgid "" -"Operation modes:\n" -" -h, --help display this help and exit\n" -" -V, --version output version information and exit\n" -" -y, --yacc emulate POSIX yacc\n" -msgstr "" -"òÅÖÉÍÙ ÆÕÎËÃÉÏÎÉÒÏ×ÁÎÉÑ:\n" -" -h, --help ×Ù×ÅÓÔÉ ÜÔÕ ÓÐÒÁ×ËÕ É ×ÙÊÔÉ\n" -" -V, --version ×Ù×ÅÓÔÉ ÉÎÆÏÒÍÁÃÉÀ Ï ×ÅÒÓÉÉ É ×ÙÊÔÉ\n" -" -y, --yacc ÜÍÕÌÉÒÏ×ÁÔØ POSIX yacc\n" - -#: src/getargs.c:213 -msgid "" -"Parser:\n" -" -S, --skeleton=FILE specify the skeleton to use\n" -" -t, --debug instrument the parser for debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n" -" -l, --no-lines don't generate `#line' directives\n" -" -n, --no-parser generate the tables only\n" -" -k, --token-table include a table of token names\n" -msgstr "" -"áÎÁÌÉÚÁÔÏÒ:\n" -" -S, --skeleton=æáêì ÕËÁÚÁÔØ ÆÁÊÌ ÛÁÂÌÏÎÁ\n" -" -t, --debug ÎÁÓÔÒÏÉÔØ ÁÎÁÌÉÚÁÔÏÒ ÄÌÑ ÏÔÌÁÄËÉ\n" -" --locations ×ËÌÀÞÉÔØ ×ÙÞÉÓÌÅÎÉÅ ÍÅÓÔÏÐÏÌÏÖÅÎÉÊ\n" -" -p, --name-prefix=ðòåæéëó ÐÏÄÓÔÁ×ÉÔØ ðòåæéëó ÄÌÑ ×ÎÅÛÎÉÈ ÓÉÍ×ÏÌÏ×\n" -" -l, --no-lines ÎÅ ÇÅÎÅÒÉÒÏ×ÁÔØ ÄÉÒÅËÔÉ×Ù `#line'\n" -" -n, --no-parser ÇÅÎÅÒÉÒÏ×ÁÔØ ÔÏÌØËÏ ÔÁÂÌÉÃÙ\n" -" -k, --token-table ×ËÌÀÞÉÔØ ÔÁÂÌÉÃÕ ÉÍÅÎ ÌÅËÓÅÍ\n" - -#: src/getargs.c:225 -msgid "" -"Output:\n" -" -d, --defines also produce a header file\n" -" -r, --report=THINGS also produce details on the automaton\n" -" -v, --verbose same as `--report=state'\n" -" -b, --file-prefix=PREFIX specify a PREFIX for output files\n" -" -o, --output=FILE leave output to FILE\n" -" -g, --graph also produce a VCG description of the " -"automaton\n" -msgstr "" -"÷Ù×ÏÄ:\n" -" -d, --defines ÓÏÚÄÁÔØ ÔÁËÖÅ ÆÁÊÌ ÚÁÇÏÌÏ×ËÏ×\n" -" -r, --report=THINGS ÓÏÚÄÁÔØ ÔÁËÖÅ ÐÏÑÓÎÅÎÉÑ × Á×ÔÏÍÁÔÕ\n" -" -v, --verbose ÔÏ ÖÅ, ÞÔÏ É `--report=state'\n" -" -b, --file-prefix=ðòåæéëó ÕËÁÚÁÔØ ðòåæéëó ÄÌÑ ×ÙÈÏÄÎÙÈ ÆÁÊÌÏ×\n" -" -o, --output=æáêì ÐÏÍÅÓÔÉÔØ ÒÅÚÕÌØÔÁÔ × æáêì\n" -" -g, --graph ÓÏÚÄÁÔØ ÔÁËÖÅ ÐÏÑÓÎÅÎÉÑ Ë Á×ÔÏÍÁÔÕ × ×ÉÄÅ \n" -" VCG-ÇÒÁÆÁ\n" - -#: src/getargs.c:236 -msgid "" -"THINGS is a list of comma separated words that can include:\n" -" `state' describe the states\n" -" `itemset' complete the core item sets with their closure\n" -" `lookahead' explicitly associate lookaheads to items\n" -" `solved' describe shift/reduce conflicts solving\n" -" `all' include all the above information\n" -" `none' disable the report\n" -msgstr "" - -#: src/getargs.c:247 -msgid "Report bugs to .\n" -msgstr "ïÛÉÂËÉ ÓÏÏÂÝÁÊÔÅ ÐÏ ÁÄÒÅÓÕ .\n" - -#: src/getargs.c:264 -#, c-format -msgid "bison (GNU Bison) %s" -msgstr "bison (GNU Bison) %s" - -#: src/getargs.c:266 -msgid "Written by Robert Corbett and Richard Stallman.\n" -msgstr "á×ÔÏÒÙ: òÏÂÅÒÔ ëÏÒÂÅÔ É òÉÞÁÒÄ óÔÏÌÍÅÎ.\n" - -#: src/getargs.c:270 -#, c-format -msgid "Copyright (C) %d Free Software Foundation, Inc.\n" -msgstr "Copyright (C) %d Free Software Foundation, Inc.\n" - -#: src/getargs.c:272 -msgid "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"üÔÏ Ó×ÏÂÏÄÎÁÑ ÐÒÏÇÒÁÍÍÁ; ÕÓÌÏ×ÉÑ ÒÁÓÐÒÏÓÔÒÁÎÅÎÉÑ ÓÍÏÔÒÉÔÅ × ÉÓÈÏÄÎÙÈ " -"ÔÅËÓÔÁÈ.\n" -"îéëáëéè ÇÁÒÁÎÔÉÊ ÎÅ ÐÒÅÄÏÓÔÁ×ÌÑÅÔÓÑ, ÄÁÖÅ ÇÁÒÁÎÔÉÉ ðïìåúîïóôé ÉÌÉ " -"ðòéçïäîïóôé\n" -"äìñ ïðòåäåìåîîïê ãåìé.\n" - -#: src/getargs.c:438 -#, c-format -msgid "missing operand after `%s'" -msgstr "ÐÏÓÌÅ `%s' ÐÒÏÐÕÝÅÎ ÏÐÅÒÁÎÄ" - -#: src/getargs.c:440 -#, c-format -msgid "extra operand `%s'" -msgstr "ÌÉÛÎÉÊ ÏÐÅÒÁÎÄ `%s'" - -#: src/gram.c:139 -msgid "empty" -msgstr "ÐÕÓÔÏ" - -#: src/gram.c:233 -msgid "Grammar" -msgstr "çÒÁÍÍÁÔÉËÁ" - -#: src/gram.c:321 src/reduce.c:394 -msgid "warning" -msgstr "ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ" - -#: src/main.c:124 -msgid "rule never reduced because of conflicts" -msgstr "ÐÒÁ×ÉÌÏ ÎÅ Ó×ÅÄÅÎÏ ÉÚ-ÚÁ ËÏÎÆÌÉËÔÏ×" - -#: src/parse-gram.y:353 -msgid "POSIX forbids declarations in the grammar" -msgstr "POSIX ÚÁÐÒÅÝÁÅÔ ÐÏÍÅÝÁÔØ ÏÐÉÓÁÎÉÑ × ÇÒÁÍÍÁÔÉËÅ" - -#: src/parse-gram.y:476 -msgid "missing identifier in parameter declaration" -msgstr "× ÏÐÉÓÁÎÉÉ ÐÁÒÁÍÅÔÒÁ ÏÔÓÕÔÓÔ×ÕÅÔ ÉÄÅÎÔÉÆÉËÁÔÏÒ" - -#: src/print.c:49 -#, c-format -msgid " type %d is %s\n" -msgstr " ÔÉÐ %d Ñ×ÌÑÅÔÓÑ %s\n" - -#: src/print.c:165 -#, c-format -msgid "shift, and go to state %d\n" -msgstr "ÓÄ×ÉÇ, É ÐÅÒÅÈÏÄ × ÓÏÓÔÏÑÎÉÅ %d\n" - -#: src/print.c:167 -#, c-format -msgid "go to state %d\n" -msgstr "ÐÅÒÅÈÏÄ × ÓÏÓÔÏÑÎÉÅ %d\n" - -#: src/print.c:204 -msgid "error (nonassociative)\n" -msgstr "ÏÛÉÂËÁ (ÎÅÁÓÓÏÃÉÁÔÉ×ÎÁÑ)\n" - -#: src/print.c:292 -#, c-format -msgid "reduce using rule %d (%s)" -msgstr "×Ù×ÏÄ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ ÐÒÁ×ÉÌÁ %d (%s)" - -#: src/print.c:294 -msgid "accept" -msgstr "" - -#: src/print.c:325 src/print.c:391 -msgid "$default" -msgstr "$default" - -#: src/print.c:420 -#, c-format -msgid "state %d" -msgstr "ÓÏÓÔÏÑÎÉÅ %d" - -#: src/print.c:456 -msgid "Terminals, with rules where they appear" -msgstr "ôÅÒÍÉÎÁÌØÎÙÅ ÓÉÍ×ÏÌÙ Ó ÐÒÁ×ÉÌÁÍÉ, × ËÏÔÏÒÙÈ ÏÎÉ ÐÏÑ×ÌÑÀÔÓÑ" - -#: src/print.c:483 -msgid "Nonterminals, with rules where they appear" -msgstr "îÅÔÅÒÍÉÎÁÌØÎÙÅ ÓÉÍ×ÏÌÙ Ó ÐÒÁ×ÉÌÁÍÉ, × ËÏÔÏÒÙÈ ÏÎÉ ÐÏÑ×ÌÑÀÔÓÑ" - -#: src/print.c:512 -msgid " on left:" -msgstr " ÎÁÌÅ×Ï:" - -#: src/print.c:527 -msgid " on right:" -msgstr " ÎÁÐÒÁ×Ï:" - -#: src/print.c:555 -msgid "Rules never reduced" -msgstr "ðÒÁ×ÉÌÁ ÎÅ Ó×ÅÄÅÎÙ" - -#: src/reader.c:53 -#, c-format -msgid "multiple %s declarations" -msgstr "ÍÎÏÖÅÓÔ×ÅÎÎÏÅ ÏÐÉÓÁÎÉÅ %s" - -#: src/reader.c:115 -#, c-format -msgid "result type clash on merge function %s: <%s> != <%s>" -msgstr "" - -#: src/reader.c:213 -#, c-format -msgid "rule given for %s, which is a token" -msgstr "ÐÒÁ×ÉÌÏ ÚÁÄÁÎÏ ÄÌÑ %s, ËÏÔÏÒÙÊ Ñ×ÌÑÅÔÓÑ ÌÅËÓÅÍÏÊ" - -#: src/reader.c:242 -#, c-format -msgid "type clash on default action: <%s> != <%s>" -msgstr "ËÏÎÆÌÉËÔ ÔÉÐÏ× ÎÁ ÄÅÊÓÔ×ÉÉ ÐÏ ÕÍÏÌÞÁÎÉÀ: <%s> != <%s>" - -#: src/reader.c:248 -msgid "empty rule for typed nonterminal, and no action" -msgstr "" -"ÐÕÓÔÏÅ ÐÒÁ×ÉÌÏ ÄÌÑ ÔÉÐÉÚÉÒÏ×ÁÎÎÏÇÏ ÎÅÔÅÒÍÉÎÁÌØÎÏÇÏ ÓÉÍ×ÏÌÁ, É ÎÅÔ ÄÅÊÓÔ×ÉÑ" - -#: src/reader.c:318 src/reader.c:332 src/reader.c:345 -#, c-format -msgid "only one %s allowed per rule" -msgstr "" - -#: src/reader.c:328 src/reader.c:343 -#, c-format -msgid "%s affects only GLR parsers" -msgstr "" - -#: src/reader.c:330 -#, c-format -msgid "%s must be followed by positive number" -msgstr "ÚÁ %s ÄÏÌÖÎÏ ÓÌÅÄÏ×ÁÔØ ÐÏÌÏÖÉÔÅÌØÎÏÅ ÞÉÓÌÏ" - -#: src/reader.c:487 -msgid "no rules in the input grammar" -msgstr "ÏÔÓÕÔÓÔ×ÕÀÔ ÐÒÁ×ÉÌÁ ×Ï ×ÈÏÄÎÏÊ ÇÒÁÍÍÁÔÉËÅ" - -#: src/reduce.c:242 -msgid "useless rule" -msgstr "ÂÅÓÐÏÌÅÚÎÏÅ ÐÒÁ×ÉÌÏ" - -#: src/reduce.c:303 -#, c-format -msgid "useless nonterminal: %s" -msgstr "ÂÅÓÐÏÌÅÚÎÙÅ ÎÅÔÅÒÍÉÎÁÌ: %s" - -#: src/reduce.c:351 -msgid "Useless nonterminals" -msgstr "âÅÓÐÏÌÅÚÎÙÅ ÎÅÔÅÒÍÉÎÁÌÙ" - -#: src/reduce.c:364 -msgid "Terminals which are not used" -msgstr "îÅÉÓÐÏÌØÚÏ×ÁÎÎÙÅ ÔÅÒÍÉÎÁÌÙ" - -#: src/reduce.c:373 -msgid "Useless rules" -msgstr "âÅÓÐÏÌÅÚÎÙÅ ÐÒÁ×ÉÌÁ" - -#: src/reduce.c:389 -#, c-format -msgid "%d rule never reduced\n" -msgid_plural "%d rules never reduced\n" -msgstr[0] "%d ÐÒÁ×ÉÌÏ ÎÅ Ó×ÅÄÅÎÏ\n" -msgstr[1] "%d ÐÒÁ×ÉÌÁ ÎÅ Ó×ÅÄÅÎÏ\n" -msgstr[2] "%d ÐÒÁ×ÉÌ ÎÅ Ó×ÅÄÅÎÏ\n" - -#: src/reduce.c:397 -#, c-format -msgid "%d useless nonterminal" -msgid_plural "%d useless nonterminals" -msgstr[0] "%d ÂÅÓÐÏÌÅÚÎÙÊ ÎÅÔÅÒÍÉÎÁÌ" -msgstr[1] "%d ÂÅÓÐÏÌÅÚÎÙÈ ÎÅÔÅÒÍÉÎÁÌÁ" -msgstr[2] "%d ÂÅÓÐÏÌÅÚÎÙÈ ÎÅÔÅÒÍÉÎÁÌÏ×" - -#: src/reduce.c:403 -msgid " and " -msgstr " É " - -#: src/reduce.c:406 -#, c-format -msgid "%d useless rule" -msgid_plural "%d useless rules" -msgstr[0] "%d ÂÅÓÐÏÌÅÚÎÏÅ ÐÒÁ×ÉÌÏ" -msgstr[1] "%d ÂÅÓÐÏÌÅÚÎÙÈ ÐÒÁ×ÉÌÁ" -msgstr[2] "%d ÂÅÓÐÏÌÅÚÎÙÈ ÐÒÁ×ÉÌ" - -#: src/reduce.c:436 -#, c-format -msgid "start symbol %s does not derive any sentence" -msgstr "ÎÁÞÁÌØÎÙÊ ÓÉÍ×ÏÌ %s ÎÅ ×Ù×ÏÄÉÔ ÎÉ ÏÄÎÏÇÏ ÐÒÅÄÌÏÖÅÎÉÑ" - -#: src/scan-gram.l:160 -msgid "stray `,' treated as white space" -msgstr "ÌÉÛÎÑÑ `,', ÓÞÉÔÁÅÔÓÑ ÐÒÏÂÅÌÏÍ" - -#: src/scan-gram.l:221 -#, c-format -msgid "invalid directive: %s" -msgstr "ÎÅ×ÅÒÎÁÑ ÄÉÒÅËÔÉ×Á: %s" - -#: src/scan-gram.l:241 src/scan-gram.l:804 src/scan-gram.l:873 -#, c-format -msgid "integer out of range: %s" -msgstr "×ÙÈÏÄ ÚÁ ÇÒÁÎÉÃÙ ÄÉÁÐÁÚÏÎÁ ÃÅÌÏÇÏ: %s" - -#: src/scan-gram.l:283 -#, c-format -msgid "invalid character: %s" -msgstr "ÎÅÄÏÐÕÓÔÉÍÙÊ ÓÉÍ×ÏÌ: %s" - -#: src/scan-gram.l:412 src/scan-gram.l:422 src/scan-gram.l:441 -#, c-format -msgid "invalid escape sequence: %s" -msgstr "ÎÅÄÏÐÕÓÔÉÍÁÑ ÜËÒÁÎÉÒÕÀÝÁÑ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ: %s" - -#: src/scan-gram.l:446 -#, c-format -msgid "unrecognized escape sequence: %s" -msgstr "ÎÅÒÁÓÐÏÚÎÁÎÎÁÑ ÜËÒÁÎÉÒÕÀÝÁÑ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ: %s" - -#: src/scan-gram.l:534 -#, c-format -msgid "missing `{' in `%s'" -msgstr "× `%s' ÏÔÓÕÔÓÔ×ÕÅÔ `{'" - -#: src/scan-gram.l:774 -#, c-format -msgid "$$ of `%s' has no declared type" -msgstr "$$ × `%s' ÎÅ ÉÍÅÅÔ ÏÐÉÓÁÎÎÏÇÏ ÔÉÐÁ" - -#: src/scan-gram.l:795 -#, c-format -msgid "$%d of `%s' has no declared type" -msgstr "$%d ÉÚ `%s' ÎÅ ÉÍÅÅÔ ÏÐÉÓÁÎÎÏÇÏ ÔÉÐÁ" - -#: src/scan-gram.l:840 src/scan-gram.l:908 -#, c-format -msgid "invalid value: %s" -msgstr "ÎÅÄÏÐÕÓÔÉÍÏÅ ÚÎÁÞÅÎÉÅ: %s" - -#: src/scan-gram.l:996 -#, c-format -msgid "missing `%s' at end of file" -msgstr "ÏÔÓÕÔÓÔ×ÕÅÔ `%s' × ËÏÎÃÅ ÆÁÊÌÁ" - -#: src/symlist.c:97 src/symlist.c:108 -msgid "invalid $ value" -msgstr "ÎÅ×ÅÒÎÏÅ $ ÚÎÁÞÅÎÉÅ" - -#: src/symtab.c:84 -#, c-format -msgid "type redeclaration for %s" -msgstr "ÐÏ×ÔÏÒÎÏÅ ÏÐÉÓÁÎÉÅ ÔÉÐÁ ÄÌÑ %s" - -#: src/symtab.c:101 src/symtab.c:119 -#, c-format -msgid "%s redeclaration for %s" -msgstr "ÐÏ×ÔÏÒÎÏÅ ÏÐÉÓÁÎÉÅ %s ÄÌÑ %s" - -#: src/symtab.c:138 -#, c-format -msgid "redefining precedence of %s" -msgstr "ÐÅÒÅÏÐÒÅÄÅÌÅÎÉÅ ÐÒÉÏÒÉÔÅÔÁ ÄÌÑ %s" - -#: src/symtab.c:156 -#, c-format -msgid "symbol %s redefined" -msgstr "ÐÏ×ÔÏÒÎÏÅ ÏÐÒÅÄÅÌÅÎÉÅ ÓÉÍ×ÏÌÁ %s" - -#: src/symtab.c:179 -#, c-format -msgid "redefining user token number of %s" -msgstr "ÐÅÒÅÏÐÒÅÄÅÌÅÎÉÅ ÎÏÍÅÒÁ ÌÅËÓÅÍÙ ÐÏÌØÚÏ×ÁÔÅÌÑ ÄÌÑ %s" - -#: src/symtab.c:206 -#, c-format -msgid "symbol %s is used, but is not defined as a token and has no rules" -msgstr "ÓÉÍ×ÏÌ %s ÉÓÐÏÌØÚÕÅÔÓÑ, ÎÏ ÎÅ ÏÐÒÅÄÅÌÅÎ ËÁË ÌÅËÓÅÍÁ É ÎÅ ÉÍÅÅÔ ÐÒÁ×ÉÌ" - -#: src/symtab.c:231 -#, c-format -msgid "symbol `%s' used more than once as a literal string" -msgstr "" - -#: src/symtab.c:234 -#, c-format -msgid "symbol `%s' given more than one literal string" -msgstr "" - -#: src/symtab.c:270 -#, c-format -msgid "conflicting precedences for %s and %s" -msgstr "ÐÒÏÔÉ×ÏÒÅÞÉ×ÙÅ ÐÒÉÏÒÉÔÅÔÙ ÄÌÑ %s É %s" - -#: src/symtab.c:282 -#, c-format -msgid "conflicting associativities for %s (%s) and %s (%s)" -msgstr "ÐÒÏÔÉ×ÏÒÅÞÉ×ÙÅ ÚÎÁÞÅÎÉÑ ÁÓÓÏÃÉÁÔÉ×ÎÏÓÔÉ ÄÌÑ %s (%s) É %s (%s)" - -#: src/symtab.c:367 -#, c-format -msgid "tokens %s and %s both assigned number %d" -msgstr "ÏÂÅÉÍ ÌÅËÓÅÍÁÍ %s É %s ÐÒÉÓ×ÏÅÎ ÎÏÍÅÒ %d" - -#: src/symtab.c:590 -#, c-format -msgid "the start symbol %s is undefined" -msgstr "ÎÁÞÁÌØÎÙÊ ÓÉÍ×ÏÌ %s ÎÅÏÐÒÅÄÅÌÅÎ" - -#: src/symtab.c:594 -#, c-format -msgid "the start symbol %s is a token" -msgstr "ÎÁÞÁÌØÎÙÊ ÓÉÍ×ÏÌ %s Ñ×ÌÑÅÔÓÑ ÌÅËÓÅÍÏÊ" - -#: lib/argmatch.c:135 -#, c-format -msgid "invalid argument %s for %s" -msgstr "ÎÅÄÏÐÕÓÔÉÍÙÊ ÁÒÇÕÍÅÎÔ %s ÄÌÑ %s" - -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "ÎÅÏÄÎÏÚÎÁÞÎÙÊ ÁÒÇÕÍÅÎÔ %s ÄÌÑ %s" - -#: lib/argmatch.c:155 -msgid "Valid arguments are:" -msgstr "äÏÐÕÓÔÉÍÙÅ ÁÒÇÕÍÅÎÔÙ:" - -#: lib/bitset_stats.c:179 -#, c-format -msgid "%u bitset_allocs, %u freed (%.2f%%).\n" -msgstr "" - -#: lib/bitset_stats.c:182 -#, c-format -msgid "%u bitset_sets, %u cached (%.2f%%)\n" -msgstr "" - -#: lib/bitset_stats.c:185 -#, c-format -msgid "%u bitset_resets, %u cached (%.2f%%)\n" -msgstr "" - -#: lib/bitset_stats.c:188 -#, c-format -msgid "%u bitset_tests, %u cached (%.2f%%)\n" -msgstr "" - -#: lib/bitset_stats.c:192 -#, c-format -msgid "%u bitset_lists\n" -msgstr "" - -#: lib/bitset_stats.c:194 -msgid "count log histogram\n" -msgstr "" - -#: lib/bitset_stats.c:197 -msgid "size log histogram\n" -msgstr "" - -#: lib/bitset_stats.c:200 -msgid "density histogram\n" -msgstr "" - -#: lib/bitset_stats.c:214 -msgid "" -"Bitset statistics:\n" -"\n" -msgstr "" - -#: lib/bitset_stats.c:217 -#, c-format -msgid "Accumulated runs = %u\n" -msgstr "" - -#: lib/bitset_stats.c:261 lib/bitset_stats.c:266 -msgid "Could not read stats file." -msgstr "îÅ ÕÄÁÅÔÓÑ ÐÒÏÞÉÔÁÔØ ÆÁÊÌ ÓÔÁÔÉÓÔÉËÉ." - -#: lib/bitset_stats.c:263 -msgid "Bad stats file size.\n" -msgstr "" - -#: lib/bitset_stats.c:289 lib/bitset_stats.c:291 -msgid "Could not write stats file." -msgstr "îÅ ÕÄÁÅÔÓÑ ÚÁÐÉÓÁÔØ × ÆÁÊÌ ÓÔÁÔÉÓÔÉËÉ." - -#: lib/bitset_stats.c:294 -msgid "Could not open stats file for writing." -msgstr "îÅ ÕÄÁÅÔÓÑ ÏÔËÒÙÔØ ÆÁÊÌ ÓÔÁÔÉÓÔÉËÉ ÄÌÑ ÚÁÐÉÓÉ." - -#: lib/getopt.c:688 lib/getopt.c:700 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: ÎÅÏÄÎÏÚÎÁÞÎÙÊ ËÌÀÞ `%s'\n" - -#: lib/getopt.c:733 lib/getopt.c:737 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: ËÌÀÞ `--%s' ÄÏÌÖÅÎ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ ÂÅÚ ÁÒÇÕÍÅÎÔÁ\n" - -#: lib/getopt.c:746 lib/getopt.c:751 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: ËÌÀÞ `%c%s' ÄÏÌÖÅÎ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ ÂÅÚ ÁÒÇÕÍÅÎÔÁ\n" - -#: lib/getopt.c:787 lib/getopt.c:800 lib/getopt.c:1089 lib/getopt.c:1102 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: ËÌÀÞ `%s' ÄÏÌÖÅÎ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ Ó ÁÒÇÕÍÅÎÔÏÍ\n" - -#: lib/getopt.c:838 lib/getopt.c:841 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: ÎÅÉÚ×ÅÓÔÎÙÊ ËÌÀÞ `--%s'\n" - -#: lib/getopt.c:849 lib/getopt.c:852 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: ÎÅÉÚ×ÅÓÔÎÙÊ ËÌÀÞ `%c%s'\n" - -#: lib/getopt.c:899 lib/getopt.c:902 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: ÎÅÄÏÐÕÓÔÉÍÙÊ ËÌÀÞ -- %c\n" - -#: lib/getopt.c:908 lib/getopt.c:911 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: ÎÅ×ÅÒÎÙÊ ËÌÀÞ -- %c\n" - -#: lib/getopt.c:958 lib/getopt.c:969 lib/getopt.c:1155 lib/getopt.c:1168 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: ËÌÀÞ ÄÏÌÖÅÎ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ Ó ÁÒÇÕÍÅÎÔÏÍ -- %c\n" - -#: lib/getopt.c:1021 lib/getopt.c:1032 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: ÎÅÏÄÎÏÚÎÁÞÎÙÊ ËÌÀÞ `-W %s'\n" - -#: lib/getopt.c:1056 lib/getopt.c:1068 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: ËÌÀÞ `-W %s' ÄÏÌÖÅÎ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ ÂÅÚ ÁÒÇÕÍÅÎÔÁ\n" - -#: lib/obstack.c:487 lib/obstack.c:490 lib/xmalloc.c:63 -msgid "memory exhausted" -msgstr "ÐÁÍÑÔØ ÉÓÞÅÒÐÁÎÁ" - -#: lib/quotearg.c:236 -msgid "`" -msgstr "`" - -#: lib/quotearg.c:237 -msgid "'" -msgstr "'" - -#: lib/subpipe.c:187 -#, c-format -msgid "subsidiary program `%s' could not be invoked" -msgstr "ÎÅ ÕÄÁÅÔÓÑ ×ÙÐÏÌÎÉÔØ ×ÓÐÏÍÏÇÁÔÅÌØÎÕÀ ÐÒÏÇÒÁÍÍÕ `%s'" - -#: lib/subpipe.c:189 -#, c-format -msgid "subsidiary program `%s' not found" -msgstr "×ÓÐÏÍÏÇÁÔÅÌØÎÁÑ ÐÒÏÇÒÁÍÍÁ `%s' ÎÅ ÎÁÊÄÅÎÁ" - -#: lib/subpipe.c:191 -#, c-format -msgid "subsidiary program `%s' failed" -msgstr "×ÓÐÏÍÏÇÁÔÅÌØÎÁÑ ÐÒÏÇÒÁÍÍÁ `%s' ÚÁ×ÅÒÛÉÌÁÓØ ÎÅÕÄÁÞÎÏ" - -#: lib/subpipe.c:192 -#, c-format -msgid "subsidiary program `%s' failed (exit status %d)" -msgstr "" -"×ÓÐÏÍÏÇÁÔÅÌØÎÁÑ ÐÒÏÇÒÁÍÍÁ `%s' ÚÁ×ÅÒÛÉÌÁÓØ ÎÅÕÄÁÞÎÏ (ËÏÄ ÚÁ×ÅÒÛÅÎÉÑ %d)" - -#: lib/timevar.c:476 -msgid "" -"\n" -"Execution times (seconds)\n" -msgstr "" - -#: lib/timevar.c:526 -msgid " TOTAL :" -msgstr "" - -#: lib/timevar.c:562 -#, c-format -msgid "time in %s: %ld.%06ld (%ld%%)\n" -msgstr "" - -#~ msgid "too many states (max %d)" -#~ msgstr "ÓÌÉÛËÏÍ ÍÎÏÇÏ ÓÏÓÔÏÑÎÉÊ (ÍÁËÓÉÍÁÌØÎÏ %d)" - -#~ msgid "reduce" -#~ msgstr "×Ù×ÏÄ" - -#~ msgid "shift" -#~ msgstr "ÓÄ×ÉÇ" - -#~ msgid "%d shift/reduce conflict" -#~ msgid_plural "%d shift/reduce conflicts" -#~ msgstr[0] "%d ËÏÎÆÌÉËÔ ÓÄ×ÉÇÁ/×Ù×ÏÄÁ" -#~ msgstr[1] "%d ËÏÎÆÌÉËÔÁ ÓÄ×ÉÇÁ/×Ù×ÏÄÁ" -#~ msgstr[2] "%d ËÏÎÆÌÉËÔÏ× ÓÄ×ÉÇÁ/×Ù×ÏÄÁ" - -#~ msgid "and" -#~ msgstr "É" - -#~ msgid "State %d contains " -#~ msgstr "óÏÓÔÏÑÎÉÅ %d ÓÏÄÅÒÖÉÔ " - -#~ msgid "conflicts: " -#~ msgstr "ËÏÎÆÌÉËÔÙ: " - -#~ msgid "%s contains " -#~ msgstr "%s ÓÏÄÅÒÖÉÔ " - -#~ msgid "`%s' is no longer supported" -#~ msgstr "`%s' ÂÏÌØÛÅ ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ" - -#~ msgid "%s: no grammar file given\n" -#~ msgstr "%s: ÎÅ ÚÁÄÁÎ ÆÁÊÌ Ó ÇÒÁÍÍÁÔÉËÏÊ\n" - -#~ msgid "%s: extra arguments ignored after `%s'\n" -#~ msgstr "%s: ÌÉÛÎÉÅ ÁÒÇÕÍÅÎÔÙ ÐÏÓÌÅ `%s' ÉÇÎÏÒÉÒÏ×ÁÎÙ\n" - -#~ msgid "too many gotos (max %d)" -#~ msgstr "ÓÌÉÛËÏÍ ÍÎÏÇÏ goto (ÍÁËÓÉÍÁÌØÎÏ %d)" - -#~ msgid "unexpected `/' found and ignored" -#~ msgstr "×ÓÔÒÅÞÅÎ É ÐÒÏÉÇÎÏÒÉÒÏ×ÁÎ ÎÅÏÖÉÄÁÎÎÙÊ ÓÉÍ×ÏÌ `/'" - -#~ msgid "unterminated comment" -#~ msgstr "ÎÅÚÁËÏÎÞÅÎÎÙÊ ËÏÍÍÅÎÔÁÒÉÊ" - -#~ msgid "unexpected end of file" -#~ msgstr "ÎÅÏÖÉÄÁÎÎÙÊ ËÏÎÅà ÆÁÊÌÁ" - -#~ msgid "unescaped newline in constant" -#~ msgstr "ÎÅÜËÒÁÎÉÒÏ×ÁÎÎÙÊ ÐÅÒÅ×ÏÄ ÓÔÒÏËÉ × ËÏÎÓÔÁÎÔÅ" - -#~ msgid "octal value outside range 0...255: `\\%o'" -#~ msgstr "×ÏÓØÍÅÒÉÞÎÁÑ ×ÅÌÉÞÉÎÁ ÚÁ ÐÒÅÄÅÌÁÍÉ ÄÉÁÐÁÚÏÎÁ 0...255: `\\%o'" - -#~ msgid "hexadecimal value above 255: `\\x%x'" -#~ msgstr "ÛÅÓÔÎÁÄÃÁÔÅÒÉÞÎÁÑ ×ÅÌÉÞÉÎÁ ÐÒÅ×ÙÛÁÅÔ 255: `\\x%x'" - -#~ msgid "unknown escape sequence: `\\' followed by `%s'" -#~ msgstr "ÎÅÉÚ×ÅÓÔÎÁÑ escape-ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ: `%s' ÐÏÓÌÅ `\\'" - -#~ msgid "unterminated type name at end of file" -#~ msgstr "ÎÅÚÁËÏÎÞÅÎÎÏÅ ÉÍÑ ÔÉÐÁ × ËÏÎÃÅ ÆÁÊÌÁ" - -#~ msgid "unterminated type name" -#~ msgstr "ÎÅÚÁËÏÎÞÅÎÎÏÅ ÉÍÑ ÔÉÐÁ" - -#~ msgid "use \"...\" for multi-character literal tokens" -#~ msgstr "ÉÓÐÏÌØÚÕÊÔÅ \"...\" ÄÌÑ ÍÎÏÇÏÓÉÍ×ÏÌØÎÙÈ ÌÉÔÅÒÁÌØÎÙÈ ÌÅËÓÅÍ" - -#~ msgid "`%s' supports no argument: %s" -#~ msgstr "`%s' ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔ ÁÒÇÕÍÅÎÔÁ %s" - -#~ msgid "`%s' requires an argument" -#~ msgstr "ËÌÀÞ `%s' ÄÏÌÖÅÎ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ Ó ÁÒÇÕÍÅÎÔÏÍ" - -#~ msgid " (rule %d)" -#~ msgstr " (ÐÒÁ×ÉÌÏ %d)" - -#~ msgid " %-4s\terror (nonassociative)\n" -#~ msgstr " %-4s\tÏÛÉÂËÁ (ÎÅÁÓÓÏÃÉÁÔÉ×ÎÁÑ)\n" - -#~ msgid "" -#~ " $default\treduce using rule %d (%s)\n" -#~ "\n" -#~ msgstr "" -#~ " $default\t×Ù×ÏÄ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ ÐÒÁ×ÉÌÁ %d (%s)\n" -#~ "\n" - -#~ msgid " %-4s\t[reduce using rule %d (%s)]\n" -#~ msgstr " %-4s\t[×Ù×ÏÄ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ ÐÒÁ×ÉÌÁ %d (%s)]\n" - -#~ msgid " %-4s\treduce using rule %d (%s)\n" -#~ msgstr " %-4s\t×Ù×ÏÄ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ ÐÒÁ×ÉÌÁ %d (%s)\n" - -#~ msgid " $default\treduce using rule %d (%s)\n" -#~ msgstr " $default\t×Ù×ÏÄ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ ÐÒÁ×ÉÌÁ %d (%s)\n" - -#~ msgid " $default\taccept\n" -#~ msgstr " $default\tÐÒÉÎÑÔÉÅ\n" - -#~ msgid " NO ACTIONS\n" -#~ msgstr " îåô äåêóô÷éê\n" - -#~ msgid "Number, Line, Rule" -#~ msgstr "îÏÍÅÒ, óÔÒÏËÁ, ðÒÁ×ÉÌÏ" - -#~ msgid " %3d %3d %s ->" -#~ msgstr " %3d %3d %s ->" - -#~ msgid " Skipping to next \\n" -#~ msgstr " ðÒÏÐÕÓË ÄÏ ÓÌÅÄÕÀÝÅÇÏ \\n" - -#~ msgid " Skipping to next %c" -#~ msgstr " ðÒÏÐÕÓË ÄÏ ÓÌÅÄÕÀÝÅÇÏ %c" - -#~ msgid "unterminated string" -#~ msgstr "ÎÅÚÁËÏÎÞÅÎÎÁÑ ÓÔÒÏËÁ" - -#~ msgid "%s is invalid" -#~ msgstr "ÎÅ×ÅÒÎÙÊ ÚÎÁË %s" - -#~ msgid "unterminated `%{' definition" -#~ msgstr "ÎÅÚÁËÏÎÞÅÎÎÏÅ ÏÐÒÅÄÅÌÅÎÉÅ `%{'" - -#~ msgid "Premature EOF after %s" -#~ msgstr "ðÒÅÖÄÅ×ÒÅÍÅÎÎÙÊ ËÏÎÅà ÆÁÊÌÁ ÐÏÓÌÅ %s" - -#~ msgid "`%s' is invalid in %s" -#~ msgstr "`%s' ÎÅ×ÅÒÎÏ × %s" - -#~ msgid "invalid %s declaration" -#~ msgstr "ÎÅ×ÅÒÎÏÅ ÏÐÉÓÁÎÉÅ %s" - -#~ msgid "%type declaration has no " -#~ msgstr "ÏÐÉÓÁÎÉÅ %type ÎÅ ÉÍÅÅÔ <ÉÍÑ_ÔÉÐÁ>" - -#~ msgid "invalid %%type declaration due to item: %s" -#~ msgstr "ÎÅ×ÅÒÎÏÅ ÏÐÉÓÁÎÉÅ %%type ÉÚ-ÚÁ ÜÌÅÍÅÎÔÁ: %s" - -#~ msgid "invalid text (%s) - number should be after identifier" -#~ msgstr "ÎÅ×ÅÒÎÙÊ ÔÅËÓÔ (%s) - ÞÉÓÌÏ ÄÏÌÖÎÏ ÓÌÅÄÏ×ÁÔØ ÚÁ ÉÄÅÎÔÉÆÉËÁÔÏÒÏÍ" - -#~ msgid "unexpected item: %s" -#~ msgstr "ÎÅÏÖÉÄÁÎÎÙÊ ÜÌÅÍÅÎÔ: %s" - -#~ msgid "unmatched %s" -#~ msgstr "ÎÅÐÁÒÎÁÑ %s" - -#~ msgid "argument of %%expect is not an integer" -#~ msgstr "ÁÒÇÕÍÅÎÔ %%expect ÎÅ Ñ×ÌÑÅÔÓÑ ÃÅÌÙÍ ÞÉÓÌÏÍ" - -#~ msgid "unrecognized item %s, expected an identifier" -#~ msgstr "ÎÅÒÁÓÐÏÚÎÁÎÎÙÊ ÜÌÅÍÅÎÔ %s, ÏÖÉÄÁÌÓÑ ÉÄÅÎÔÉÆÉËÁÔÏÒ" - -#~ msgid "expected string constant instead of %s" -#~ msgstr "×ÍÅÓÔÏ %s ÏÖÉÄÁÌÁÓØ ÓÔÒÏËÏ×ÁÑ ÐÏÓÔÏÑÎÎÁÑ" - -#~ msgid "no input grammar" -#~ msgstr "ÎÅÔ ×ÈÏÄÎÏÊ ÇÒÁÍÍÁÔÉËÉ" - -#~ msgid "ill-formed rule: initial symbol not followed by colon" -#~ msgstr "ÎÅ×ÅÒÎÏÅ ÐÒÁ×ÉÌÏ: Ä×ÏÅÔÏÞÉÅ ÎÅ ÓÌÅÄÕÅÔ ÚÁ ÎÁÞÁÌØÎÙÍ ÓÉÍ×ÏÌÏÍ" - -#~ msgid "grammar starts with vertical bar" -#~ msgstr "ÇÒÁÍÍÁÔÉËÁ ÎÁÞÉÎÁÅÔÓÑ Ó ×ÅÒÔÉËÁÌØÎÏÊ ÞÅÒÔÙ" - -#~ msgid "previous rule lacks an ending `;'" -#~ msgstr "× ÐÒÅÄÙÄÕÝÅÍ ÐÒÁ×ÉÌÅ ÏÔÓÕÔÓÔ×ÕÅÔ ÚÁ×ÅÒÛÁÀÝÁÑ `;'" - -#~ msgid "two @prec's in a row" -#~ msgstr "Ä×Á @prec ÐÏÄÒÑÄ" - -#~ msgid "%%guard present but %%semantic_parser not specified" -#~ msgstr "%%guard ÐÒÉÓÕÔÓÔ×ÕÅÔ, Á %%semantic_parser ÎÅ ÚÁÄÁÎ" - -#~ msgid "two actions at end of one rule" -#~ msgstr "Ä×Á ÄÅÊÓÔ×ÉÑ × ËÏÎÃÅ ÏÄÎÏÇÏ ÐÒÁ×ÉÌÁ" - -#~ msgid "too many symbols (tokens plus nonterminals); maximum %d" -#~ msgstr "ÓÌÉÛËÏÍ ÍÎÏÇÏ ÓÉÍ×ÏÌÏ× (ÌÅËÓÅÍÙ ÐÌÀÓ ÎÅÔÅÒÍÉÎÁÌÙ); ÍÁËÓÉÍÁÌØÎÏ %d" - -#~ msgid "maximum table size (%d) exceeded" -#~ msgstr "ÐÒÅ×ÙÛÅÎ ÍÁËÓÉÍÁÌØÎÙÊ ÒÁÚÍÅÒ ÔÁÂÌÉÃÙ (%d)" - -#~ msgid " $ \tgo to state %d\n" -#~ msgstr " $ \tÐÅÒÅÈÏÄ × ÓÏÓÔÏÑÎÉÅ %d\n" - -#~ msgid "unterminated %guard clause" -#~ msgstr "ÎÅÚÁËÏÎÞÅÎÎÙÊ ÏÐÅÒÁÔÏÒ %guard" - -#~ msgid " 1 shift/reduce conflict" -#~ msgstr " 1 ËÏÎÆÌÉËÔ ÓÄ×ÉÇÁ/×Ù×ÏÄÁ" - -#~ msgid "%s contains" -#~ msgstr "%s ÓÏÄÅÒÖÉÔ" - -#~ msgid "DERIVES" -#~ msgstr "DERIVES" - -#~ msgid "%s derives" -#~ msgstr "%s ×Ù×ÏÄÉÔ" - -#~ msgid "%s: internal error: %s\n" -#~ msgstr "%s: ×ÎÕÔÒÅÎÎÑÑ ÏÛÉÂËÁ: %s\n" - -#~ msgid "Entering set_nullable" -#~ msgstr "÷ÈÏÄ × set_nullable" - -#~ msgid "\t\t/* empty */" -#~ msgstr "\t\t/* ÐÕÓÔÏ */" - -#~ msgid "multiple %%header_extension declarations" -#~ msgstr "ÍÎÏÖÅÓÔ×ÅÎÎÙÅ ÏÐÉÓÁÎÉÑ %%header_extension" - -#~ msgid "multiple %%source_extension declarations" -#~ msgstr "ÍÎÏÖÅÓÔ×ÅÎÎÙÅ ÏÐÉÓÁÎÉÑ %%source_extension" - -#~ msgid "" -#~ "Variables\n" -#~ "---------\n" -#~ "\n" -#~ msgstr "" -#~ "ðÅÒÅÍÅÎÎÙÅ\n" -#~ "----------\n" -#~ "\n" - -#~ msgid "Value Sprec Sassoc Tag\n" -#~ msgstr "úÎÁÞ ðÒÉÏÒ áÓÓÏà ôÅÇ\n" - -#~ msgid "" -#~ "Rules\n" -#~ "-----\n" -#~ "\n" -#~ msgstr "" -#~ "ðÒÁ×ÉÌÁ\n" -#~ "-------\n" -#~ "\n" - -#~ msgid "" -#~ "Rules interpreted\n" -#~ "-----------------\n" -#~ "\n" -#~ msgstr "" -#~ "éÎÔÅÒÐÒÅÔÉÒÏ×ÁÎÎÙÅ ÐÒÁ×ÉÌÁ\n" -#~ "--------------------------\n" -#~ "\n" - -#~ msgid "" -#~ "reduced %s defines %d terminal%s, %d nonterminal%s, and %d production%s.\n" -#~ msgstr "" -#~ "×Ù×ÅÄÅÎÎÙÊ %s ÏÐÒÅÄÅÌÑÅÔ %d ÔÅÒÍÉÎÁÌÏ×%s, %d ÎÅÔÅÒÍÉÎÁÌÏ×%s, É %d ÐÒÁ×ÉÌ " -#~ "×Ù×ÏÄÁ%s.\n" - -#~ msgid "@%s is invalid" -#~ msgstr "ÎÅ×ÅÒÎÙÊ ÚÎÁË @%s" diff --git a/po/sv.po b/po/sv.po deleted file mode 100644 index 84babff9..00000000 --- a/po/sv.po +++ /dev/null @@ -1,711 +0,0 @@ -# Swedish messages for bison. -# Copyright © 2001, 2002, 2003 Free Software Foundation, Inc. -# Göran Uddeborg , 2001, 2002, 2003. -# $Revision$ -# -msgid "" -msgstr "" -"Project-Id-Version: bison 1.875\n" -"Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2003-08-25 17:14+0200\n" -"PO-Revision-Date: 2003-01-01 23:03+0100\n" -"Last-Translator: Göran Uddeborg \n" -"Language-Team: Swedish \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=iso-8859-1\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: src/complain.c:56 lib/error.c:135 lib/error.c:163 -msgid "Unknown system error" -msgstr "Okänt systemfel" - -#: src/complain.c:79 src/complain.c:94 -msgid "warning: " -msgstr "varning: " - -#: src/complain.c:150 src/complain.c:166 -msgid "fatal error: " -msgstr "ödesdigert fel: " - -#: src/conflicts.c:75 -#, c-format -msgid " Conflict between rule %d and token %s resolved as shift" -msgstr " Konflikt mellan regel %d och element %s löstes som skift" - -#: src/conflicts.c:83 -#, c-format -msgid " Conflict between rule %d and token %s resolved as reduce" -msgstr " Konflikt mellan regel %d och element %s löstes som reducera" - -#: src/conflicts.c:90 -#, c-format -msgid " Conflict between rule %d and token %s resolved as an error" -msgstr " Konflikt mellan regel %d och element %s löstes som ett fel" - -#: src/conflicts.c:398 -#, c-format -msgid "conflicts: %d shift/reduce, %d reduce/reduce\n" -msgstr "konflikter: %d skifta/reducera, %d reducera/reducera\n" - -#: src/conflicts.c:401 -#, c-format -msgid "conflicts: %d shift/reduce\n" -msgstr "konflikter: %d skifta/reducera\n" - -#: src/conflicts.c:403 -#, c-format -msgid "conflicts: %d reduce/reduce\n" -msgstr "konflikter: %d reducera/reducera\n" - -#: src/conflicts.c:421 -#, c-format -msgid "State %d " -msgstr "Tillstånd %d " - -#: src/conflicts.c:498 -#, c-format -msgid "expected %d shift/reduce conflict" -msgid_plural "expected %d shift/reduce conflicts" -msgstr[0] "förväntade %d skifta/reducerakonflikt" -msgstr[1] "förväntade %d skifta/reducerakonflikter" - -#: src/conflicts.c:503 -msgid "expected 0 reduce/reduce conflicts" -msgstr "förväntade 0 reducera/reducerakonflikter" - -#: src/files.c:99 -#, c-format -msgid "cannot open file `%s'" -msgstr "kan inte öppna filen \"%s\"" - -#: src/files.c:115 -msgid "I/O error" -msgstr "I/O-fel" - -#: src/files.c:118 -msgid "cannot close file" -msgstr "kan inte stänga fil" - -#: src/files.c:336 -#, c-format -msgid "conflicting outputs to file %s" -msgstr "motstridiga utmatningar till filen %s" - -#: src/getargs.c:186 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "Försök med \"%s --help\" för mer information.\n" - -#: src/getargs.c:192 -msgid "GNU bison generates parsers for LALR(1) grammars.\n" -msgstr "GNU bison genererar parsrar för LALR(1)-grammatiker.\n" - -#: src/getargs.c:196 -#, c-format -msgid "Usage: %s [OPTION]... FILE\n" -msgstr "Användning: %s [FLAGGA]... FIL\n" - -#: src/getargs.c:200 -msgid "" -"If a long option shows an argument as mandatory, then it is mandatory\n" -"for the equivalent short option also. Similarly for optional arguments.\n" -msgstr "" -"Om en lång flagga visar ett argument som obligatoriskt är det\n" -"obligatoriskt för den motsvarande korta flaggan också. Motsvarande\n" -"för valfria argument.\n" - -#: src/getargs.c:206 -msgid "" -"Operation modes:\n" -" -h, --help display this help and exit\n" -" -V, --version output version information and exit\n" -" -y, --yacc emulate POSIX yacc\n" -msgstr "" -"Arbetslägen:\n" -" -h, --help visa denna hjälptext och avsluta\n" -" -V, --version visa versionsinformation och avsluta\n" -" -y, --yacc emulera POSIX-yacc\n" - -#: src/getargs.c:213 -msgid "" -"Parser:\n" -" -S, --skeleton=FILE specify the skeleton to use\n" -" -t, --debug instrument the parser for debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n" -" -l, --no-lines don't generate `#line' directives\n" -" -n, --no-parser generate the tables only\n" -" -k, --token-table include a table of token names\n" -msgstr "" -"Tolk:\n" -" -S, --skeleton=FIL ange skelettfilen som skall användas\n" -" -t, --debug instrumentera tolken för felsökning\n" -" --locations aktivera lägesberäkning\n" -" -p, --name-prefix=PREFIX lägg till PREFIX före externa symboler\n" -" -l, --no-lines generera inte \"#line\"-direktiv\n" -" -n, --no-parser generera endast tabellerna\n" -" -k, --token-table inkludera en tabell över elementnamn\n" - -#: src/getargs.c:225 -msgid "" -"Output:\n" -" -d, --defines also produce a header file\n" -" -r, --report=THINGS also produce details on the automaton\n" -" -v, --verbose same as `--report=state'\n" -" -b, --file-prefix=PREFIX specify a PREFIX for output files\n" -" -o, --output=FILE leave output to FILE\n" -" -g, --graph also produce a VCG description of the " -"automaton\n" -msgstr "" -"Utdata:\n" -" -d, --defines skapa också en huvudfil\n" -" -r, --report=SAKER skapa också detaljer om automaten\n" -" -v, --verbose samma som \"--report=state\"\n" -" -b, --file-prefix=PREFIX ange ett PREFIX för utdatafiler\n" -" -o, --output=FIL lägg utdata i FIL\n" -" -g, --graph skapa också en VCG-beskrivning av automaten\n" - -#: src/getargs.c:236 -msgid "" -"THINGS is a list of comma separated words that can include:\n" -" `state' describe the states\n" -" `itemset' complete the core item sets with their closure\n" -" `lookahead' explicitly associate lookaheads to items\n" -" `solved' describe shift/reduce conflicts solving\n" -" `all' include all the above information\n" -" `none' disable the report\n" -msgstr "" -"SAKER är en lista med kommaseparerade ord som kan innehålla:\n" -" \"state\" beskriv tillstånden\n" -" \"itemset\" komplettera kärnobjektmängderna med sina höljen\n" -" \"lookahead\" koppla uttryckligen framåtblickar till objekt\n" -" \"solved\" beskriv lösningar av skifta/reducerakonflikter\n" -" \"all\" inkludera all ovanstående information\n" -" \"none\" avaktivera rapporten\n" - -#: src/getargs.c:247 -msgid "Report bugs to .\n" -msgstr "" -"Rapportera fel till .\n" -"Rapportera synpunkter på översättningen till .\n" - -#: src/getargs.c:264 -#, c-format -msgid "bison (GNU Bison) %s" -msgstr "bison (GNU Bison) %s" - -#: src/getargs.c:266 -msgid "Written by Robert Corbett and Richard Stallman.\n" -msgstr "Skriven av Robert Corbett och Richard Stallman.\n" - -#: src/getargs.c:270 -#, c-format -msgid "Copyright (C) %d Free Software Foundation, Inc.\n" -msgstr "Copyright © %d Free Software Foundation, Inc.\n" - -#: src/getargs.c:272 -msgid "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"Detta är fri programvara, se källkoden för kopieringsvillkor. Det\n" -"finns INGEN garanti, inte ens för SÄLJBARHET eller LÄMPLIGHET FÖR ETT\n" -"SPECIELLT ÄNDAMÅL.\n" - -#: src/getargs.c:438 -#, c-format -msgid "missing operand after `%s'" -msgstr "saknad operand efter \"%s\"" - -#: src/getargs.c:440 -#, c-format -msgid "extra operand `%s'" -msgstr "extra operand \"%s\"" - -#: src/gram.c:139 -msgid "empty" -msgstr "tom" - -#: src/gram.c:233 -msgid "Grammar" -msgstr "Grammatik" - -#: src/gram.c:321 src/reduce.c:394 -msgid "warning" -msgstr "varning" - -#: src/main.c:124 -msgid "rule never reduced because of conflicts" -msgstr "regel aldrig reducerad på grund av konflikter" - -#: src/parse-gram.y:353 -msgid "POSIX forbids declarations in the grammar" -msgstr "POSIX förbjuder deklarationer i grammatiken" - -#: src/parse-gram.y:476 -msgid "missing identifier in parameter declaration" -msgstr "identiferare saknas i parameterdeklaration" - -#: src/print.c:49 -#, c-format -msgid " type %d is %s\n" -msgstr " typ %d är %s\n" - -#: src/print.c:165 -#, c-format -msgid "shift, and go to state %d\n" -msgstr "skifta, och gå till tillstånd %d\n" - -#: src/print.c:167 -#, c-format -msgid "go to state %d\n" -msgstr "gå till tillstånd %d\n" - -#: src/print.c:204 -msgid "error (nonassociative)\n" -msgstr "fel (ickeassociativ)\n" - -#: src/print.c:292 -#, c-format -msgid "reduce using rule %d (%s)" -msgstr "reducera med regel %d (%s)" - -#: src/print.c:294 -msgid "accept" -msgstr "acceptera" - -#: src/print.c:325 src/print.c:391 -msgid "$default" -msgstr "$standard" - -#: src/print.c:420 -#, c-format -msgid "state %d" -msgstr "tillstånd %d" - -#: src/print.c:456 -msgid "Terminals, with rules where they appear" -msgstr "Terminaler, med regler där de förekommer" - -#: src/print.c:483 -msgid "Nonterminals, with rules where they appear" -msgstr "Icketerminaler, med regler där de förekommer" - -#: src/print.c:512 -msgid " on left:" -msgstr " till vänster:" - -#: src/print.c:527 -msgid " on right:" -msgstr " till höger:" - -#: src/print.c:555 -msgid "Rules never reduced" -msgstr "Aldrig reducerade regler" - -#: src/reader.c:53 -#, c-format -msgid "multiple %s declarations" -msgstr "flera %s-deklarationer" - -#: src/reader.c:115 -#, c-format -msgid "result type clash on merge function %s: <%s> != <%s>" -msgstr "resultattypskonflikt vid sammanslagningsfunktion %s: <%s> != <%s>" - -#: src/reader.c:213 -#, c-format -msgid "rule given for %s, which is a token" -msgstr "regel given för %s, som är ett element" - -#: src/reader.c:242 -#, c-format -msgid "type clash on default action: <%s> != <%s>" -msgstr "typkonflikt för standardåtgärd: <%s> <%s>" - -#: src/reader.c:248 -msgid "empty rule for typed nonterminal, and no action" -msgstr "tom regel för typad icketerminal, och ingen åtgärd" - -#: src/reader.c:318 src/reader.c:332 src/reader.c:345 -#, c-format -msgid "only one %s allowed per rule" -msgstr "endast en %s tillåts per regel" - -#: src/reader.c:328 src/reader.c:343 -#, c-format -msgid "%s affects only GLR parsers" -msgstr "%s påverkar endast GLR-parsrar" - -#: src/reader.c:330 -#, c-format -msgid "%s must be followed by positive number" -msgstr "%s måste följas av ett positivt tal" - -#: src/reader.c:487 -msgid "no rules in the input grammar" -msgstr "inga regler i ingrammatiken" - -#: src/reduce.c:242 -msgid "useless rule" -msgstr "oanvändbar regel" - -#: src/reduce.c:303 -#, c-format -msgid "useless nonterminal: %s" -msgstr "oanvändbar icketerminal: %s" - -#: src/reduce.c:351 -msgid "Useless nonterminals" -msgstr "Oanvändbara icketerminaler" - -#: src/reduce.c:364 -msgid "Terminals which are not used" -msgstr "Terminaler som inte används" - -#: src/reduce.c:373 -msgid "Useless rules" -msgstr "Oanvändbara regler" - -#: src/reduce.c:389 -#, c-format -msgid "%d rule never reduced\n" -msgid_plural "%d rules never reduced\n" -msgstr[0] "%d regel reduceras aldrig\n" -msgstr[1] "%d regler reduceras aldrig\n" - -#: src/reduce.c:397 -#, c-format -msgid "%d useless nonterminal" -msgid_plural "%d useless nonterminals" -msgstr[0] "%d oanvändbar icketerminal" -msgstr[1] "%d oanvändbara icketerminaler" - -#: src/reduce.c:403 -msgid " and " -msgstr " och " - -#: src/reduce.c:406 -#, c-format -msgid "%d useless rule" -msgid_plural "%d useless rules" -msgstr[0] "%d oanvändbar regel" -msgstr[1] "%d oanvändbara regler" - -#: src/reduce.c:436 -#, c-format -msgid "start symbol %s does not derive any sentence" -msgstr "startsymbolen %s genererar inga meningar" - -#: src/scan-gram.l:160 -msgid "stray `,' treated as white space" -msgstr "vilsekommet \",\" hanterat som blank" - -#: src/scan-gram.l:221 -#, c-format -msgid "invalid directive: %s" -msgstr "ogiltigt direktiv: %s" - -#: src/scan-gram.l:241 src/scan-gram.l:804 src/scan-gram.l:873 -#, c-format -msgid "integer out of range: %s" -msgstr "heltal utanför intervall: %s" - -#: src/scan-gram.l:283 -#, c-format -msgid "invalid character: %s" -msgstr "ogiltigt tecken: %s" - -#: src/scan-gram.l:412 src/scan-gram.l:422 src/scan-gram.l:441 -#, c-format -msgid "invalid escape sequence: %s" -msgstr "ogiltig specialsekvens: %s" - -#: src/scan-gram.l:446 -#, c-format -msgid "unrecognized escape sequence: %s" -msgstr "okänd specialsekvens: %s" - -#: src/scan-gram.l:534 -#, c-format -msgid "missing `{' in `%s'" -msgstr "saknad \"{\" i \"%s\"" - -#: src/scan-gram.l:774 -#, c-format -msgid "$$ of `%s' has no declared type" -msgstr "$$ för \"%s\" har ingen deklarerad typ" - -#: src/scan-gram.l:795 -#, c-format -msgid "$%d of `%s' has no declared type" -msgstr "$%d för \"%s\" har ingen deklarerad typ" - -#: src/scan-gram.l:840 src/scan-gram.l:908 -#, c-format -msgid "invalid value: %s" -msgstr "felaktigt värde: %s" - -#: src/scan-gram.l:996 -#, c-format -msgid "missing `%s' at end of file" -msgstr "saknat \"%s\" vid filslut" - -#: src/symlist.c:97 src/symlist.c:108 -msgid "invalid $ value" -msgstr "felaktigt $-värde" - -#: src/symtab.c:84 -#, c-format -msgid "type redeclaration for %s" -msgstr "typen omdeklarerad för %s" - -#: src/symtab.c:101 src/symtab.c:119 -#, c-format -msgid "%s redeclaration for %s" -msgstr "%s-omdeklaration för %s" - -#: src/symtab.c:138 -#, c-format -msgid "redefining precedence of %s" -msgstr "omdefinition av precedens för %s" - -#: src/symtab.c:156 -#, c-format -msgid "symbol %s redefined" -msgstr "symbolen %s omdefinierad" - -#: src/symtab.c:179 -#, c-format -msgid "redefining user token number of %s" -msgstr "omdefinition av elementnummer för %s" - -#: src/symtab.c:206 -#, c-format -msgid "symbol %s is used, but is not defined as a token and has no rules" -msgstr "" -"symbolen %s används, men är inte definierad som ett element och har inga " -"regler" - -#: src/symtab.c:231 -#, c-format -msgid "symbol `%s' used more than once as a literal string" -msgstr "symbolen \"%s\" används mer än en gång som en bokstavlig sträng" - -#: src/symtab.c:234 -#, c-format -msgid "symbol `%s' given more than one literal string" -msgstr "symbolen \"%s\" har fått mer än en bokstavlig sträng" - -#: src/symtab.c:270 -#, c-format -msgid "conflicting precedences for %s and %s" -msgstr "motstridiga precedenser mellan %s och %s" - -#: src/symtab.c:282 -#, c-format -msgid "conflicting associativities for %s (%s) and %s (%s)" -msgstr "motstridiga associativiteter för %s (%s) och %s (%s)" - -#: src/symtab.c:367 -#, c-format -msgid "tokens %s and %s both assigned number %d" -msgstr "elementen %s och %s har båda fått nummer %d" - -#: src/symtab.c:590 -#, c-format -msgid "the start symbol %s is undefined" -msgstr "startsymbolen %s är odefinierad" - -#: src/symtab.c:594 -#, c-format -msgid "the start symbol %s is a token" -msgstr "startsymbolen %s är ett element" - -#: lib/argmatch.c:135 -#, c-format -msgid "invalid argument %s for %s" -msgstr "ogiltigt argument %s till %s" - -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "tvetydigt argument %s till %s" - -#: lib/argmatch.c:155 -msgid "Valid arguments are:" -msgstr "Giltiga argument är:" - -#: lib/bitset_stats.c:179 -#, c-format -msgid "%u bitset_allocs, %u freed (%.2f%%).\n" -msgstr "%u bitmängdallokeringar, %u frianden (%.2f%%).\n" - -#: lib/bitset_stats.c:182 -#, c-format -msgid "%u bitset_sets, %u cached (%.2f%%)\n" -msgstr "%u bitmängdmängder, %u cachade (%.2f%%)\n" - -#: lib/bitset_stats.c:185 -#, c-format -msgid "%u bitset_resets, %u cached (%.2f%%)\n" -msgstr "%u bitmängdåterställanden, %u cachade (%.2f%%)\n" - -#: lib/bitset_stats.c:188 -#, c-format -msgid "%u bitset_tests, %u cached (%.2f%%)\n" -msgstr "%u bitmängdtester, %u cachade (%.2f%%)\n" - -#: lib/bitset_stats.c:192 -#, c-format -msgid "%u bitset_lists\n" -msgstr "%u bitmängdlistor\n" - -#: lib/bitset_stats.c:194 -msgid "count log histogram\n" -msgstr "anropslogghistogram\n" - -#: lib/bitset_stats.c:197 -msgid "size log histogram\n" -msgstr "storlekslogghistogram\n" - -#: lib/bitset_stats.c:200 -msgid "density histogram\n" -msgstr "densitetshistogram\n" - -#: lib/bitset_stats.c:214 -msgid "" -"Bitset statistics:\n" -"\n" -msgstr "" -"Bitmängdsstatistik:\n" -"\n" - -#: lib/bitset_stats.c:217 -#, c-format -msgid "Accumulated runs = %u\n" -msgstr "Ackumulerade körningar = %u\n" - -#: lib/bitset_stats.c:261 lib/bitset_stats.c:266 -msgid "Could not read stats file." -msgstr "Kunde inte läsa statistikfil." - -#: lib/bitset_stats.c:263 -msgid "Bad stats file size.\n" -msgstr "Dålig statistikfilstorlek.\n" - -#: lib/bitset_stats.c:289 lib/bitset_stats.c:291 -msgid "Could not write stats file." -msgstr "Kunde inte skriva statistikfil." - -#: lib/bitset_stats.c:294 -msgid "Could not open stats file for writing." -msgstr "Kunde inte öppna statistikfil för skrivning." - -#: lib/getopt.c:688 lib/getopt.c:700 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: flaggan \"%s\" är tvetydig\n" - -#: lib/getopt.c:733 lib/getopt.c:737 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: flaggan \"--%s\" tar inget argument\n" - -#: lib/getopt.c:746 lib/getopt.c:751 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: flaggan \"%c%s\" tar inget argument\n" - -#: lib/getopt.c:787 lib/getopt.c:800 lib/getopt.c:1089 lib/getopt.c:1102 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: flaggan \"%s\" behöver ett argument\n" - -#: lib/getopt.c:838 lib/getopt.c:841 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: okänd flagga \"--%s\"\n" - -#: lib/getopt.c:849 lib/getopt.c:852 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: okänd flagga \"%c%s\"\n" - -#: lib/getopt.c:899 lib/getopt.c:902 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: otillåten flagga -- %c\n" - -#: lib/getopt.c:908 lib/getopt.c:911 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: ogiltig flagga --%c\n" - -#: lib/getopt.c:958 lib/getopt.c:969 lib/getopt.c:1155 lib/getopt.c:1168 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: flaggan behöver ett argument -- %c\n" - -#: lib/getopt.c:1021 lib/getopt.c:1032 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: flaggan \"-W %s\" är tvetydig\n" - -#: lib/getopt.c:1056 lib/getopt.c:1068 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: flaggan \"-W %s\" tar inget argument\n" - -#: lib/obstack.c:487 lib/obstack.c:490 lib/xmalloc.c:63 -msgid "memory exhausted" -msgstr "minnet slut" - -# När vi går över till Unicode mer allmänt kanske vi bör översätta båda dessa -# med U+201D (RIGHT DOUBLE QUOTATION MARK) på svenska. Eller? -# -#: lib/quotearg.c:236 -msgid "`" -msgstr "\"" - -#: lib/quotearg.c:237 -msgid "'" -msgstr "\"" - -#: lib/subpipe.c:187 -#, c-format -msgid "subsidiary program `%s' could not be invoked" -msgstr "underprogram \"%s\" kunde inte köras" - -#: lib/subpipe.c:189 -#, c-format -msgid "subsidiary program `%s' not found" -msgstr "underprogram \"%s\" hittades inte" - -#: lib/subpipe.c:191 -#, c-format -msgid "subsidiary program `%s' failed" -msgstr "underprogram \"%s\" misslyckades" - -#: lib/subpipe.c:192 -#, c-format -msgid "subsidiary program `%s' failed (exit status %d)" -msgstr "underprogram \"%s\" misslyckades (slutstatus %d)" - -#: lib/timevar.c:476 -msgid "" -"\n" -"Execution times (seconds)\n" -msgstr "" -"\n" -"Exekveringstider (sekunder)\n" - -#: lib/timevar.c:526 -msgid " TOTAL :" -msgstr " TOTALT :" - -#: lib/timevar.c:562 -#, c-format -msgid "time in %s: %ld.%06ld (%ld%%)\n" -msgstr "tid i %s: %ld.%06ld (%ld%%)\n" diff --git a/po/tr.po b/po/tr.po deleted file mode 100644 index 0e952baa..00000000 --- a/po/tr.po +++ /dev/null @@ -1,902 +0,0 @@ -# Turkish translations for GNU Bison messages. -# Copyright (C) 2001 Free Software Foundation, Inc. -# Altuð Bayram , 2001. -# -msgid "" -msgstr "" -"Project-Id-Version: bison 1.49a\n" -"Report-Msgid-Bugs-To: bug-bison@gnu.org\n" -"POT-Creation-Date: 2003-08-25 17:14+0200\n" -"PO-Revision-Date: 2002-06-25 11:03GMT +02:00\n" -"Last-Translator: Altuð Bayram \n" -"Language-Team: Turkish \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=ISO-8859-9\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: KBabel 0.9.5\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#: src/complain.c:56 lib/error.c:135 lib/error.c:163 -msgid "Unknown system error" -msgstr "Bilinmeyen sistem hatasý" - -#: src/complain.c:79 src/complain.c:94 -msgid "warning: " -msgstr "uyarý: " - -#: src/complain.c:150 src/complain.c:166 -msgid "fatal error: " -msgstr "ölümcül hata:" - -#: src/conflicts.c:75 -#, fuzzy, c-format -msgid " Conflict between rule %d and token %s resolved as shift" -msgstr "" -"%d durumu içinde %d kuralý ve %s andaçý arasýndaki çeliþki %s olarak\n" -"çözümlendi.\n" - -#: src/conflicts.c:83 -#, fuzzy, c-format -msgid " Conflict between rule %d and token %s resolved as reduce" -msgstr "" -"%d durumu içinde %d kuralý ve %s andaçý arasýndaki çeliþki %s olarak\n" -"çözümlendi.\n" - -#: src/conflicts.c:90 -#, fuzzy, c-format -msgid " Conflict between rule %d and token %s resolved as an error" -msgstr "" -"%d durumu içinde %d kuralý ve %s andaçý arasýndaki çeliþki %s olarak\n" -"çözümlendi.\n" - -#: src/conflicts.c:398 -#, c-format -msgid "conflicts: %d shift/reduce, %d reduce/reduce\n" -msgstr "" - -#: src/conflicts.c:401 -#, fuzzy, c-format -msgid "conflicts: %d shift/reduce\n" -msgstr " %d öteleme/indirgeme" - -#: src/conflicts.c:403 -#, fuzzy, c-format -msgid "conflicts: %d reduce/reduce\n" -msgstr " %d indirgeme/indirgeme" - -#: src/conflicts.c:421 -#, fuzzy, c-format -msgid "State %d " -msgstr "durum %d" - -#: src/conflicts.c:498 -#, fuzzy, c-format -msgid "expected %d shift/reduce conflict" -msgid_plural "expected %d shift/reduce conflicts" -msgstr[0] "beklenen %d öteleme/indirgeme çeliþkisi\n" -msgstr[1] "beklenen %d öteleme/indirgeme çeliþkisi\n" - -#: src/conflicts.c:503 -#, fuzzy -msgid "expected 0 reduce/reduce conflicts" -msgstr "%d indirgeme/indirgeme çeliþkisi" - -#: src/files.c:99 -#, c-format -msgid "cannot open file `%s'" -msgstr "`%s' dosyasý açýlamadý" - -#: src/files.c:115 -#, fuzzy -msgid "I/O error" -msgstr "bir hata" - -#: src/files.c:118 -msgid "cannot close file" -msgstr "dosya kapatýlamýyor" - -#: src/files.c:336 -#, fuzzy, c-format -msgid "conflicting outputs to file %s" -msgstr "%s ve %s için çeliþen birleþmeli deðerler" - -#: src/getargs.c:186 -#, c-format -msgid "Try `%s --help' for more information.\n" -msgstr "Daha fazla bilgi için `%s --help' yazýn.\n" - -#: src/getargs.c:192 -msgid "GNU bison generates parsers for LALR(1) grammars.\n" -msgstr "GNU bison LALR(1) gramerler için ayrýþtýrýcýlar üretir.\n" - -#: src/getargs.c:196 -#, c-format -msgid "Usage: %s [OPTION]... FILE\n" -msgstr "Kullaným: %s [SEÇENEK]... DOSYA\n" - -#: src/getargs.c:200 -msgid "" -"If a long option shows an argument as mandatory, then it is mandatory\n" -"for the equivalent short option also. Similarly for optional arguments.\n" -msgstr "" -"Eðer bir uzun seçenek bir argümaný gerektirirse, bu gereklilik, denk olan " -"kýsa\n" -"seçenek için de geçerlidir. Bu durum, seçimli argümanlar için de " -"geçerlidir.\n" - -#: src/getargs.c:206 -msgid "" -"Operation modes:\n" -" -h, --help display this help and exit\n" -" -V, --version output version information and exit\n" -" -y, --yacc emulate POSIX yacc\n" -msgstr "" -"Çalýþma kipleri:\n" -" -h, --help bu yardýmý göster ve çýk\n" -" -V, --version sürüm bilgisini ver ve çýk\n" -" -y, --yacc POSIX yacc öykünmesi\n" - -#: src/getargs.c:213 -msgid "" -"Parser:\n" -" -S, --skeleton=FILE specify the skeleton to use\n" -" -t, --debug instrument the parser for debugging\n" -" --locations enable locations computation\n" -" -p, --name-prefix=PREFIX prepend PREFIX to the external symbols\n" -" -l, --no-lines don't generate `#line' directives\n" -" -n, --no-parser generate the tables only\n" -" -k, --token-table include a table of token names\n" -msgstr "" -"Ayrýþtýrýcý:\n" -" -S, --skeleton=FILE kullanýlacak iskeleti belirle\n" -" -t, --debug ayrýþtýrýcý için hata ayýklayýcý aracý\n" -" --locations konum hesaplamalarýný etkinleþtir\n" -" -p, --name-prefix=PREFIX dýþ simgelere hazýr bekletilen ÖNEK\n" -" -l, --no-lines `#line' bildirimlerini üretme\n" -" -n, --no-parser sadece tablolarý üret\n" -" -k, --token-table andaç isimlerinin bir tablosunu içer\n" - -#: src/getargs.c:225 -#, fuzzy -msgid "" -"Output:\n" -" -d, --defines also produce a header file\n" -" -r, --report=THINGS also produce details on the automaton\n" -" -v, --verbose same as `--report=state'\n" -" -b, --file-prefix=PREFIX specify a PREFIX for output files\n" -" -o, --output=FILE leave output to FILE\n" -" -g, --graph also produce a VCG description of the " -"automaton\n" -msgstr "" -"Çýktý:\n" -" -d, --defines bir baþlýk dosyasýda üretir\n" -" -v, --verbose otomatýn bir açýklamasýný da üretir\n" -" -b, --file-prefix=ÖNEK çýktý dosyalarý için bir önek belirtir\n" -" -o, --output=DOSYA çýktýyý dosyaya býrakýr\n" -" -g, --graph otomatýn bir VCG grafik açýklamasýný da üretir\n" - -#: src/getargs.c:236 -msgid "" -"THINGS is a list of comma separated words that can include:\n" -" `state' describe the states\n" -" `itemset' complete the core item sets with their closure\n" -" `lookahead' explicitly associate lookaheads to items\n" -" `solved' describe shift/reduce conflicts solving\n" -" `all' include all the above information\n" -" `none' disable the report\n" -msgstr "" - -#: src/getargs.c:247 -msgid "Report bugs to .\n" -msgstr "" -"Hatalarý 'a,\n" -"çeviri hatalarýný 'e bildir.\n" - -#: src/getargs.c:264 -#, c-format -msgid "bison (GNU Bison) %s" -msgstr "bison (GNU Bison) %s" - -#: src/getargs.c:266 -msgid "Written by Robert Corbett and Richard Stallman.\n" -msgstr "Yazanlar: Robert Corbett ve Richard Stallman.\n" - -#: src/getargs.c:270 -#, c-format -msgid "Copyright (C) %d Free Software Foundation, Inc.\n" -msgstr "Telif Hakký (C) %d Free Software Foundation, Inc.\n" - -#: src/getargs.c:272 -msgid "" -"This is free software; see the source for copying conditions. There is NO\n" -"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -msgstr "" -"Bu bir serbest yazýlýmdýr; kopyalama koþullarý için kaynak koduna bakýnýz.\n" -"Hiçbir garantisi yoktur; hatta SATILABÝLÝRLÝÐÝ veya ÞAHSÝ KULLANIMINIZA\n" -"UYGUNLUÐU için bile garanti verilmez.\n" - -#: src/getargs.c:438 -#, c-format -msgid "missing operand after `%s'" -msgstr "" - -#: src/getargs.c:440 -#, c-format -msgid "extra operand `%s'" -msgstr "" - -#: src/gram.c:139 -msgid "empty" -msgstr "boþ" - -#: src/gram.c:233 -msgid "Grammar" -msgstr "Gramer" - -#: src/gram.c:321 src/reduce.c:394 -#, fuzzy -msgid "warning" -msgstr "uyarý: " - -#: src/main.c:124 -msgid "rule never reduced because of conflicts" -msgstr "" - -#: src/parse-gram.y:353 -msgid "POSIX forbids declarations in the grammar" -msgstr "" - -#: src/parse-gram.y:476 -msgid "missing identifier in parameter declaration" -msgstr "" - -#: src/print.c:49 -#, c-format -msgid " type %d is %s\n" -msgstr " tip %d %s'dir\n" - -#: src/print.c:165 -#, fuzzy, c-format -msgid "shift, and go to state %d\n" -msgstr " %-4s\tötele, ve durum %d'ye git\n" - -#: src/print.c:167 -#, fuzzy, c-format -msgid "go to state %d\n" -msgstr " %-4s\tdurum %d'ye git\n" - -#: src/print.c:204 -#, fuzzy -msgid "error (nonassociative)\n" -msgstr "%-4s\thata (birleþmeli deðil)" - -#: src/print.c:292 -#, fuzzy, c-format -msgid "reduce using rule %d (%s)" -msgstr "$default\tindirgeme kural %d (%s)'i kullanýyor" - -#: src/print.c:294 -msgid "accept" -msgstr "" - -#: src/print.c:325 src/print.c:391 -msgid "$default" -msgstr "" - -#: src/print.c:420 -#, c-format -msgid "state %d" -msgstr "durum %d" - -#: src/print.c:456 -msgid "Terminals, with rules where they appear" -msgstr "Sabit simgeler, kurallarýnýn bulunduklarý yerde" - -#: src/print.c:483 -msgid "Nonterminals, with rules where they appear" -msgstr "Deðiþken simgeler, kurallarýnýn bulunduklarý yerde" - -#: src/print.c:512 -msgid " on left:" -msgstr " solda:" - -#: src/print.c:527 -msgid " on right:" -msgstr " saðda:" - -#: src/print.c:555 -#, fuzzy -msgid "Rules never reduced" -msgstr "%d kural asla indirgenmedi\n" - -#: src/reader.c:53 -#, c-format -msgid "multiple %s declarations" -msgstr "çoklu %s bildirimleri" - -#: src/reader.c:115 -#, c-format -msgid "result type clash on merge function %s: <%s> != <%s>" -msgstr "" - -#: src/reader.c:213 -#, c-format -msgid "rule given for %s, which is a token" -msgstr "bir andaç olan %s için verilen kural" - -#: src/reader.c:242 -#, fuzzy, c-format -msgid "type clash on default action: <%s> != <%s>" -msgstr "öntanýmlý eylem üzerinde (`%s' `%s') tip çatýþmasý" - -#: src/reader.c:248 -msgid "empty rule for typed nonterminal, and no action" -msgstr "" -"Tipli deðiþken simge için boþ kural tanýmlanmýþ, ve eylem belirtilmemiþ" - -#: src/reader.c:318 src/reader.c:332 src/reader.c:345 -#, c-format -msgid "only one %s allowed per rule" -msgstr "" - -#: src/reader.c:328 src/reader.c:343 -#, c-format -msgid "%s affects only GLR parsers" -msgstr "" - -#: src/reader.c:330 -#, c-format -msgid "%s must be followed by positive number" -msgstr "" - -#: src/reader.c:487 -msgid "no rules in the input grammar" -msgstr "girdi grameri içinde kurallar yok" - -#: src/reduce.c:242 -#, fuzzy -msgid "useless rule" -msgstr "%d yararsýz kural" - -#: src/reduce.c:303 -#, fuzzy, c-format -msgid "useless nonterminal: %s" -msgstr "Yararsýz deðiþken simgeler:" - -#: src/reduce.c:351 -#, fuzzy -msgid "Useless nonterminals" -msgstr "Yararsýz deðiþken simgeler:" - -#: src/reduce.c:364 -#, fuzzy -msgid "Terminals which are not used" -msgstr "Kullanýlmayan sabit simgeler:" - -#: src/reduce.c:373 -#, fuzzy -msgid "Useless rules" -msgstr "Yararsýz kurallar:" - -#: src/reduce.c:389 -#, c-format -msgid "%d rule never reduced\n" -msgid_plural "%d rules never reduced\n" -msgstr[0] "%d kural asla indirgenmedi\n" -msgstr[1] "%d kural asla indirgenmedi\n" - -#: src/reduce.c:397 -#, c-format -msgid "%d useless nonterminal" -msgid_plural "%d useless nonterminals" -msgstr[0] "%d yararsýz deðiþken simge" -msgstr[1] "%d yararsýz deðiþken simge" - -#: src/reduce.c:403 -msgid " and " -msgstr " ve " - -#: src/reduce.c:406 -#, c-format -msgid "%d useless rule" -msgid_plural "%d useless rules" -msgstr[0] "%d yararsýz kural" -msgstr[1] "%d yararsýz kural" - -#: src/reduce.c:436 -#, fuzzy, c-format -msgid "start symbol %s does not derive any sentence" -msgstr "Baþlangýç simgesi %s herhangi bir cümleden türemez" - -#: src/scan-gram.l:160 -msgid "stray `,' treated as white space" -msgstr "" - -#: src/scan-gram.l:221 -#, fuzzy, c-format -msgid "invalid directive: %s" -msgstr "geçersiz girdi: %s" - -#: src/scan-gram.l:241 src/scan-gram.l:804 src/scan-gram.l:873 -#, c-format -msgid "integer out of range: %s" -msgstr "" - -#: src/scan-gram.l:283 -#, fuzzy, c-format -msgid "invalid character: %s" -msgstr "bilinmeyen karakter: %s" - -#: src/scan-gram.l:412 src/scan-gram.l:422 src/scan-gram.l:441 -#, fuzzy, c-format -msgid "invalid escape sequence: %s" -msgstr "geçersiz deðer: %s%d" - -#: src/scan-gram.l:446 -#, fuzzy, c-format -msgid "unrecognized escape sequence: %s" -msgstr "tanýnmayan: %s" - -#: src/scan-gram.l:534 -#, c-format -msgid "missing `{' in `%s'" -msgstr "" - -#: src/scan-gram.l:774 -#, c-format -msgid "$$ of `%s' has no declared type" -msgstr "`%s''in $$'ý bildirilmiþ tip deðil" - -#: src/scan-gram.l:795 -#, c-format -msgid "$%d of `%s' has no declared type" -msgstr "`%2$s''in %1$d'i bildirilmiþ tip deðil" - -#: src/scan-gram.l:840 src/scan-gram.l:908 -#, fuzzy, c-format -msgid "invalid value: %s" -msgstr "geçersiz deðer: %s%d" - -#: src/scan-gram.l:996 -#, fuzzy, c-format -msgid "missing `%s' at end of file" -msgstr "dosyanýn sonunda sonlandýrýlmamýþ dizge" - -#: src/symlist.c:97 src/symlist.c:108 -msgid "invalid $ value" -msgstr "geçersiz $ deðeri" - -#: src/symtab.c:84 -#, c-format -msgid "type redeclaration for %s" -msgstr "%s için yeniden tip bildirimi" - -#: src/symtab.c:101 src/symtab.c:119 -#, fuzzy, c-format -msgid "%s redeclaration for %s" -msgstr "%s için yeniden tip bildirimi" - -#: src/symtab.c:138 -#, c-format -msgid "redefining precedence of %s" -msgstr "%s'in önceliði tekrar tanýmlandý" - -#: src/symtab.c:156 -#, c-format -msgid "symbol %s redefined" -msgstr "%s simgesi yeniden tanýmlandý" - -#: src/symtab.c:179 -#, fuzzy, c-format -msgid "redefining user token number of %s" -msgstr "%s'in önceliði tekrar tanýmlandý" - -#: src/symtab.c:206 -#, c-format -msgid "symbol %s is used, but is not defined as a token and has no rules" -msgstr "" -"simge %s kullanýldý, fakat bir andaç olarak tanýmlanmadý ve kurallarý yok" - -#: src/symtab.c:231 -#, c-format -msgid "symbol `%s' used more than once as a literal string" -msgstr "simge `%s' bir harfiyen uyumlu dizgi gibi birden fazla kullanýldý" - -#: src/symtab.c:234 -#, c-format -msgid "symbol `%s' given more than one literal string" -msgstr "simge `%s' bir harfiyen uyumlu dizgi gibi birden fazla verilmiþ" - -#: src/symtab.c:270 -#, c-format -msgid "conflicting precedences for %s and %s" -msgstr "%s ve %s için çeliþen öncelikler" - -#: src/symtab.c:282 -#, fuzzy, c-format -msgid "conflicting associativities for %s (%s) and %s (%s)" -msgstr "%s ve %s için çeliþen birleþmeli deðerler" - -#: src/symtab.c:367 -#, c-format -msgid "tokens %s and %s both assigned number %d" -msgstr "%s ve %s andaçlarýnýn her ikisi %d sayýsýna atandý" - -#: src/symtab.c:590 -#, c-format -msgid "the start symbol %s is undefined" -msgstr "baþlangýç simgesi %s tanýmlanmadý" - -#: src/symtab.c:594 -#, c-format -msgid "the start symbol %s is a token" -msgstr "baþlangýç simgesi %s bir andaçtýr" - -#: lib/argmatch.c:135 -#, fuzzy, c-format -msgid "invalid argument %s for %s" -msgstr "geçersiz deðer: %s%d" - -#: lib/argmatch.c:136 -#, c-format -msgid "ambiguous argument %s for %s" -msgstr "" - -#: lib/argmatch.c:155 -msgid "Valid arguments are:" -msgstr "" - -#: lib/bitset_stats.c:179 -#, c-format -msgid "%u bitset_allocs, %u freed (%.2f%%).\n" -msgstr "" - -#: lib/bitset_stats.c:182 -#, c-format -msgid "%u bitset_sets, %u cached (%.2f%%)\n" -msgstr "" - -#: lib/bitset_stats.c:185 -#, c-format -msgid "%u bitset_resets, %u cached (%.2f%%)\n" -msgstr "" - -#: lib/bitset_stats.c:188 -#, c-format -msgid "%u bitset_tests, %u cached (%.2f%%)\n" -msgstr "" - -#: lib/bitset_stats.c:192 -#, c-format -msgid "%u bitset_lists\n" -msgstr "" - -#: lib/bitset_stats.c:194 -msgid "count log histogram\n" -msgstr "" - -#: lib/bitset_stats.c:197 -msgid "size log histogram\n" -msgstr "" - -#: lib/bitset_stats.c:200 -msgid "density histogram\n" -msgstr "" - -#: lib/bitset_stats.c:214 -msgid "" -"Bitset statistics:\n" -"\n" -msgstr "" - -#: lib/bitset_stats.c:217 -#, c-format -msgid "Accumulated runs = %u\n" -msgstr "" - -#: lib/bitset_stats.c:261 lib/bitset_stats.c:266 -msgid "Could not read stats file." -msgstr "" - -#: lib/bitset_stats.c:263 -msgid "Bad stats file size.\n" -msgstr "" - -#: lib/bitset_stats.c:289 lib/bitset_stats.c:291 -msgid "Could not write stats file." -msgstr "" - -#: lib/bitset_stats.c:294 -msgid "Could not open stats file for writing." -msgstr "" - -#: lib/getopt.c:688 lib/getopt.c:700 -#, c-format -msgid "%s: option `%s' is ambiguous\n" -msgstr "%s: `%s' seçeneði belirsiz\n" - -#: lib/getopt.c:733 lib/getopt.c:737 -#, c-format -msgid "%s: option `--%s' doesn't allow an argument\n" -msgstr "%s: `--%s' seçeneði argümansýz kullanýlýr\n" - -#: lib/getopt.c:746 lib/getopt.c:751 -#, c-format -msgid "%s: option `%c%s' doesn't allow an argument\n" -msgstr "%s: seçenek `%c%s' argümansýz kullanýlýr\n" - -#: lib/getopt.c:787 lib/getopt.c:800 lib/getopt.c:1089 lib/getopt.c:1102 -#, c-format -msgid "%s: option `%s' requires an argument\n" -msgstr "%s: `%s' seçeneði bir argümanla kullanýlýr\n" - -#: lib/getopt.c:838 lib/getopt.c:841 -#, c-format -msgid "%s: unrecognized option `--%s'\n" -msgstr "%s: `--%s' seçeneði bilinmiyor\n" - -#: lib/getopt.c:849 lib/getopt.c:852 -#, c-format -msgid "%s: unrecognized option `%c%s'\n" -msgstr "%s: `%c%s' seçeneði bilinmiyor\n" - -#: lib/getopt.c:899 lib/getopt.c:902 -#, c-format -msgid "%s: illegal option -- %c\n" -msgstr "%s: kuraldýþý seçenek -- %c\n" - -#: lib/getopt.c:908 lib/getopt.c:911 -#, c-format -msgid "%s: invalid option -- %c\n" -msgstr "%s: geçersiz seçenek -- %c\n" - -#: lib/getopt.c:958 lib/getopt.c:969 lib/getopt.c:1155 lib/getopt.c:1168 -#, c-format -msgid "%s: option requires an argument -- %c\n" -msgstr "%s: seçenek bir argümanla kullanýlýr -- %c\n" - -#: lib/getopt.c:1021 lib/getopt.c:1032 -#, c-format -msgid "%s: option `-W %s' is ambiguous\n" -msgstr "%s: `-W %s' seçeneði belirsiz\n" - -#: lib/getopt.c:1056 lib/getopt.c:1068 -#, c-format -msgid "%s: option `-W %s' doesn't allow an argument\n" -msgstr "%s: `-W %s' seçeneði argümansýz kullanýlýr\n" - -#: lib/obstack.c:487 lib/obstack.c:490 lib/xmalloc.c:63 -msgid "memory exhausted" -msgstr "bellek tükendi" - -#: lib/quotearg.c:236 -msgid "`" -msgstr "`" - -#: lib/quotearg.c:237 -msgid "'" -msgstr "'" - -#: lib/subpipe.c:187 -#, c-format -msgid "subsidiary program `%s' could not be invoked" -msgstr "" - -#: lib/subpipe.c:189 -#, c-format -msgid "subsidiary program `%s' not found" -msgstr "" - -#: lib/subpipe.c:191 -#, c-format -msgid "subsidiary program `%s' failed" -msgstr "" - -#: lib/subpipe.c:192 -#, c-format -msgid "subsidiary program `%s' failed (exit status %d)" -msgstr "" - -#: lib/timevar.c:476 -msgid "" -"\n" -"Execution times (seconds)\n" -msgstr "" - -#: lib/timevar.c:526 -msgid " TOTAL :" -msgstr "" - -#: lib/timevar.c:562 -#, c-format -msgid "time in %s: %ld.%06ld (%ld%%)\n" -msgstr "" - -#~ msgid "too many states (max %d)" -#~ msgstr "çok fazla durum (en fazla %d)" - -#~ msgid "reduce" -#~ msgstr "indirgeme" - -#~ msgid "shift" -#~ msgstr "shift" - -#~ msgid "%d shift/reduce conflict" -#~ msgid_plural "%d shift/reduce conflicts" -#~ msgstr[0] "%d öteleme/indirgeme çeliþkisi" -#~ msgstr[1] "%d öteleme/indirgeme çeliþkisi" - -#~ msgid "and" -#~ msgstr "ve" - -#~ msgid "State %d contains " -#~ msgstr "%d durumu içerir" - -#~ msgid "conflicts: " -#~ msgstr "çeliþkiler: " - -#~ msgid "%s contains " -#~ msgstr "%s içerir" - -#~ msgid "`%s' is no longer supported" -#~ msgstr "`%s' artýk desteklenmeyecek" - -#~ msgid "%s: no grammar file given\n" -#~ msgstr "%s: gramer dosyasý verilmemiþ\n" - -#~ msgid "%s: extra arguments ignored after `%s'\n" -#~ msgstr "%s: '%s' den sonraki argümanlar yoksayýldý\n" - -#~ msgid "too many gotos (max %d)" -#~ msgstr "gotos çok fazla (en fazla %d)" - -#~ msgid "unexpected `/' found and ignored" -#~ msgstr "beklenmeyen `/' bulundu ve yoksayýldý" - -#~ msgid "unterminated comment" -#~ msgstr "sonlandýrýlmamýþ açýklama" - -#~ msgid "unexpected end of file" -#~ msgstr "beklenmeyen dosya sonu" - -#~ msgid "unescaped newline in constant" -#~ msgstr "sabit içinde kaçamayan yeni satýr" - -#~ msgid "octal value outside range 0...255: `\\%o'" -#~ msgstr "sekizli deðer 0...255'in dýþýnda: `\\%o'" - -#~ msgid "hexadecimal value above 255: `\\x%x'" -#~ msgstr "onaltýlýk deðer 255'in üstünde: `\\x%x'" - -#~ msgid "unknown escape sequence: `\\' followed by `%s'" -#~ msgstr "bilinmeyen kaçýþ sýrasý: `\\' `%s' tarafýndan takip edildi" - -#~ msgid "unterminated type name at end of file" -#~ msgstr "dosya sonunda sonlandýrýlmamýþ tip adý" - -#~ msgid "unterminated type name" -#~ msgstr "sonlandýrýlmamýþ tip ismi" - -#~ msgid "use \"...\" for multi-character literal tokens" -#~ msgstr "çok-karakterli yazýn andaçlarý için \"...\" kullan" - -#~ msgid "`%s' supports no argument: %s" -#~ msgstr "`%s' argüman %s'i desteklemez" - -#~ msgid "`%s' requires an argument" -#~ msgstr "`%s' bir argüman gerektirir" - -#~ msgid " (rule %d)" -#~ msgstr " (kural %d)" - -#~ msgid " %-4s\terror (nonassociative)\n" -#~ msgstr " %-4s\thata (birleþmeli deðil)\n" - -#~ msgid "" -#~ " $default\treduce using rule %d (%s)\n" -#~ "\n" -#~ msgstr "" -#~ " $default\tindirgeme kural %d (%s)'i kullanýyor\n" -#~ "\n" - -#~ msgid " %-4s\t[reduce using rule %d (%s)]\n" -#~ msgstr " %-4s\t[indirgeme kural %d (%s)'i kullanýyor]\n" - -#~ msgid " %-4s\treduce using rule %d (%s)\n" -#~ msgstr " %-4s\tindirgeme kural %d (%s)'i kullanýyor\n" - -#~ msgid " $default\treduce using rule %d (%s)\n" -#~ msgstr " $default\tindirgeme kural %d (%s)'i kullanýyor\n" - -#~ msgid " $default\taccept\n" -#~ msgstr " $default\tonayla\n" - -#~ msgid " NO ACTIONS\n" -#~ msgstr " EYLEM YOK\n" - -#~ msgid "Number, Line, Rule" -#~ msgstr "Sayý, Satýr, Kural" - -#~ msgid " %3d %3d %s ->" -#~ msgstr " %3d %3d %s ->" - -#~ msgid " Skipping to next \\n" -#~ msgstr " Sonrakine atlanýyor \\n" - -#~ msgid " Skipping to next %c" -#~ msgstr " Sonraki %c'ye atlanýyor" - -#~ msgid "unterminated string" -#~ msgstr "sonlandýrýlmamýþ dizge" - -#~ msgid "%s is invalid" -#~ msgstr "%s geçersizdir" - -#~ msgid "unterminated `%{' definition" -#~ msgstr "`%{' tanýmlamasý sonlandýrýlmamýþ" - -#~ msgid "Premature EOF after %s" -#~ msgstr "%s'den sonra erken EOF" - -#~ msgid "`%s' is invalid in %s" -#~ msgstr "`%s' %s içinde geçersizdir" - -#~ msgid "invalid %s declaration" -#~ msgstr "geçersiz %s bildirimi" - -#~ msgid "%type declaration has no " -#~ msgstr "%type bildirimi 'na sahip deðil" - -#~ msgid "invalid %%type declaration due to item: %s" -#~ msgstr "geçersiz %%type bildirimine neden olan öðe: `%s'" - -#~ msgid "invalid text (%s) - number should be after identifier" -#~ msgstr "geçersiz metin (%s) - sayý tanýtýcýdan sonra olmalýdýr" - -#~ msgid "unexpected item: %s" -#~ msgstr "beklenmeyen öðe: %s" - -#~ msgid "unmatched %s" -#~ msgstr "eþlenemeyen %s" - -#~ msgid "argument of %%expect is not an integer" -#~ msgstr "%%expect'in argümaný bir tamsayý deðildir" - -#~ msgid "unrecognized item %s, expected an identifier" -#~ msgstr "%s öðesi tanýnmadý, beklenen bir tanýtýcýdýr" - -#~ msgid "expected string constant instead of %s" -#~ msgstr "%s'in yerine sabit dizge beklendi" - -#~ msgid "no input grammar" -#~ msgstr "girdi grameri yok" - -#~ msgid "ill-formed rule: initial symbol not followed by colon" -#~ msgstr "kötü-biçemli kural: baþlangýç simgesini takip eden \":\" yok" - -#~ msgid "grammar starts with vertical bar" -#~ msgstr "gramer düþey çubuk ile baþlýyor" - -#~ msgid "previous rule lacks an ending `;'" -#~ msgstr "önceki kuralda bir bitiþ `;' eksik" - -#~ msgid "two @prec's in a row" -#~ msgstr "bir satýrda iki @prec" - -#~ msgid "%%guard present but %%semantic_parser not specified" -#~ msgstr "%%guard sunulmuþ fakat %%semantic_parser belirlenmemiþ" - -#~ msgid "two actions at end of one rule" -#~ msgstr "bir kuralýn sonunda iki eylem" - -#~ msgid "too many symbols (tokens plus nonterminals); maximum %d" -#~ msgstr "çok fazla simge var (andaçlar ve deðiþken simgeler); en fazla %d" - -#~ msgid "maximum table size (%d) exceeded" -#~ msgstr "en büyük tablo uzunluðu (%d) aþýldý" - -#~ msgid " $ \tgo to state %d\n" -#~ msgstr " $ \tdurum %d'ye git\n" - -#~ msgid "unterminated %guard clause" -#~ msgstr "sonlandýrýlmamýþ %guard yantümcesi" diff --git a/src/.cvsignore b/src/.cvsignore index a367ea1f..6c40d894 100644 --- a/src/.cvsignore +++ b/src/.cvsignore @@ -1,10 +1,9 @@ -*_.c +*.flc +*.log .deps Makefile -bison -*.log -*.flc Makefile.in +bison scan-gram.c scan-skel.c yacc diff --git a/src/files.c b/src/files.c index 6c222a87..32a3e729 100644 --- a/src/files.c +++ b/src/files.c @@ -1,6 +1,6 @@ /* Open and close files for Bison. - Copyright (C) 1984, 1986, 1989, 1992, 2000, 2001, 2002, 2003 + Copyright (C) 1984, 1986, 1989, 1992, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. This file is part of Bison, the GNU Compiler Compiler. @@ -26,6 +26,7 @@ #include #include #include +#include #include "complain.h" #include "files.h" diff --git a/src/system.h b/src/system.h index d0a634dc..62640c5c 100644 --- a/src/system.h +++ b/src/system.h @@ -55,29 +55,15 @@ typedef size_t uintptr_t; #include #define CALLOC(P, N) ((P) = xcalloc (N, sizeof *(P))) -#define MALLOC(P, N) ((P) = xmalloc ((N) * sizeof *(P))) -#define REALLOC(P, N) ((P) = xrealloc (P, (N) * sizeof *(P))) - -/* From xstrndup.c. */ -char *xstrndup (const char *str, size_t size); +#define MALLOC(P, N) ((P) = xnmalloc (N, sizeof *(P))) +#define REALLOC(P, N) ((P) = xnrealloc (P, N, sizeof *(P))) /*---------------------. | Missing prototypes. | `---------------------*/ -#if defined HAVE_DECL_STPCPY && !HAVE_DECL_STPCPY -char *stpcpy (char *dest, const char *src); -#endif - -#if defined HAVE_DECL_STRNLEN && !HAVE_DECL_STRNLEN -size_t strnlen (const char *str, size_t maxlen); -#endif - -#if defined HAVE_DECL_MEMRCHR && !HAVE_DECL_MEMRCHR -void *memrchr (const void *str, int ch, size_t size); -#endif - +#include /*-----------------. -- 2.45.2