# Missatges en català per a GNU Bison.
# Copyright (C) 2017 Free Software Foundation, Inc.
# This file is distributed under the same license as the bison package.
# Walter Garcia-Fontes <walter.garcia@upf.edu>, 2017
#
msgid ""
msgstr ""
"Project-Id-Version: bison 3.0.4\n"
"Report-Msgid-Bugs-To: bug-bison@gnu.org\n"
"POT-Creation-Date: 2019-12-11 07:43+0100\n"
"PO-Revision-Date: 2017-02-26 20:29+0100\n"
"Last-Translator: Walter Garcia-Fontes <walter.garcia@upf.edu>\n"
"Language-Team: Catalan <ca@dodds.net>\n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Bugs: Report translation errors to the Language-Team address.\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"

#: src/complain.c:114
msgid "S/R conflicts (enabled by default)"
msgstr ""

#: src/complain.c:115
msgid "R/R conflicts (enabled by default)"
msgstr ""

#: src/complain.c:116
msgid "string aliases not attached to a symbol"
msgstr ""

#: src/complain.c:117
msgid "obsolete constructs"
msgstr ""

#: src/complain.c:118
#, fuzzy, c-format
msgid "empty rules without %empty"
msgstr "regla buida sense %%empty"

#: src/complain.c:119
msgid "unset or unused midrule values"
msgstr ""

#: src/complain.c:120
#, fuzzy
msgid "useless precedence and associativity"
msgstr "precedència i associativitat inútils per a %s"

#: src/complain.c:121
msgid "incompatibilities with POSIX Yacc"
msgstr ""

#: src/complain.c:122
msgid "all other warnings (enabled by default)"
msgstr ""

#: src/complain.c:123
msgid "all the warnings except 'dangling-alias' and 'yacc'"
msgstr ""

#: src/complain.c:124
msgid "turn off warnings in CATEGORY"
msgstr ""

#: src/complain.c:125
msgid "turn off all the warnings"
msgstr ""

#: src/complain.c:126
msgid "treat warnings as errors"
msgstr ""

#: src/complain.c:151
msgid "Warning categories include:"
msgstr ""

#: src/complain.c:256
msgid "warning"
msgstr "advertiment"

#: src/complain.c:258
msgid "error"
msgstr "error"

#: src/complain.c:260
msgid "fatal error"
msgstr "error fatal"

#: src/complain.c:547
#, c-format
msgid "POSIX Yacc does not support %s"
msgstr ""

#: src/complain.c:556
#, c-format
msgid "deprecated directive: %s, use %s"
msgstr "directiva obsoleta: %s, useu %s"

#: src/complain.c:571
#, fuzzy, c-format
msgid "duplicate directive"
msgstr "directiva obsoleta, useu %s"

#: src/complain.c:573
#, fuzzy, c-format
msgid "duplicate directive: %s"
msgstr "directiva obsoleta, useu %s"

#: src/complain.c:575 src/complain.c:588 src/reader.c:136 src/symtab.c:303
#: src/symtab.c:316 src/symtab.c:553
#, c-format
msgid "previous declaration"
msgstr "declaració prèvia"

#: src/complain.c:585
#, c-format
msgid "only one %s allowed per rule"
msgstr "sols es permet una %s per regla"

#: src/conflicts.c:81
#, fuzzy, c-format
msgid "Conflict between rule %d and token %s resolved as shift"
msgstr ""
"    Conflicte entre la regla %d i el testimoni %s resolt com a desplaçament"

#: src/conflicts.c:91
#, fuzzy, c-format
msgid "Conflict between rule %d and token %s resolved as reduce"
msgstr ""
"    Conflicte entre la regla %d i el testimoni %s resolt com a reducció"

#: src/conflicts.c:100
#, fuzzy, c-format
msgid "Conflict between rule %d and token %s resolved as an error"
msgstr "    Conflicte entre la regla %d i el testimoni %s resolt com un error"

#: src/conflicts.c:602
#, c-format
msgid "State %d "
msgstr "Estat %d"

#: src/conflicts.c:605
#, c-format
msgid "conflicts: %d shift/reduce, %d reduce/reduce\n"
msgstr "conflictes: %d shift/reduce, %d reduce/reduce\n"

#: src/conflicts.c:608
#, c-format
msgid "conflicts: %d shift/reduce\n"
msgstr "conflictes: %d shift/reduce\n"

#: src/conflicts.c:610
#, c-format
msgid "conflicts: %d reduce/reduce\n"
msgstr "conflictes: %d reduce/reduce\n"

#: src/conflicts.c:645
#, fuzzy, c-format
msgid "shift/reduce conflicts for rule %d: %d found, %d expected"
msgstr "conflictes shift/reduce: %d trobats, %d esperats"

#: src/conflicts.c:651
#, fuzzy, c-format
msgid "reduce/reduce conflicts for rule %d: %d found, %d expected"
msgstr "conflictes reduce/reduce: %d trobats, %d esperats"

#: src/conflicts.c:669
#, c-format
msgid "%%expect-rr applies only to GLR parsers"
msgstr "%%expect-rr s'aplica sols a analitzadors GLR"

#: src/conflicts.c:686
#, c-format
msgid "shift/reduce conflicts: %d found, %d expected"
msgstr "conflictes shift/reduce: %d trobats, %d esperats"

#: src/conflicts.c:691
#, c-format
msgid "%d shift/reduce conflict"
msgid_plural "%d shift/reduce conflicts"
msgstr[0] "%d conflicte shift/reduce"
msgstr[1] "%d conflictes shift/reduce"

#: src/conflicts.c:708
#, c-format
msgid "reduce/reduce conflicts: %d found, %d expected"
msgstr "conflictes reduce/reduce: %d trobats, %d esperats"

#: src/conflicts.c:713
#, c-format
msgid "%d reduce/reduce conflict"
msgid_plural "%d reduce/reduce conflicts"
msgstr[0] "%d conflicte reduce/reduce"
msgstr[1] "%d conflictes reduce/reduce"

