# Mensajes en español para GNU Bison.
# Copyright (C) 1998 Free Software Foundation, Inc.
# This file is distributed under the same license as the bison package.
# Nicolás García-Pedrajas <ngarcia-pedrajas@acm.org>, 1998.
# Santiago Vila Doncel <sanvila@unex.es>, 2013.
# 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
# --------------------------------------------------------------------
# Francisco Javier Serrador <fserrador@gmail.com>, 2018.
msgid ""
msgstr ""
"Project-Id-Version: bison-runtime 3.0.2\n"
"Report-Msgid-Bugs-To: bug-bison@gnu.org\n"
"POT-Creation-Date: 2019-12-11 07:43+0100\n"
"PO-Revision-Date: 2018-03-29 11:39+0200\n"
"Last-Translator: Francisco Javier Serrador <fserrador@gmail.com>\n"
"Language-Team: Spanish <es@tp.org.es>\n"
"Language: es\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"
"X-Generator: Virtaal 0.7.1\n"
"X-Bugs: Report translation errors to the Language-Team address.\n"

#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669
msgid "syntax error: cannot back up"
msgstr "error sintáctico: no puede respaldar"

#: data/skeletons/glr.c:1793
msgid "syntax is ambiguous"
msgstr "la sintaxis es ambigua"

#: data/skeletons/glr.c:2079 data/skeletons/glr.c:2164
#: data/skeletons/glr.c:2208 data/skeletons/glr.c:2446
#: data/skeletons/lalr1.cc:1385 data/skeletons/lalr1.cc:1406
#: data/skeletons/yacc.c:1250 data/skeletons/yacc.c:1762
#: data/skeletons/yacc.c:1768
msgid "syntax error"
msgstr "error de sintaxis"

#: data/skeletons/glr.c:2165 data/skeletons/lalr1.cc:1386
#: data/skeletons/yacc.c:1251
#, c-format
msgid "syntax error, unexpected %s"
msgstr "error de sintaxis, %s inesperado"

#: data/skeletons/glr.c:2166 data/skeletons/lalr1.cc:1387
#: data/skeletons/yacc.c:1252
#, c-format
msgid "syntax error, unexpected %s, expecting %s"
msgstr "error de sintaxis, %s inesperado, se esperaba %s"

#: data/skeletons/glr.c:2167 data/skeletons/lalr1.cc:1388
#: data/skeletons/yacc.c:1253
#, c-format
msgid "syntax error, unexpected %s, expecting %s or %s"
msgstr "error de sintaxis, %s inesperado, se esperaba %s o %s"

#: data/skeletons/glr.c:2168 data/skeletons/lalr1.cc:1389
#: data/skeletons/yacc.c:1254
#, c-format
msgid "syntax error, unexpected %s, expecting %s or %s or %s"
msgstr "error de sintaxis, %s inesperado, se esperaba %s o %s o %s"

#: data/skeletons/glr.c:2169 data/skeletons/lalr1.cc:1390
#: data/skeletons/yacc.c:1255
#, c-format
msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s"
msgstr "error de sintaxis, %s inesperado, se esperaba %s o %s o %s o %s"

#: data/skeletons/glr.c:2505 data/skeletons/yacc.c:1335
#: data/skeletons/yacc.c:1337 data/skeletons/yacc.c:1526
#: data/skeletons/yacc.c:1918
msgid "memory exhausted"
msgstr "memoria agotada"
