# Dutch messages for GNU bison.
# Copyright (C) 1996, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
# Tim Van Holder <tim.van.holder@telenet.be>, 2002, 2003, 2004, 2005.
# Erick Branderhorst <branderh@debian.org>, 1996.
#
msgid ""
msgstr ""
"Project-Id-Version: bison-runtime 2.1\n"
"Report-Msgid-Bugs-To: bug-bison@gnu.org\n"
"POT-Creation-Date: 2019-12-11 07:43+0100\n"
"PO-Revision-Date: 2005-09-21 11:22+0200\n"
"Last-Translator: Tim Van Holder <tim.van.holder@telenet.be>\n"
"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
"Language: nl\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"

#: data/skeletons/glr.c:884 data/skeletons/yacc.c:669
msgid "syntax error: cannot back up"
msgstr "syntaxfout: kan niet terugkeren"

#: data/skeletons/glr.c:1793
msgid "syntax is ambiguous"
msgstr "syntax is niet eenduidig"

#: 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 "syntaxfout"

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

#: 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 "syntaxfout, %s onverwacht (%s verwacht)"

#: 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 "syntaxfout, %s onverwacht (%s of %s verwacht)"

#: 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 "syntaxfout, %s onverwacht (%s of %s of %s verwacht)"

#: 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 "syntaxfout, %s onverwacht (%s of %s of %s of %s verwacht)"

#: 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 "geen geheugen meer beschikbaar"