#: src/files.c:124
#, c-format
msgid "%s: cannot open"
msgstr "%s: no es pot obrir"

#: src/files.c:140
#, c-format
msgid "input/output error"
msgstr "error d'entrada/sortida"

#: src/files.c:143
#, c-format
msgid "cannot close file"
msgstr "no es pot tancar el fitxer"

#: src/files.c:374
#, c-format
msgid "refusing to overwrite the input file %s"
msgstr "no se sobreescriurà el fitxer d'entrada %s"

#: src/files.c:382
#, c-format
msgid "conflicting outputs to file %s"
msgstr "sortides conflictives cap al fitxer %s"

#: src/fixits.c:122
#, fuzzy, c-format
msgid "%s: cannot backup"
msgstr "%s: no es pot obrir"

#: src/getargs.c:173
msgid "colorize the output"
msgstr ""

#: src/getargs.c:174
msgid "don't colorize the output"
msgstr ""

#: src/getargs.c:175
msgid "colorize if the output device is a tty"
msgstr ""

#. TRANSLATORS: Use the same translation for WHEN as in the
#. --color=WHEN help message.
#: src/getargs.c:196
msgid "WHEN can be one of the following:"
msgstr ""

#: src/getargs.c:209
msgid "describe the states"
msgstr ""

#: src/getargs.c:210
msgid "complete the core item sets with their closure"
msgstr ""

#: src/getargs.c:211
msgid "explicitly associate lookahead tokens to items"
msgstr ""

#: src/getargs.c:212
#, fuzzy
msgid "describe shift/reduce conflicts solving"
msgstr "%d conflicte shift/reduce"

#: src/getargs.c:213
msgid "include all the above information"
msgstr ""

#: src/getargs.c:214
msgid "disable the report"
msgstr ""

#. TRANSLATORS: Use the same translation for THINGS as in the
#. --report=THINGS help message.
#: src/getargs.c:235
msgid "THINGS is a list of comma separated words that can include:"
msgstr ""

#: src/getargs.c:294
msgid "TRACES is a list of comma separated words that can include:"
msgstr ""

#: src/getargs.c:306
msgid "show errors with carets"
msgstr ""

#: src/getargs.c:307
msgid "show machine-readable fixes"
msgstr ""

#: src/getargs.c:308
msgid "do not generate any file"
msgstr ""

#: src/getargs.c:309
msgid "all of the above"
msgstr ""

#: src/getargs.c:310
msgid "disable all of the above"
msgstr ""

#. TRANSLATORS: Use the same translation for FEATURES as in the
#. --feature=FEATURES help message.
#: src/getargs.c:332
msgid "FEATURES is a list of comma separated words that can include:"
msgstr ""

#: src/getargs.c:346
#, c-format
msgid "Try '%s --help' for more information.\n"
msgstr "Proveu «%s --help» per a més informació.\n"

#: src/getargs.c:355
#, c-format
msgid "Usage: %s [OPTION]... FILE\n"
msgstr "Ús: %s [OPCIÓ].. FITXER\n"

#: src/getargs.c:356
#, fuzzy
msgid ""
"Generate a deterministic LR or generalized LR (GLR) parser employing\n"
"LALR(1), IELR(1), or canonical LR(1) parser tables.\n"
"\n"
msgstr ""
"Genera un analitzador LR determinístic o un LR (GLR) generalitzat usant "
"taules d'analitzador LALR(1), IELR(1) o LR(1) canònic. El suport per a "
"IELR(1) i LR(1) canònic és experimental.\n"

#: src/getargs.c:362
msgid ""
"Mandatory arguments to long options are mandatory for short options too.\n"
msgstr ""
"El arguments obligatoris per a opcions llargues són obligatoris també per a "
"opcions curtes.\n"

#: src/getargs.c:365
msgid "The same is true for optional arguments.\n"
msgstr "El mateix és veritat per a arguments opcionals.\n"

#: src/getargs.c:370
#, fuzzy
msgid ""
"Operation Modes:\n"
"  -h, --help                 display this help and exit\n"
"  -V, --version              output version information and exit\n"
"      --print-localedir      output directory containing locale-dependent "
"data\n"
"                             and exit\n"
"      --print-datadir        output directory containing skeletons and XSLT\n"
"                             and exit\n"
"  -u, --update               apply fixes to the source grammar file and "
"exit\n"
"  -f, --feature[=FEATURES]   activate miscellaneous features\n"
"\n"
msgstr ""
"\n"
"Modes d'operació:\n"
"  -h, --help                 mostra aquesta ajuda i surt\n"
"  -V, --version              mostra la informació de versió i surt\n"
"      --print-localedir      mostra el directori contenint les dades "
"depenents de la configuració regional\n"
"      --print-datadir        mostra el directori contenint esquelets i XSLT\n"
"  -y, --yacc                 emula POSIX Yacc\n"
"  -W, --warnings[=CATEGORIA] informa dels advertiments classificats a "
"CATEGORIA\n"
"report the warnings falling in CATEGORY\n"
"  -f, --feature[=CARACTERISTICA] activa característiques miscel·lànies\n"
"\n"

#: src/getargs.c:386
msgid ""
"Diagnostics:\n"
"  -W, --warnings[=CATEGORY]  report the warnings falling in CATEGORY\n"
"      --color[=WHEN]         whether to colorize the diagnostics\n"
"      --style=FILE           specify the CSS FILE for colorizer diagnostics\n"
"\n"
msgstr ""

