# Irish translations for bison.
# Copyright (C) 2004 Free Software Foundation, Inc.
# This file is distributed under the same license as the bison package.
# Kevin Patrick Scannell <kscanne@gmail.com>, 2004, 2005, 2017.
#
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: 2017-01-08 23:14-0500\n"
"Last-Translator: Kevin Patrick Scannell <kscanne@gmail.com>\n"
"Language-Team: Irish <gaeilge-gnulinux@lists.sourceforge.net>\n"
"Language: ga\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"

# sic; níl "cúltaca" i gceist anseo
#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669
msgid "syntax error: cannot back up"
msgstr "earráid chomhréire: ní féidir cúlú a dhéanamh"

#: data/skeletons/glr.c:1793
msgid "syntax is ambiguous"
msgstr "comhréir dhébhríoch"

#: 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 "earráid chomhréire"

#: data/skeletons/glr.c:2165 data/skeletons/lalr1.cc:1386
#: data/skeletons/yacc.c:1251
#, c-format
msgid "syntax error, unexpected %s"
msgstr "earráid chomhréire, %s gan súil leis"

#: 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 "earráid chomhréire, %s gan súil leis, bhíothas ag súil le %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 "earráid chomhréire, %s gan súil leis, bhíothas ag súil le %s nó %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 ""
"earráid chomhréire, %s gan súil leis, bhíothas ag súil le %s nó %s nó %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 ""
"earráid chomhréire, %s gan súil leis, bhíothas ag súil le %s nó %s nó %s nó "
"%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 "cuimhne ídithe"
