# translation of bison-runtime-2.0b.id.po to Indonesia
# bison-runtime-2.0b (Indonesian)
# Copyright (C) 2002, 2005 Free Software Foundation, Inc.
# This file is distributed under the same license as the bison 1.50 package.
# Tedi Heriyanto <tedi_heriyanto@yahoo.com>, 2002, 2003, 2005.
#
msgid ""
msgstr ""
"Project-Id-Version: bison-runtime 2.0b.id\n"
"Report-Msgid-Bugs-To: bug-bison@gnu.org\n"
"POT-Creation-Date: 2012-12-12 16:09+0100\n"
"PO-Revision-Date: 2005-09-14 20:39+0700\n"
"Last-Translator: Tedi Heriyanto <tedi_heriyanto@yahoo.com>\n"
"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
"Language: id\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 1.10\n"

#: data/glr.c:855 data/yacc.c:776
msgid "syntax error: cannot back up"
msgstr "kesalahan sintaks: tidak dapat membackup"

#: data/glr.c:1729
msgid "syntax is ambiguous"
msgstr "sintaks rancu"

#: data/glr.c:2014 data/glr.c:2094 data/glr.c:2134 data/glr.c:2399
#: data/lalr1.cc:947 data/lalr1.cc:967 data/yacc.c:1351 data/yacc.c:1856
#: data/yacc.c:1862
msgid "syntax error"
msgstr "kesalahan sintaks"

#: data/glr.c:2095 data/lalr1.cc:948 data/yacc.c:1352
#, c-format
msgid "syntax error, unexpected %s"
msgstr "kesalahan sintaks, %s tidak diharapkan"

#: data/glr.c:2096 data/lalr1.cc:949 data/yacc.c:1353
#, c-format
msgid "syntax error, unexpected %s, expecting %s"
msgstr "kesalahan sintaks, %s tidak diharapkan, mengharapkan %s"

#: data/glr.c:2097 data/lalr1.cc:950 data/yacc.c:1354
#, c-format
msgid "syntax error, unexpected %s, expecting %s or %s"
msgstr "kesalahan sintaks, %s tidak diharapkan, mengharapkan %s atau %s"

#: data/glr.c:2098 data/lalr1.cc:951 data/yacc.c:1355
#, c-format
msgid "syntax error, unexpected %s, expecting %s or %s or %s"
msgstr ""
"kesalahan sintaks, %s tidak diharapkan, mengharapkan %s atau %s atau %s"

#: data/glr.c:2099 data/lalr1.cc:952 data/yacc.c:1356
#, c-format
msgid "syntax error, unexpected %s, expecting %s or %s or %s or %s"
msgstr ""
"kesalahan sintaks, %s tidak diharapkan, mengharapkan %s atau %s atau %s atau "
"%s"

#: data/glr.c:2459 data/yacc.c:1436 data/yacc.c:1438 data/yacc.c:1616
#: data/yacc.c:2013
msgid "memory exhausted"
msgstr "memori habis"