#: src/getargs.c:400
#, fuzzy, c-format
msgid ""
"Tuning the Parser:\n"
"  -L, --language=LANGUAGE          specify the output programming language\n"
"  -S, --skeleton=FILE              specify the skeleton to use\n"
"  -t, --debug                      instrument the parser for tracing\n"
"                                   same as '-Dparse.trace'\n"
"      --locations                  enable location support\n"
"  -D, --define=NAME[=VALUE]        similar to '%define NAME VALUE'\n"
"  -F, --force-define=NAME[=VALUE]  override '%define NAME VALUE'\n"
"  -p, --name-prefix=PREFIX         prepend PREFIX to the external symbols\n"
"                                   deprecated by '-Dapi.prefix={PREFIX}'\n"
"  -l, --no-lines                   don't generate '#line' directives\n"
"  -k, --token-table                include a table of token names\n"
"  -y, --yacc                       emulate POSIX Yacc\n"
msgstr ""
"Analitzador:\n"
"  -L, --language=LLENGUATGE        especifica el llenguatge de programació "
"de la sortida   \n"
"  -S, --skeleton=FITXER            especifica l'esquelet a usar\n"
"  -t, --debug                      instrumenta l'analitzador per al "
"seguiment\n"
"                                   el mateix que '-Dparse.trace'\n"
"      --locations                  habilita el suport per a ubicacions\n"
"  -D, --define=NOM[=VALOR]         semblant a '%define NOM «VALOR»'\n"
"  -F, --force-define=NOM[=VALOR]   anul·la '%define NOM «VALOR»'\n"
"  -p, --name-prefix=PREFIX         anteposa PREFIX als símbols externs\n"
"                                   obsolet per '-Dapi.prefix=PREFIX'\n"
"  -l, --no-lines                   no generis directives «#line»\n"
"  -k, --token-table                inclou una taula amb els noms dels "
"testimonis\n"
"\n"

#: src/getargs.c:419
#, fuzzy
msgid ""
"Output Files:\n"
"      --defines[=FILE]       also produce a header file\n"
"  -d                         likewise but cannot specify FILE (for POSIX "
"Yacc)\n"
"  -r, --report=THINGS        also produce details on the automaton\n"
"      --report-file=FILE     write report to FILE\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[=FILE]         also output a graph of the automaton\n"
"  -x, --xml[=FILE]           also output an XML report of the automaton\n"
msgstr ""
"Sortida:\n"
"      --defines[=FITXER]     produeix també un fitxer de capçalera\n"
"  -d                         semblant però no es pot especificar FITXER (per "
"a POSIX Yacc)\n"
"  -r, --report=COSES         produeix també detalls sobre l'automaton\n"
"      --report-file=FITXER   escriu l'informe a FITXER\n"
"  -v, --verbose              igual que «--report=state»\n"
"  -b, --file-prefix=PREFIX   especifica un PREFIX per a fitxers de sortida\n"
"  -o, --output=FITXER        deixa la sortida a FITXER\n"
"  -g, --graph[=FITXER]       també treu una gràfica a l'automaton\n"
"  -x, --xml[=FITXER]         treu també un informe XML de l'automaton\n"
"                             (l'esquema XML és experimental)\n"

#: src/getargs.c:436
#, c-format
msgid "Report bugs to <%s>.\n"
msgstr "Informa dels errors a <%s>.\n"

#: src/getargs.c:437
#, c-format
msgid "%s home page: <%s>.\n"
msgstr "%s pàgina web: <%s>.\n"

#: src/getargs.c:438
msgid "General help using GNU software: <http://www.gnu.org/gethelp/>.\n"
msgstr ""
"Ajuda general per usar el programari GNU:  <http://www.gnu.org/gethelp/>.\n"

#. TRANSLATORS: Replace LANG_CODE in this URL with your language
#. code <http://translationproject.org/team/LANG_CODE.html> to
#. form one of the URLs at http://translationproject.org/team/.
#. Otherwise, replace the entire URL with your translation team's
#. email address.
#: src/getargs.c:453
msgid "Report translation bugs to <http://translationproject.org/team/>.\n"
msgstr ""
"Informa dels errors de traducció a <http://translationproject.org/team/ca."
"html>.\n"

#: src/getargs.c:456
msgid "For complete documentation, run: info bison.\n"
msgstr "Per a la documentació completa, executeu: info bison.\n"

#: src/getargs.c:472
#, c-format
msgid "bison (GNU Bison) %s"
msgstr "bison (GNU Bison) %s"

#: src/getargs.c:474
msgid "Written by Robert Corbett and Richard Stallman.\n"
msgstr "Escrit per Robert Corbett i Richard Stallman.\n"

#: src/getargs.c:478
#, c-format
msgid "Copyright (C) %d Free Software Foundation, Inc.\n"
msgstr "Copyright (C) %d Free Software Foundation, Inc.\n"

#: src/getargs.c:481
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 ""
"Això és programari lliure; vegeu la font per a les condicions de còpia. NO\n"
"hi ha cap garantia; ni tan sols de COMERCIABILITAT o ADEQUACIÓ A UN PROPÒSIT "
"PARTICULAR.\n"

#: src/getargs.c:503
#, c-format
msgid "multiple skeleton declarations are invalid"
msgstr "les declaracions múltiples d'esquelet no són vàlides"

#: src/getargs.c:520
#, c-format
msgid "%s: invalid language"
msgstr "%s: llenguatge no vàlid"

#: src/getargs.c:523
msgid "multiple language declarations are invalid"
msgstr "les declaracions múltiples de llenguatge no són válides"

#: src/getargs.c:816
#, fuzzy, c-format
msgid "deprecated option: %s, use %s"
msgstr "directiva obsoleta: %s, useu %s"

#: src/getargs.c:850
#, fuzzy, c-format
msgid "missing operand"
msgstr "%s: manca un operand"

#: src/getargs.c:852
#, c-format
msgid "extra operand %s"
msgstr "operand extra %s"

#: src/gram.c:218
msgid "Grammar"
msgstr "Gramàtica"

#: src/graphviz.c:46
#, c-format
msgid ""
"// Generated by %s.\n"
"// Report bugs to <%s>.\n"
"// Home page: <%s>.\n"
"\n"
msgstr ""
"// Generat per %s.\n"
"// Informeu els errors a <%s>.\n"
"// Pàgina web: <%s>.\n"
"\n"

#: src/location.c:150 src/scan-gram.l:909
#, c-format
msgid "line number overflow"
msgstr "desbordament del número de línia"

#: src/location.c:152
#, c-format
msgid "column number overflow"
msgstr "desbordament del número de columna"

