# Albanian translation of bison-runtime
# Copyright (C) 2012 Free Software Foundation, Inc.
# This file is distributed under the same license as the bison package.
# Agron Selimaj <linuxmaster@verizon.net>, 2012.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: bison-runtime 2.6.2\n"
"Report-Msgid-Bugs-To: bug-bison@gnu.org\n"
"POT-Creation-Date: 2012-12-12 16:09+0100\n"
"PO-Revision-Date: 2012-10-08 21:35+0500\n"
"Last-Translator: Agron Selimaj <linuxmaster@verizon.net>\n"
"Language-Team: Albanian <translation-team-sq@lists.sourceforge.net>\n"
"Language: sq\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"

#: data/glr.c:855 data/yacc.c:776
msgid "syntax error: cannot back up"
msgstr "gabim sintaksor: nuk mund të ruaj një kopje"

#: data/glr.c:1729
msgid "syntax is ambiguous"
msgstr "sintaksa është e ngjashme me të tjera"

#: 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 "gabim sintaksor"

#: data/glr.c:2095 data/lalr1.cc:948 data/yacc.c:1352
#, c-format
msgid "syntax error, unexpected %s"
msgstr "gabim sintaksor, %s i papritur"

#: data/glr.c:2096 data/lalr1.cc:949 data/yacc.c:1353
#, c-format
msgid "syntax error, unexpected %s, expecting %s"
msgstr "gabim sintaksor, %s i papritur, pritet %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 "gabim sintaksor, %s i papritur, pritet %s ose %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 "gabim sintaksor, %s i papritur, pritet %s ose %s ose %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 "gabim sintaksor, %s i papritur, pritet %s ose %s ose %s ose %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 "nuk mbeti kujtesë më"