#: src/location.c:155
#, fuzzy, c-format
msgid "byte number overflow"
msgstr "desbordament del número de línia"

#. TRANSLATORS: This is used when a line is too long, and is
#. displayed truncated.  Use an ellipsis appropriate for your
#. language, remembering that "…" (U+2026 HORIZONTAL ELLIPSIS)
#. sometimes misdisplays and that "..." (three ASCII periods) is a
#. safer choice in some locales.
#: src/location.c:250
msgid "..."
msgstr ""

#: src/main.c:155
msgid "rule useless in parser due to conflicts"
msgstr "la regla és inútil a l'analitzador a causa de conflictes"

#: src/main.c:245
#, c-format
msgid "fix-its can be applied.  Rerun with option '--update'."
msgstr ""

#: src/muscle-tab.c:532
#, c-format
msgid "%%define variable %s redefined"
msgstr "variable %%define %s redefinida"

#: src/muscle-tab.c:536 src/symtab.c:331
#, c-format
msgid "previous definition"
msgstr "definició prèvia"

#: src/muscle-tab.c:595 src/muscle-tab.c:696 src/muscle-tab.c:757
#, c-format
msgid "%s: undefined %%define variable %s"
msgstr "%s: variable %%define no definida %s"

#: src/muscle-tab.c:629
#, fuzzy, c-format
msgid "%%define variable '%s' requires '{...}' values"
msgstr "variable %%define %s redefinida"

#: src/muscle-tab.c:634
#, fuzzy, c-format
msgid "%%define variable '%s' requires keyword values"
msgstr "variable %%define %s redefinida"

#: src/muscle-tab.c:639
#, fuzzy, c-format
msgid "%%define variable '%s' requires '\"...\"' values"
msgstr "variable %%define %s redefinida"

#: src/muscle-tab.c:690
#, c-format
msgid "invalid value for %%define Boolean variable %s"
msgstr "valor no vàlid per a la variable booleana %s"

#: src/muscle-tab.c:744
#, c-format
msgid "invalid value for %%define variable %s: %s"
msgstr "valor no vàlid per a la variable %%define %s: %s"

#: src/muscle-tab.c:749
#, c-format
msgid "accepted value: %s"
msgstr "valor acceptat: %s"

#: src/parse-gram.y:746
#, c-format
msgid "character literals cannot be nonterminals"
msgstr ""

#: src/parse-gram.y:753
#, c-format
msgid "character literals cannot be used together with %s"
msgstr ""

#: src/parse-gram.y:758
#, fuzzy, c-format
msgid "definition of %s"
msgstr "s'està redefinint el número de testimoni d'usuari per a %s"

#: src/parse-gram.y:889
#, c-format
msgid "missing identifier in parameter declaration"
msgstr "manca l'identificador a la declaració del paràmetre"

#: src/parse-gram.y:1018
#, fuzzy, c-format
msgid "invalid version requirement: %s"
msgstr "referència no vàlida: %s"

#: src/parse-gram.y:1032
#, c-format
msgid "require bison %s, but have %s"
msgstr ""

#: src/print-graph.c:62 src/print.c:345
#, c-format
msgid "State %d"
msgstr "Estat %d"

#: src/print.c:136
#, c-format
msgid "shift, and go to state %d\n"
msgstr "fes un shift, i ves a l'estat %d\n"

#: src/print.c:138
#, c-format
msgid "go to state %d\n"
msgstr "ves a l'estat %d\n"

#: src/print.c:173
msgid "error (nonassociative)\n"
msgstr "error (no-associatiu)\n"

#: src/print.c:195
#, c-format
msgid "reduce using rule %d (%s)"
msgstr "redueix usant la regla %d (%s)"

#: src/print.c:198
#, c-format
msgid "accept"
msgstr "accepta"

#: src/print.c:235 src/print.c:309
msgid "$default"
msgstr "$default"

#: src/print.c:364
msgid "Terminals, with rules where they appear"
msgstr "Terminals, amb regles on apareixen"

#: src/print.c:391
msgid "Nonterminals, with rules where they appear"
msgstr "No-terminals, amb regles on apareixen"

#: src/print.c:416
#, fuzzy
msgid "on left:"
msgstr " a l'esquerra:"

#: src/print.c:425
#, fuzzy
msgid "on right:"
msgstr " a la dreta:"

#: src/print.c:447
msgid "Rules useless in parser due to conflicts"
msgstr "Les regles són inútils a l'analitzador a causa de conflictes"

#: src/reader.c:60
#, c-format
msgid "multiple %s declarations"
msgstr "declaracions %s múltiples"

#: src/reader.c:129
#, c-format
msgid "result type clash on merge function %s: <%s> != <%s>"
msgstr "col·lisió de tipus de resultat a la funció merge %s: <%s> != <%s>"

#: src/reader.c:202
#, c-format
msgid "duplicated symbol name for %s ignored"
msgstr "nom de símbol duplicat per a %s ignorat"

#: src/reader.c:238
#, c-format
msgid "rule given for %s, which is a token"
msgstr "regla donada per a %s, que és un testimoni"

#: src/reader.c:295
#, c-format
msgid "type clash on default action: <%s> != <%s>"
msgstr "col·lisió de tipus a l'acció predeterminada: <%s> != <%s>"

#: src/reader.c:318
#, c-format
msgid "empty rule for typed nonterminal, and no action"
msgstr "regla buida per a la no-terminal entrada, i cap acció"

#: src/reader.c:334
#, c-format
msgid "unused value: $%d"
msgstr "valor sense usar: $%d"

#: src/reader.c:336
#, c-format
msgid "unset value: $$"
msgstr "valor no establert: $$"

#: src/reader.c:346
#, c-format
msgid "%%empty on non-empty rule"
msgstr "%%empty a regla no buida"

#: src/reader.c:356
#, c-format
msgid "empty rule without %%empty"
msgstr "regla buida sense %%empty"

#: src/reader.c:372
#, c-format
msgid "token for %%prec is not defined: %s"
msgstr "no està definit el testimoni per a %%prec: %s"

#: src/reader.c:377
#, c-format
msgid "only midrule actions can be typed: %s"
msgstr ""

#: src/reader.c:504 src/reader.c:526 src/reader.c:597
#, c-format
msgid "%s affects only GLR parsers"
msgstr "%s afecta sols ela analitzadors GLR"

#: src/reader.c:507
#, c-format
msgid "%s must be followed by positive number"
msgstr "%s ha d'estar seguit per un nombre positiu"

#: src/reader.c:562
#, c-format
msgid "POSIX Yacc does not support typed midrule actions"
msgstr ""

#: src/reader.c:666
#, c-format
msgid "rule is too long"
msgstr "la regla és massa llarga"

#: src/reader.c:779
#, c-format
msgid "no rules in the input grammar"
msgstr "no hi ea regles a la gramàtica d'entrada"

#: src/reduce.c:225
msgid "rule useless in grammar"
msgstr "la regla no és útil a la gramàtica"

#: src/reduce.c:280
#, c-format
msgid "nonterminal useless in grammar: %s"
msgstr "la no-terminal no és útil a la gramàtica: %s"

#: src/reduce.c:321
msgid "Nonterminals useless in grammar"
msgstr "Les no-terminals no són útils a la gramàtica"

#: src/reduce.c:333
msgid "Terminals unused in grammar"
msgstr "Hi ha terminal sense usar a la gramàtica"

#: src/reduce.c:342
msgid "Rules useless in grammar"
msgstr "Les regles són inútils a la gramàtica"

#: src/reduce.c:355
#, c-format
msgid "%d nonterminal useless in grammar"
msgid_plural "%d nonterminals useless in grammar"
msgstr[0] "%d no-terminal no útil a la gramàtica"
msgstr[1] "%d no-terminals no útils a la gramàtica"

#: src/reduce.c:360
#, c-format
msgid "%d rule useless in grammar"
msgid_plural "%d rules useless in grammar"
msgstr[0] "%d regla no útil a la gramàtica"
msgstr[1] "%d no regles no útils a la gramàtica"

#: src/reduce.c:386
#, c-format
msgid "start symbol %s does not derive any sentence"
msgstr "el símbol d'entrada %s no deriva cap oració"

#: src/scan-code.l:158
#, c-format
msgid "stray '%s'"
msgstr "«%s» extraviat"

#: src/scan-code.l:330
#, c-format
msgid "refers to: %c%s at %s"
msgstr "refereix a: %c%s a %s"

#: src/scan-code.l:354
#, c-format
msgid "possibly meant: %c"
msgstr "possiblement significava: %c"

#: src/scan-code.l:363
#, c-format
msgid ", hiding %c"
msgstr ", amagant %c"

#: src/scan-code.l:371
#, c-format
msgid " at %s"
msgstr " a %s"

#: src/scan-code.l:375
#, fuzzy, c-format
msgid ", cannot be accessed from midrule action at $%d"
msgstr ", no es pot accedir des de l'acció de regla intermèdia a $%d"

#: src/scan-code.l:423 src/scan-gram.l:831
#, c-format
msgid "integer out of range: %s"
msgstr "l'enter està fora de rang: %s"

#: src/scan-code.l:498
#, c-format
msgid "invalid reference: %s"
msgstr "referència no vàlida: %s"

#: src/scan-code.l:506
#, c-format
msgid "syntax error after '%c', expecting integer, letter, '_', '[', or '$'"
msgstr ""
"error de sintaxi després de «%c», s'esperava un enter, lletra, «_», «[» o «$»"

#: src/scan-code.l:512
#, c-format
msgid "symbol not found in production before $%d: %.*s"
msgstr "no s'ha trobat el símbol en producció abans de $%d: %.*s"

#: src/scan-code.l:517
#, c-format
msgid "symbol not found in production: %.*s"
msgstr "no s'ha trobat el símbol en producció: %.*s"

#: src/scan-code.l:532
#, c-format
msgid "misleading reference: %s"
msgstr "referència enganyosa: %s"

#: src/scan-code.l:548
#, c-format
msgid "ambiguous reference: %s"
msgstr "referència ambigua: %s"

#: src/scan-code.l:584
#, c-format
msgid "explicit type given in untyped grammar"
msgstr "s'ha donat un tipus explicit a una gramàtica sense tipus"

#: src/scan-code.l:639
#, c-format
msgid "$$ for the midrule at $%d of %s has no declared type"
msgstr "$$ per a la regla intermèdia a $%d de %s no té cap tipus declarat"

#: src/scan-code.l:645
#, c-format
msgid "$$ of %s has no declared type"
msgstr "$$ de %s no té cap tipus declarat"

#: src/scan-code.l:671
#, c-format
msgid "$%s of %s has no declared type"
msgstr "$%s de %s no té cap tipus declarat"

#: src/scan-code.l:694
#, c-format
msgid "multiple occurrences of $%d with api.value.automove"
msgstr ""

#: src/scan-gram.l:198
#, c-format
msgid "stray ',' treated as white space"
msgstr "«,» extraviat serà tractat com a espai en blanc"

#: src/scan-gram.l:292
#, c-format
msgid "invalid directive: %s"
msgstr "directiva no vàlida: %s"

#: src/scan-gram.l:313
#, c-format
msgid "invalid identifier: %s"
msgstr "identificador no vàlida: %s"

#: src/scan-gram.l:365
msgid "invalid character"
msgid_plural "invalid characters"
msgstr[0] "caràcter no vàlid"
msgstr[1] "caràcters no vàlids"

#: src/scan-gram.l:383
#, c-format
msgid "invalid null character"
msgstr "caràcter nul no vàlid"

#: src/scan-gram.l:437
#, c-format
msgid "unexpected identifier in bracketed name: %s"
msgstr "identificador no esperat al nom entre parèntesis: %s"

#: src/scan-gram.l:459
#, c-format
msgid "an identifier expected"
msgstr "s'esperava un identificador"

#: src/scan-gram.l:464
msgid "invalid character in bracketed name"
msgid_plural "invalid characters in bracketed name"
msgstr[0] "caràcter no vàlid al nom entre parèntesis"
msgstr[1] "caràcters no vàlids al nom entre parèntesis"

#: src/scan-gram.l:535
#, c-format
msgid "POSIX Yacc does not support string literals"
msgstr ""

#: src/scan-gram.l:557
#, c-format
msgid "empty character literal"
msgstr "literal de caràcters buit"

#: src/scan-gram.l:563
#, c-format
msgid "extra characters in character literal"
msgstr "caràcters extra al literal de caràcters"

#: src/scan-gram.l:612 src/scan-gram.l:622 src/scan-gram.l:640
#, c-format
msgid "invalid number after \\-escape: %s"
msgstr "nombre no vàlid després de \\-escap: %s"

#: src/scan-gram.l:652
#, c-format
msgid "invalid character after \\-escape: %s"
msgstr "caràcter no vàlid després de \\-escap: %s"

#: src/scan-gram.l:824
#, c-format
msgid "POSIX Yacc does not support hexadecimal literals"
msgstr ""

#: src/scan-gram.l:962
#, c-format
msgid "missing %s at end of file"
msgstr "falta %s al final del fitxer"

#: src/scan-gram.l:973
#, c-format
msgid "missing %s at end of line"
msgstr "falta %s al final de la línia"

#: src/scan-skel.l:140
#, c-format
msgid "unclosed %s directive in skeleton"
msgstr "directiva %s sense tancar a l'esquelet"

#: src/scan-skel.l:258
#, c-format
msgid "too few arguments for %s directive in skeleton"
msgstr "massa pocs argumentse per a la directiva %s a l'esquelet"

#: src/scan-skel.l:265
#, c-format
msgid "too many arguments for %s directive in skeleton"
msgstr "massa arguments per a la directiva %s a l'esquelet"

#: src/symtab.c:108
#, c-format
msgid "POSIX Yacc forbids dashes in symbol names: %s"
msgstr "POSIX Yacc no permet guionets als noms de símbols: %s"

#: src/symtab.c:118
#, c-format
msgid "too many symbols in input grammar (limit is %d)"
msgstr "massa símbols a la gramàtica d'entrada (el límit és %d)"

#: src/symtab.c:300
#, c-format
msgid "%s redeclaration for %s"
msgstr "redeclaració %s per a %s"

#: src/symtab.c:313
#, c-format
msgid "%s redeclaration for <%s>"
msgstr "redeclaració %s per a <%s>"

#: src/symtab.c:325
#, fuzzy, c-format
msgid "symbol %s redeclared as a token"
msgstr "símbol %s redeclarat"

#: src/symtab.c:326
#, fuzzy, c-format
msgid "symbol %s redeclared as a nonterminal"
msgstr "símbol %s redeclarat"

#: src/symtab.c:370
#, fuzzy, c-format
msgid ""
"symbol %s is used, but is not defined as a token and has no rules; did you "
"mean %s?"
msgstr ""
"s'usa el símbol %s, però no està definit com un testimoni i no té cap regla"

#: src/symtab.c:380
#, c-format
msgid "symbol %s is used, but is not defined as a token and has no rules"
msgstr ""
"s'usa el símbol %s, però no està definit com un testimoni i no té cap regla"

#: src/symtab.c:515
#, c-format
msgid "POSIX yacc reserves %%type to nonterminals"
msgstr ""

#: src/symtab.c:550
#, c-format
msgid "symbol %s redeclared"
msgstr "símbol %s redeclarat"

#: src/symtab.c:572
#, c-format
msgid "nonterminals cannot be given an explicit number"
msgstr ""

#: src/symtab.c:575
#, c-format
msgid "redefining user token number of %s"
msgstr "s'està redefinint el número de testimoni d'usuari per a %s"

#: src/symtab.c:578
#, fuzzy, c-format
msgid "user token number of %s too large"
msgstr "s'està redefinint el número de testimoni d'usuari per a %s"

#: src/symtab.c:617
#, c-format
msgid "string literal %s not attached to a symbol"
msgstr ""

#: src/symtab.c:645
#, c-format
msgid "useless %s for type <%s>"
msgstr "%s inútil per al tipus <%s>"

#: src/symtab.c:650
#, c-format
msgid "type <%s> is used, but is not associated to any symbol"
msgstr "s'usa el tipus <%s>, però no està associat a cap símbol"

#: src/symtab.c:695
#, c-format
msgid "nonterminals cannot be given a string alias"
msgstr ""

#: src/symtab.c:698
#, c-format
msgid "symbol %s used more than once as a literal string"
msgstr "el símbol %s s'usa més d'un cop com a una cadena de literals"

#: src/symtab.c:701
#, c-format
msgid "symbol %s given more than one literal string"
msgstr "se li ha donat al símbol %s mes d'una cadena de literals"

#: src/symtab.c:736
#, c-format
msgid "user token number %d redeclaration for %s"
msgstr "redeclaració número %d de testimoni d'usuari per a %s"

#: src/symtab.c:740
#, c-format
msgid "previous declaration for %s"
msgstr "declaració prèvia per a %s"

#: src/symtab.c:1063
#, c-format
msgid "token number too large"
msgstr ""

#: src/symtab.c:1119
#, c-format
msgid "the start symbol %s is undefined"
msgstr "el símbol d'inici %s no està definit"

#: src/symtab.c:1123
#, c-format
msgid "the start symbol %s is a token"
msgstr "el símbol d'inici %s és un testimoni"

#: src/symtab.c:1294
#, c-format
msgid "useless precedence and associativity for %s"
msgstr "precedència i associativitat inútils per a %s"

#: src/symtab.c:1297
#, c-format
msgid "useless precedence for %s"
msgstr "precedència inútil per a %s"

#: src/symtab.c:1301
#, c-format
msgid "useless associativity for %s, use %%precedence"
msgstr "associativitat inútil per a %s, useu  %%precedence"

#, fuzzy
#~ msgid "eliminate useless chain rules"
#~ msgstr "la no-terminal no és útil a la gramàtica: %s"

#~ msgid "deprecated directive, use %s"
#~ msgstr "directiva obsoleta, useu %s"

#, fuzzy
#~ msgid ""
#~ "Warning categories include:\n"
#~ "  'conflicts-sr'      S/R conflicts (enabled by default)\n"
#~ "  'conflicts-rr'      R/R conflicts (enabled by default)\n"
#~ "  'deprecated'        obsolete constructs\n"
#~ "  'empty-rule'        empty rules without %empty\n"
#~ "  'midrule-values'    unset or unused midrule values\n"
#~ "  'precedence'        useless precedence and associativity\n"
#~ "  'yacc'              incompatibilities with POSIX Yacc\n"
#~ "  'other'             all other warnings (enabled by default)\n"
#~ "  'all'               all the warnings except 'yacc'\n"
#~ "  'no-CATEGORY'       turn off warnings in CATEGORY\n"
#~ "  'none'              turn off all the warnings\n"
#~ "  'error[=CATEGORY]'  treat warnings as errors\n"
#~ msgstr ""
#~ "Les categories d'advertiment inclouen:\n"
#~ "  'midrule-values'    valors no establerts o no usats de midrule\n"
#~ "  'yacc'              incompatibilitats amb el POSIX Yacc\n"
#~ "  'conflicts-sr'      conflictes S/R (habilitats per defecte)\n"
#~ "  'conflicts-rr'      conflictes R/R (habilitats per defecte)\n"
#~ "  'deprecated'        construccions obsoletes\n"
#~ "  'empty-rule'        regles buides sense %empty\n"
#~ "  'precedence'        precedència i associativitat inútils\n"
#~ "  'other'             tots els altres advertiments (habilitat per "
#~ "defecte)\n"
#~ "  'all'               tots els advertiments excepte «yacc»\n"
#~ "  'no-CATEGORIA'      desactiva els advertiments a CATEGORIA\n"
#~ "  'none'              desactiva tots els advertiments\n"
#~ "  'error[=CATEGORIA]' tracta els advertiments com a errors\n"

#~ 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 lookahead tokens to items\n"
#~ "  'solved'       describe shift/reduce conflicts solving\n"
#~ "  'all'          include all the above information\n"
#~ "  'none'         disable the report\n"
#~ msgstr ""
#~ "COSES és una llista de paraules separades amb comes que pot incloure:\n"
#~ "  'state'        descriu els estats\n"
#~ "  'itemset'      completa els elements del nucli amb el seu tancament\n"
#~ "  'lookahead'    associa explícitament els testimonis de recerca cap "
#~ "endavant als elements\n"
#~ "  'solved'       descriu la solució a conflictes shift/reduce\n"
#~ "  'all'          inclou tota la informació de dalt\n"
#~ "  'none'         inhabilita l'informe\n"

#, fuzzy
#~ msgid ""
#~ "FEATURES is a list of comma separated words that can include:\n"
#~ "  'caret', 'diagnostics-show-caret'\n"
#~ "    show errors with carets\n"
#~ "  'fixit', 'diagnostics-parseable-fixits'\n"
#~ "    show machine-readable fixes\n"
#~ "  'syntax-only'\n"
#~ "    do not generate any file\n"
#~ "  'all'\n"
#~ "    all of the above\n"
#~ "  'none'\n"
#~ "    disable all of the above\n"
#~ "  "
#~ msgstr ""
#~ "FUNCIONALITAT és una llista de paraules separades amb comes que pot "
#~ "incloure:\n"
#~ "  'caret'        mostra els errors amb accents circumflexos\n"
#~ "  'all'          tot el de dalt\n"
#~ "  'none'         inhabilita tot el de dalt\n"
#~ "  "

#~ msgid "invalid argument %s for %s"
#~ msgstr "argument no vàlid %s per a %s"

#~ msgid "ambiguous argument %s for %s"
#~ msgstr "argument ambigu %s per a %s"

#~ msgid "Valid arguments are:"
#~ msgstr "Els arguments vàlids són:"

#~ msgid "write error"
#~ msgstr "error d'escriptura"

#~ msgid "Unknown system error"
#~ msgstr "Error desconegut de sistema"

#, fuzzy
#~| msgid "%s: option '-W %s' is ambiguous\n"
#~ msgid "%s: option '%s%s' is ambiguous\n"
#~ msgstr "%s: l'opció «-W %s» és ambigua\n"

#, fuzzy
#~| msgid "%s: option '%s' is ambiguous; possibilities:"
#~ msgid "%s: option '%s%s' is ambiguous; possibilities:"
#~ msgstr "%s: l'opció «%s» és ambigua; possibilitats:"

#, fuzzy
#~| msgid "%s: unrecognized option '%c%s'\n"
#~ msgid "%s: unrecognized option '%s%s'\n"
#~ msgstr "%s: opció no reconeguda «%c%s»\n"

#, fuzzy
#~| msgid "%s: option '%c%s' doesn't allow an argument\n"
#~ msgid "%s: option '%s%s' doesn't allow an argument\n"
#~ msgstr "%s: l'opció «%c%s» no permet un argument\n"

#, fuzzy
#~| msgid "%s: option '--%s' requires an argument\n"
#~ msgid "%s: option '%s%s' requires an argument\n"
#~ msgstr "%s: l'opció «--%s» requereix un argument\n"

#~ msgid "%s: invalid option -- '%c'\n"
#~ msgstr "%s: opció no vàlida -- «%c»\n"

#~ msgid "%s: option requires an argument -- '%c'\n"
#~ msgstr "%s: l'opció requereix un argument -- «%c»\n"

#~ msgid "memory exhausted"
#~ msgstr "memòria exhaurida"

#~ msgid "cannot create pipe"
#~ msgstr "no es pot crear la canonada"

#~ msgid "%s subprocess failed"
#~ msgstr "ha fallat el subprocés %s"

#~ msgid "`"
#~ msgstr "«"

#~ msgid "'"
#~ msgstr "»"

#, fuzzy
#~| msgid ""
#~| "\n"
#~| "Execution times (seconds)\n"
#~ msgid "Execution times (seconds)"
#~ msgstr ""
#~ "\n"
#~ "Temps d'execució (segons)\n"

#~ msgid "_open_osfhandle failed"
#~ msgstr "ha fallat _open_osfhandle"

#~ msgid "cannot restore fd %d: dup2 failed"
#~ msgstr "no es pot restaurar fd %d: ha fallat dup2"

#~ msgid "%s subprocess"
#~ msgstr "subprocés %s"

#~ msgid "%s subprocess got fatal signal %d"
#~ msgstr "el subprocés %s ha produït el senyal fatal %d"

#~ msgid "%u bitset_allocs, %u freed (%.2f%%).\n"
#~ msgstr "%u bitset_allocs, %u alliberats (%.2f%%).\n"

#~ msgid "%u bitset_sets, %u cached (%.2f%%)\n"
#~ msgstr "%u bitset_sets, %u en cau (%.2f%%)\n"

#~ msgid "%u bitset_resets, %u cached (%.2f%%)\n"
#~ msgstr "%u bitset_resets, %u en cau (%.2f%%)\n"

#~ msgid "%u bitset_tests, %u cached (%.2f%%)\n"
#~ msgstr "%u bitset_tests, %u en cau (%.2f%%)\n"

#~ msgid "%u bitset_lists\n"
#~ msgstr "%u bitset_lists\n"

#~ msgid "count log histogram\n"
#~ msgstr "histograma del registre de recompte\n"

#~ msgid "size log histogram\n"
#~ msgstr "Histograma de registre de mida\n"

#~ msgid "density histogram\n"
#~ msgstr "histograma de densitat\n"

#~ msgid ""
#~ "Bitset statistics:\n"
#~ "\n"
#~ msgstr ""
#~ "Estadístiques de bitset: \n"
#~ "\n"

#~ msgid "Accumulated runs = %u\n"
#~ msgstr "Execucions acumulades = %u\n"

#~ msgid "cannot read stats file"
#~ msgstr "no es pot llegir el fitxer d'estadístiques"

#~ msgid "bad stats file size\n"
#~ msgstr "mida incorrecta de de fitxer d'estadístiques\n"

#~ msgid "cannot write stats file"
#~ msgstr "no es pot escriure el fitxer d'estadístiques"

#~ msgid "cannot open stats file for writing"
#~ msgstr "no es pot obrir el fitxer d'estadístiques per a escriptura"

#, fuzzy
#~| msgid "missing %s at end of file"
#~ msgid "end \"ABC\" of file"
#~ msgstr "falta %s al final del fitxer"

#, fuzzy
#~| msgid "invalid identifier: %s"
#~ msgid "[identifier]"
#~ msgstr "identificador no vàlida: %s"

#, fuzzy
#~| msgid "empty character literal"
#~ msgid "character literal"
#~ msgstr "literal de caràcters buit"

#, fuzzy
#~| msgid "invalid identifier: %s"
#~ msgid "identifier"
#~ msgstr "identificador no vàlida: %s"

#, fuzzy
#~| msgid "invalid identifier: %s"
#~ msgid "identifier:"
#~ msgstr "identificador no vàlida: %s"

#, fuzzy
#~| msgid "empty character literal"
#~ msgid "integer literal"
#~ msgstr "literal de caràcters buit"

#~ msgid "symbol %s redefined"
#~ msgstr "se redefinit el símbol %s"

#~ msgid "removing of '%s' failed"
#~ msgstr "ha fallat la supressió de «%s»"

#~ msgid "creation of a temporary file failed"
#~ msgstr "ha fallat la creació d'un fitxer temporari"

#~ msgid "saving stdin failed"
#~ msgstr "ha fallat el desament de l'entrada estàndard"

#~ msgid "saving stdout failed"
#~ msgstr "ha fallat el desament de la sortida estàndard"

#~ msgid "opening of tmpfile failed"
#~ msgstr "ha fallat l'obertura del fitxer temporari"

#~ msgid "redirecting bison's stdout to the temporary file failed"
#~ msgstr ""
#~ "ha fallat el redireccionament de la sortida estàndard del bison cap a un "
#~ "fitxer temporal"

#~ msgid "redirecting m4's stdin from the temporary file failed"
#~ msgstr ""
#~ "ha fallat el redireccionament de la sortida estàndard de m4 cap a un "
#~ "fitxer temporari"

#~ msgid "opening of a temporary file failed"
#~ msgstr "ha fallat l'obertura d'un fitxer temporari"

#~ msgid "redirecting m4's stdout to a temporary file failed"
#~ msgstr ""
#~ "ha fallat el redireccionament de la sortida estàndard de stdout cap a un "
#~ "fitxer temporal"

#~ msgid "subsidiary program '%s' interrupted"
#~ msgstr "s'ha interromput el programa subsidiari «%s»"

#~ msgid "subsidiary program '%s' not found"
#~ msgstr "no s'ha trobat el programa subsidiari «%s»"

#~ msgid "redirecting bison's stdin from the temporary file failed"
#~ msgstr ""
#~ "ha fallat la redirecció de l'entrada estàndard del bison a un fitxer "
#~ "temporari"

#~ msgid " type %d is %s\n"
#~ msgstr " tipus %d és %s\n"

#~ msgid "%s: option '--%s' doesn't allow an argument\n"
#~ msgstr "%s: l'opsció «--%s» no permet un argument\n"

#~ msgid "%s: unrecognized option '--%s'\n"
#~ msgstr "%s: opció no reconeguda «--%s»\n"

#~ msgid "%s: option '-W %s' doesn't allow an argument\n"
#~ msgstr "%s: l'opció «-W %s» no permet un argument\n"

#~ msgid "%s: option '-W %s' requires an argument\n"
#~ msgstr "%s: l'opció «-W %s» requereix un argument\n"

#~ msgid " TOTAL                 :"
#~ msgstr " TOTAL                 :"

#~ msgid "time in %s: %ld.%06ld (%ld%%)\n"
#~ msgstr "temps en %s: %ld.%06ld (%ld%%)\n"
