summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore25
-rw-r--r--.prev-version1
-rw-r--r--ABOUT-NLS1179
-rw-r--r--Makefile.am9
-rw-r--r--NEWS144
-rw-r--r--README113
-rw-r--r--README.md109
-rw-r--r--TODO66
-rwxr-xr-xautogen.sh22
-rwxr-xr-xbuild-aux/config.rpath106
-rw-r--r--build-aux/ltmain.sh39
-rwxr-xr-xbuild-aux/ylwrap6
-rw-r--r--configure.ac108
-rw-r--r--doc/Makefile.am34
-rw-r--r--doc/flex.texi27
-rw-r--r--lib/Makefile.am4
-rw-r--r--lib/lib.c9
-rw-r--r--lib/reallocarray.c49
-rw-r--r--m4/ax_prog_cc_for_build.m4125
-rw-r--r--m4/libtool.m428
-rw-r--r--po/Makefile.in.in53
-rw-r--r--po/Makevars39
-rw-r--r--po/POTFILES.in1
-rw-r--r--po/Rules-quot15
-rw-r--r--po/ca.po322
-rw-r--r--po/da.po324
-rw-r--r--po/de.po322
-rw-r--r--po/eo.po322
-rw-r--r--po/es.po336
-rw-r--r--po/fi.po324
-rw-r--r--po/fr.po330
-rw-r--r--po/ga.po424
-rw-r--r--po/hr.po322
-rw-r--r--po/ko.po320
-rw-r--r--po/nl.po326
-rw-r--r--po/pl.po322
-rw-r--r--po/pt_BR.po324
-rw-r--r--po/ro.po320
-rw-r--r--po/ru.po324
-rw-r--r--po/sr.po322
-rw-r--r--po/sv.po800
-rw-r--r--po/tr.po320
-rwxr-xr-xpo/update_linguas.sh26
-rw-r--r--po/vi.po328
-rw-r--r--po/zh_CN.po326
-rw-r--r--po/zh_TW.po324
-rw-r--r--src/Makefile.am162
-rw-r--r--src/Makefile.in1025
-rw-r--r--src/buf.c22
-rw-r--r--src/dfa.c17
-rw-r--r--src/ecs.c3
-rw-r--r--src/filter.c11
-rw-r--r--src/flex.skl458
-rw-r--r--src/flexdef.h28
-rw-r--r--src/flexint.h4
-rw-r--r--src/gen.c100
-rw-r--r--src/main.c84
-rw-r--r--src/misc.c100
-rwxr-xr-xsrc/mkskel.sh39
-rw-r--r--src/nfa.c1
-rw-r--r--src/options.c7
-rw-r--r--src/options.h5
-rw-r--r--src/parse.y25
-rw-r--r--src/regex.c28
-rw-r--r--src/scan.l281
-rw-r--r--src/scanflags.c3
-rw-r--r--src/scanopt.c12
-rw-r--r--src/tables.c53
-rw-r--r--src/tables.h2
-rw-r--r--src/tables_shared.c4
-rw-r--r--src/tblcmp.c5
-rw-r--r--src/yylex.c9
-rw-r--r--tests/.gitignore105
-rw-r--r--tests/Makefile.am180
-rw-r--r--tests/README3
-rw-r--r--tests/alloc_extra.l11
-rw-r--r--tests/array_nr.l2
-rw-r--r--tests/array_r.l2
-rw-r--r--tests/basic_nr.l2
-rw-r--r--tests/basic_r.l12
-rw-r--r--tests/bison_nr_main.c1
-rw-r--r--tests/bison_nr_parser.y3
-rw-r--r--tests/bison_yylloc_parser.y4
-rw-r--r--tests/bison_yylval_parser.y2
-rw-r--r--tests/bison_yylval_scanner.l2
-rw-r--r--tests/c_cxx_nr.lll8
-rw-r--r--tests/c_cxx_r.lll10
-rw-r--r--tests/ccl.l2
-rw-r--r--tests/cxx_restart.ll (renamed from tests/noansi_nr.l)42
-rw-r--r--tests/cxx_restart.txt2
-rw-r--r--tests/debug_nr.l2
-rw-r--r--tests/debug_r.l12
-rw-r--r--tests/extended.l2
-rw-r--r--tests/include_by_buffer.direct.l9
-rw-r--r--tests/include_by_push.direct.l13
-rw-r--r--tests/include_by_reentrant.direct.l33
-rw-r--r--tests/lineno_nr.l4
-rw-r--r--tests/lineno_r.l14
-rw-r--r--tests/lineno_trailing.l4
-rw-r--r--tests/mem_nr.l8
-rw-r--r--tests/mem_r.l20
-rw-r--r--tests/multiple_scanners_r_main.c1
-rw-r--r--tests/no_bison_stub.c39
-rw-r--r--tests/noansi_nr.txt5
-rw-r--r--tests/noansi_r.l69
-rw-r--r--tests/noansi_r.txt4
-rwxr-xr-xtests/options.cn2
-rw-r--r--tests/posix.l8
-rw-r--r--tests/posixly_correct.l8
-rw-r--r--tests/prefix_nr.l2
-rw-r--r--tests/prefix_r.l2
-rw-r--r--tests/pthread.l36
-rw-r--r--tests/quote_in_comment.l16
-rw-r--r--tests/quote_in_comment.txt1
-rw-r--r--tests/quotes.l38
-rw-r--r--tests/reject.l48
-rw-r--r--tests/rescan_nr.direct.l8
-rw-r--r--tests/rescan_r.direct.l20
-rw-r--r--tests/string_nr.l26
-rw-r--r--tests/string_r.l40
-rw-r--r--tests/tableopts.am132
-rwxr-xr-xtests/tableopts.sh17
-rwxr-xr-xtests/testwrapper-direct.sh20
-rwxr-xr-xtests/testwrapper.sh35
-rw-r--r--tests/yyextra.l6
125 files changed, 7281 insertions, 5983 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..3ef6b04
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,25 @@
+*.orig
+*.rej
+*.tar.bz2
+*.tar.gz
+*.tar.lz
+*~
+.deps
+.libs
+ABOUT-NLS
+ChangeLog
+INSTALL
+Makefile
+Makefile.in
+aclocal.m4
+autom4te.cache
+autoscan.log
+config.log
+config.status
+configure
+configure.scan
+flex-*/
+libtool
+stamp-*
+m4/
+build-aux/
diff --git a/.prev-version b/.prev-version
new file mode 100644
index 0000000..ec1cf33
--- /dev/null
+++ b/.prev-version
@@ -0,0 +1 @@
+2.6.3
diff --git a/ABOUT-NLS b/ABOUT-NLS
index b1de1b6..4f50fb5 100644
--- a/ABOUT-NLS
+++ b/ABOUT-NLS
@@ -18,7 +18,35 @@ explain how users should proceed for getting the programs to use the
available translations. They tell how people wanting to contribute and
work on translations can contact the appropriate team.
-1.1 INSTALL Matters
+ When reporting bugs in the `intl/' directory or bugs which may be
+related to internationalization, you should tell about the version of
+`gettext' which is used. The information can be found in the
+`intl/VERSION' file, in internationalized packages.
+
+1.1 Quick configuration advice
+==============================
+
+If you want to exploit the full power of internationalization, you
+should configure it using
+
+ ./configure --with-included-gettext
+
+to force usage of internationalizing routines provided within this
+package, despite the existence of internationalizing capabilities in the
+operating system where this package is being installed. So far, only
+the `gettext' implementation in the GNU C library version 2 provides as
+many features (such as locale alias, message inheritance, automatic
+charset conversion or plural form handling) as the implementation here.
+It is also not possible to offer this additional functionality on top
+of a `catgets' implementation. Future versions of GNU `gettext' will
+very likely convey even more functionality. So it might be a good idea
+to change to GNU `gettext' as soon as possible.
+
+ So you need _not_ provide this option if you are using GNU libc 2 or
+you have installed a recent copy of the GNU gettext package with the
+included `libintl'.
+
+1.2 INSTALL Matters
===================
Some packages are "localizable" when properly installed; the programs
@@ -28,19 +56,36 @@ internationalization, predating GNU `gettext'.
By default, this package will be installed to allow translation of
messages. It will automatically detect whether the system already
-provides the GNU `gettext' functions. Installers may use special
-options at configuration time for changing the default behaviour. The
-command:
+provides the GNU `gettext' functions. If not, the included GNU
+`gettext' library will be used. This library is wholly contained
+within this package, usually in the `intl/' subdirectory, so prior
+installation of the GNU `gettext' package is _not_ required.
+Installers may use special options at configuration time for changing
+the default behaviour. The commands:
+ ./configure --with-included-gettext
./configure --disable-nls
-will _totally_ disable translation of messages.
+will, respectively, bypass any pre-existing `gettext' to use the
+internationalizing routines provided within this package, or else,
+_totally_ disable translation of messages.
When you already have GNU `gettext' installed on your system and run
configure without an option for your new package, `configure' will
-probably detect the previously built and installed `libintl' library
-and will decide to use it. If not, you may have to to use the
-`--with-libintl-prefix' option to tell `configure' where to look for it.
+probably detect the previously built and installed `libintl.a' file and
+will decide to use this. This might not be desirable. You should use
+the more recent version of the GNU `gettext' library. I.e. if the file
+`intl/VERSION' shows that the library which comes with this package is
+more recent, you should use
+
+ ./configure --with-included-gettext
+
+to prevent auto-detection.
+
+ The configuration process will not test for the `catgets' function
+and therefore it will not be used. The reason is that even an
+emulation of `gettext' on top of `catgets' could not provide all the
+extensions of the GNU `gettext' library.
Internationalized packages usually have many `po/LL.po' files, where
LL gives an ISO 639 two-letter code identifying the language. Unless
@@ -51,7 +96,7 @@ may be set, prior to configuration, to limit the installed set.
`LINGUAS' should then contain a space separated list of two-letter
codes, stating which languages are allowed.
-1.2 Using This Package
+1.3 Using This Package
======================
As a user, if your language has been installed for this package, you
@@ -103,7 +148,7 @@ to denote the language's main dialect. For example, `de' is equivalent
to `de_DE' (German as spoken in Germany), and `pt' to `pt_PT'
(Portuguese as spoken in Portugal) in this context.
-1.3 Translating Teams
+1.4 Translating Teams
=====================
For the Free Translation Project to be a success, we need interested
@@ -132,566 +177,566 @@ reach the coordinator for all translator teams.
the terminology in use. Proven linguistic skills are praised more than
programming skills, here.
-1.4 Available Packages
+1.5 Available Packages
======================
Languages are not equally supported in all packages. The following
-matrix shows the current state of internationalization, as of June
-2010. The matrix shows, in regard of each package, for which languages
-PO files have been submitted to translation coordination, with a
+matrix shows the current state of internationalization, as of May 2010.
+The matrix shows, in regard of each package, for which languages PO
+files have been submitted to translation coordination, with a
translation percentage of at least 50%.
- Ready PO files af am an ar as ast az be be@latin bg bn_IN bs ca
- +--------------------------------------------------+
- a2ps | [] [] |
- aegis | |
- ant-phone | |
- anubis | |
- aspell | [] [] |
- bash | |
- bfd | |
- bibshelf | [] |
- binutils | |
- bison | |
- bison-runtime | [] |
- bluez-pin | [] [] |
- bombono-dvd | |
- buzztard | |
- cflow | |
- clisp | |
- coreutils | [] [] |
- cpio | |
- cppi | |
- cpplib | [] |
- cryptsetup | |
- dfarc | |
- dialog | [] [] |
- dico | |
- diffutils | [] |
- dink | |
- doodle | |
- e2fsprogs | [] |
- enscript | [] |
- exif | |
- fetchmail | [] |
- findutils | [] |
- flex | [] |
- freedink | |
- gas | |
- gawk | [] [] |
- gcal | [] |
- gcc | |
- gettext-examples | [] [] [] [] |
- gettext-runtime | [] [] |
- gettext-tools | [] [] |
- gip | [] |
- gjay | |
- gliv | [] |
- glunarclock | [] [] |
- gnubiff | |
- gnucash | [] |
- gnuedu | |
- gnulib | |
- gnunet | |
- gnunet-gtk | |
- gnutls | |
- gold | |
- gpe-aerial | |
- gpe-beam | |
- gpe-bluetooth | |
- gpe-calendar | |
- gpe-clock | [] |
- gpe-conf | |
- gpe-contacts | |
- gpe-edit | |
- gpe-filemanager | |
- gpe-go | |
- gpe-login | |
- gpe-ownerinfo | [] |
- gpe-package | |
- gpe-sketchbook | |
- gpe-su | [] |
- gpe-taskmanager | [] |
- gpe-timesheet | [] |
- gpe-today | [] |
- gpe-todo | |
- gphoto2 | |
- gprof | [] |
- gpsdrive | |
- gramadoir | |
- grep | |
- grub | [] [] |
- gsasl | |
- gss | |
- gst-plugins-bad | [] |
- gst-plugins-base | [] |
- gst-plugins-good | [] |
- gst-plugins-ugly | [] |
- gstreamer | [] [] [] |
- gtick | |
- gtkam | [] |
- gtkorphan | [] |
- gtkspell | [] [] [] |
- gutenprint | |
- hello | [] |
- help2man | |
- hylafax | |
- idutils | |
- indent | [] [] |
- iso_15924 | |
- iso_3166 | [] [] [] [] [] [] [] |
- iso_3166_2 | |
- iso_4217 | |
- iso_639 | [] [] [] [] |
- iso_639_3 | |
- jwhois | |
- kbd | |
- keytouch | [] |
- keytouch-editor | |
- keytouch-keyboa... | [] |
- klavaro | [] |
- latrine | |
- ld | [] |
- leafpad | [] [] |
- libc | [] [] |
- libexif | () |
- libextractor | |
- libgnutls | |
- libgpewidget | |
- libgpg-error | |
- libgphoto2 | |
- libgphoto2_port | |
- libgsasl | |
- libiconv | [] |
- libidn | |
- lifelines | |
- liferea | [] [] |
- lilypond | |
- linkdr | [] |
- lordsawar | |
- lprng | |
- lynx | [] |
- m4 | |
- mailfromd | |
- mailutils | |
- make | |
- man-db | |
- man-db-manpages | |
- minicom | |
- mkisofs | |
- myserver | |
- nano | [] [] |
- opcodes | |
- parted | |
- pies | |
- popt | |
- psmisc | |
- pspp | [] |
- pwdutils | |
- radius | [] |
- recode | [] [] |
- rosegarden | |
- rpm | |
- rush | |
- sarg | |
- screem | |
- scrollkeeper | [] [] [] |
- sed | [] [] |
- sharutils | [] [] |
- shishi | |
- skencil | |
- solfege | |
- solfege-manual | |
- soundtracker | |
- sp | |
- sysstat | |
- tar | [] |
- texinfo | |
- tin | |
- unicode-han-tra... | |
- unicode-transla... | |
- util-linux-ng | [] |
- vice | |
- vmm | |
- vorbis-tools | |
- wastesedge | |
- wdiff | |
- wget | [] [] |
- wyslij-po | |
- xchat | [] [] [] [] |
- xdg-user-dirs | [] [] [] [] [] [] [] [] [] |
- xkeyboard-config | [] [] |
- +--------------------------------------------------+
- af am an ar as ast az be be@latin bg bn_IN bs ca
- 6 0 1 2 3 19 1 10 3 28 3 1 38
+ Ready PO files af am ar as ast az be be@latin bg bn_IN bs ca crh
+ +---------------------------------------------------+
+ a2ps | [] [] |
+ aegis | |
+ ant-phone | |
+ anubis | |
+ aspell | [] [] |
+ bash | |
+ bfd | |
+ bibshelf | [] |
+ binutils | |
+ bison | |
+ bison-runtime | [] |
+ bluez-pin | [] [] |
+ bombono-dvd | |
+ buzztard | |
+ cflow | |
+ clisp | |
+ coreutils | [] [] |
+ cpio | |
+ cppi | |
+ cpplib | [] |
+ cryptsetup | |
+ dfarc | |
+ dialog | [] [] |
+ dico | |
+ diffutils | [] |
+ dink | |
+ doodle | |
+ e2fsprogs | [] |
+ enscript | [] |
+ exif | |
+ fetchmail | [] |
+ findutils | [] |
+ flex | [] |
+ freedink | |
+ gas | |
+ gawk | [] [] |
+ gcal | [] |
+ gcc | |
+ gettext-examples | [] [] [] [] |
+ gettext-runtime | [] [] [] |
+ gettext-tools | [] [] |
+ gip | [] |
+ gjay | |
+ gliv | [] |
+ glunarclock | [] [] |
+ gnubiff | |
+ gnucash | [] |
+ gnuedu | |
+ gnulib | |
+ gnunet | |
+ gnunet-gtk | |
+ gnutls | |
+ gold | |
+ gpe-aerial | |
+ gpe-beam | |
+ gpe-bluetooth | |
+ gpe-calendar | |
+ gpe-clock | [] |
+ gpe-conf | |
+ gpe-contacts | |
+ gpe-edit | |
+ gpe-filemanager | |
+ gpe-go | |
+ gpe-login | |
+ gpe-ownerinfo | [] |
+ gpe-package | |
+ gpe-sketchbook | |
+ gpe-su | [] |
+ gpe-taskmanager | [] |
+ gpe-timesheet | [] |
+ gpe-today | [] |
+ gpe-todo | |
+ gphoto2 | |
+ gprof | [] |
+ gpsdrive | |
+ gramadoir | |
+ grep | |
+ grub | [] [] |
+ gsasl | |
+ gss | |
+ gst-plugins-bad | [] |
+ gst-plugins-base | [] |
+ gst-plugins-good | [] |
+ gst-plugins-ugly | [] |
+ gstreamer | [] [] [] |
+ gtick | |
+ gtkam | [] |
+ gtkorphan | [] |
+ gtkspell | [] [] [] |
+ gutenprint | |
+ hello | [] |
+ help2man | |
+ hylafax | |
+ idutils | |
+ indent | [] [] |
+ iso_15924 | |
+ iso_3166 | [] [] [] [] [] [] [] [] |
+ iso_3166_2 | |
+ iso_4217 | |
+ iso_639 | [] [] [] [] [] |
+ iso_639_3 | [] |
+ jwhois | |
+ kbd | |
+ keytouch | [] |
+ keytouch-editor | |
+ keytouch-keyboa... | [] |
+ klavaro | [] |
+ latrine | |
+ ld | [] |
+ leafpad | [] [] |
+ libc | [] [] |
+ libexif | () |
+ libextractor | |
+ libgnutls | |
+ libgpewidget | |
+ libgpg-error | |
+ libgphoto2 | |
+ libgphoto2_port | |
+ libgsasl | |
+ libiconv | [] |
+ libidn | |
+ lifelines | |
+ liferea | [] [] |
+ lilypond | |
+ linkdr | [] |
+ lordsawar | |
+ lprng | |
+ lynx | [] |
+ m4 | |
+ mailfromd | |
+ mailutils | |
+ make | |
+ man-db | |
+ man-db-manpages | |
+ minicom | |
+ mkisofs | |
+ myserver | |
+ nano | [] [] |
+ opcodes | |
+ parted | |
+ pies | |
+ popt | |
+ psmisc | |
+ pspp | [] |
+ pwdutils | |
+ radius | [] |
+ recode | [] [] |
+ rosegarden | |
+ rpm | |
+ rush | |
+ sarg | |
+ screem | |
+ scrollkeeper | [] [] [] |
+ sed | [] [] |
+ sharutils | [] [] |
+ shishi | |
+ skencil | |
+ solfege | |
+ solfege-manual | |
+ soundtracker | |
+ sp | |
+ sysstat | |
+ tar | [] |
+ texinfo | |
+ tin | |
+ unicode-han-tra... | |
+ unicode-transla... | |
+ util-linux-ng | [] |
+ vice | |
+ vmm | |
+ vorbis-tools | |
+ wastesedge | |
+ wdiff | |
+ wget | [] [] |
+ wyslij-po | |
+ xchat | [] [] [] [] |
+ xdg-user-dirs | [] [] [] [] [] [] [] [] [] |
+ xkeyboard-config | [] [] [] |
+ +---------------------------------------------------+
+ af am ar as ast az be be@latin bg bn_IN bs ca crh
+ 6 0 2 3 19 1 11 3 28 3 1 38 5
- crh cs da de el en en_GB en_ZA eo es et eu fa
+ cs da de el en en_GB en_ZA eo es et eu fa fi
+-------------------------------------------------+
- a2ps | [] [] [] [] [] [] [] |
- aegis | [] [] [] |
- ant-phone | [] () |
- anubis | [] [] |
- aspell | [] [] [] [] [] |
- bash | [] [] [] |
- bfd | [] |
- bibshelf | [] [] [] |
- binutils | [] |
- bison | [] [] |
- bison-runtime | [] [] [] [] |
- bluez-pin | [] [] [] [] [] [] |
- bombono-dvd | [] |
- buzztard | [] [] [] |
- cflow | [] [] |
- clisp | [] [] [] [] |
- coreutils | [] [] [] [] |
- cpio | |
- cppi | |
- cpplib | [] [] [] |
- cryptsetup | [] |
- dfarc | [] [] [] |
- dialog | [] [] [] [] [] |
+ a2ps | [] [] [] [] [] [] [] [] |
+ aegis | [] [] [] |
+ ant-phone | [] () |
+ anubis | [] [] [] |
+ aspell | [] [] [] [] [] |
+ bash | [] [] [] [] |
+ bfd | [] [] |
+ bibshelf | [] [] [] [] |
+ binutils | [] [] |
+ bison | [] [] [] |
+ bison-runtime | [] [] [] [] [] |
+ bluez-pin | [] [] [] [] [] [] [] |
+ bombono-dvd | [] [] |
+ buzztard | [] [] [] |
+ cflow | [] [] [] |
+ clisp | [] [] [] [] |
+ coreutils | [] [] [] [] |
+ cpio | [] |
+ cppi | [] |
+ cpplib | [] [] [] |
+ cryptsetup | [] |
+ dfarc | [] [] [] [] |
+ dialog | [] [] [] [] [] |
dico | |
- diffutils | [] [] [] [] [] [] |
- dink | [] [] [] |
- doodle | [] |
- e2fsprogs | [] [] [] |
- enscript | [] [] [] |
- exif | () [] [] |
- fetchmail | [] [] () [] [] [] |
- findutils | [] [] [] |
- flex | [] [] |
- freedink | [] [] [] |
- gas | [] |
- gawk | [] [] [] |
- gcal | [] |
- gcc | [] [] |
- gettext-examples | [] [] [] [] |
- gettext-runtime | [] [] [] [] |
- gettext-tools | [] [] [] |
- gip | [] [] [] [] |
- gjay | [] |
- gliv | [] [] [] |
- glunarclock | [] [] |
- gnubiff | () |
- gnucash | [] () () () () |
- gnuedu | [] [] |
- gnulib | [] [] |
+ diffutils | [] [] [] [] [] [] [] |
+ dink | [] [] [] |
+ doodle | [] |
+ e2fsprogs | [] [] [] |
+ enscript | [] [] [] |
+ exif | () [] [] [] |
+ fetchmail | [] [] () [] [] [] |
+ findutils | [] [] [] [] |
+ flex | [] [] [] |
+ freedink | [] [] [] [] |
+ gas | [] |
+ gawk | [] [] [] |
+ gcal | [] |
+ gcc | [] [] |
+ gettext-examples | [] [] [] [] [] |
+ gettext-runtime | [] [] [] [] [] |
+ gettext-tools | [] [] [] |
+ gip | [] [] [] [] [] |
+ gjay | [] [] |
+ gliv | [] [] [] [] |
+ glunarclock | [] [] [] |
+ gnubiff | () |
+ gnucash | [] () () () () () |
+ gnuedu | [] [] |
+ gnulib | [] [] [] |
gnunet | |
- gnunet-gtk | [] |
- gnutls | [] [] |
- gold | [] |
- gpe-aerial | [] [] [] [] |
- gpe-beam | [] [] [] [] |
- gpe-bluetooth | [] [] |
- gpe-calendar | [] |
- gpe-clock | [] [] [] [] |
- gpe-conf | [] [] [] |
- gpe-contacts | [] [] [] |
- gpe-edit | [] [] |
- gpe-filemanager | [] [] [] |
- gpe-go | [] [] [] [] |
- gpe-login | [] [] |
- gpe-ownerinfo | [] [] [] [] |
- gpe-package | [] [] [] |
- gpe-sketchbook | [] [] [] [] |
- gpe-su | [] [] [] [] |
- gpe-taskmanager | [] [] [] [] |
- gpe-timesheet | [] [] [] [] |
- gpe-today | [] [] [] [] |
- gpe-todo | [] [] [] |
- gphoto2 | [] [] () [] [] [] |
- gprof | [] [] [] |
- gpsdrive | [] [] [] |
- gramadoir | [] [] [] |
- grep | [] |
- grub | [] [] |
- gsasl | [] |
- gss | |
- gst-plugins-bad | [] [] [] [] [] |
- gst-plugins-base | [] [] [] [] [] |
- gst-plugins-good | [] [] [] [] [] [] |
- gst-plugins-ugly | [] [] [] [] [] [] |
- gstreamer | [] [] [] [] [] |
- gtick | [] () [] |
- gtkam | [] [] () [] [] |
- gtkorphan | [] [] [] [] |
- gtkspell | [] [] [] [] [] [] [] |
- gutenprint | [] [] [] |
- hello | [] [] [] [] |
- help2man | [] |
- hylafax | [] [] |
- idutils | [] [] |
- indent | [] [] [] [] [] [] [] |
- iso_15924 | [] () [] [] |
- iso_3166 | [] [] [] [] () [] [] [] () |
- iso_3166_2 | () |
- iso_4217 | [] [] [] () [] [] |
- iso_639 | [] [] [] [] () [] [] |
- iso_639_3 | [] |
- jwhois | [] |
- kbd | [] [] [] [] [] |
- keytouch | [] [] |
- keytouch-editor | [] [] |
- keytouch-keyboa... | [] |
- klavaro | [] [] [] [] |
- latrine | [] () |
- ld | [] [] |
- leafpad | [] [] [] [] [] [] |
- libc | [] [] [] [] |
- libexif | [] [] () |
+ gnunet-gtk | [] |
+ gnutls | [] [] |
+ gold | [] [] |
+ gpe-aerial | [] [] [] [] [] |
+ gpe-beam | [] [] [] [] [] |
+ gpe-bluetooth | [] [] [] |
+ gpe-calendar | [] [] |
+ gpe-clock | [] [] [] [] [] |
+ gpe-conf | [] [] [] [] |
+ gpe-contacts | [] [] [] [] |
+ gpe-edit | [] [] [] |
+ gpe-filemanager | [] [] [] [] |
+ gpe-go | [] [] [] [] [] |
+ gpe-login | [] [] [] |
+ gpe-ownerinfo | [] [] [] [] [] |
+ gpe-package | [] [] [] [] |
+ gpe-sketchbook | [] [] [] [] [] |
+ gpe-su | [] [] [] [] [] |
+ gpe-taskmanager | [] [] [] [] [] |
+ gpe-timesheet | [] [] [] [] [] |
+ gpe-today | [] [] [] [] [] |
+ gpe-todo | [] [] [] [] |
+ gphoto2 | [] [] () [] [] [] [] |
+ gprof | [] [] [] [] |
+ gpsdrive | [] [] [] |
+ gramadoir | [] [] [] |
+ grep | [] [] |
+ grub | [] [] [] |
+ gsasl | [] [] |
+ gss | [] |
+ gst-plugins-bad | [] [] [] [] [] [] |
+ gst-plugins-base | [] [] [] [] [] [] |
+ gst-plugins-good | [] [] [] [] [] [] [] |
+ gst-plugins-ugly | [] [] [] [] [] [] [] |
+ gstreamer | [] [] [] [] [] [] |
+ gtick | [] () [] [] |
+ gtkam | [] [] () [] [] |
+ gtkorphan | [] [] [] [] |
+ gtkspell | [] [] [] [] [] [] [] [] |
+ gutenprint | [] [] [] [] |
+ hello | [] [] [] [] [] |
+ help2man | [] [] |
+ hylafax | [] [] |
+ idutils | [] [] [] |
+ indent | [] [] [] [] [] [] [] [] |
+ iso_15924 | [] () [] [] [] |
+ iso_3166 | [] [] [] () [] [] [] () [] |
+ iso_3166_2 | () |
+ iso_4217 | [] [] [] () [] [] [] |
+ iso_639 | [] [] [] () [] [] [] |
+ iso_639_3 | |
+ jwhois | [] [] |
+ kbd | [] [] [] [] [] |
+ keytouch | [] [] [] |
+ keytouch-editor | [] [] [] |
+ keytouch-keyboa... | [] [] |
+ klavaro | [] [] [] [] |
+ latrine | [] () [] |
+ ld | [] [] [] |
+ leafpad | [] [] [] [] [] [] [] |
+ libc | [] [] [] [] [] |
+ libexif | [] [] () |
libextractor | |
- libgnutls | [] |
- libgpewidget | [] [] |
- libgpg-error | [] [] |
- libgphoto2 | [] () |
- libgphoto2_port | [] () [] |
- libgsasl | |
- libiconv | [] [] [] [] [] |
- libidn | [] [] [] |
- lifelines | [] () |
- liferea | [] [] [] [] [] |
- lilypond | [] [] [] |
- linkdr | [] [] [] |
- lordsawar | [] |
+ libgnutls | [] |
+ libgpewidget | [] [] [] |
+ libgpg-error | [] [] |
+ libgphoto2 | [] () |
+ libgphoto2_port | [] () [] |
+ libgsasl | [] |
+ libiconv | [] [] [] [] [] [] |
+ libidn | [] [] [] [] |
+ lifelines | [] () |
+ liferea | [] [] [] [] [] |
+ lilypond | [] [] [] [] |
+ linkdr | [] [] [] [] |
+ lordsawar | [] |
lprng | |
- lynx | [] [] [] [] |
- m4 | [] [] [] [] |
+ lynx | [] [] [] [] |
+ m4 | [] [] [] [] [] |
mailfromd | |
- mailutils | [] |
- make | [] [] [] |
+ mailutils | [] |
+ make | [] [] [] [] |
man-db | |
man-db-manpages | |
- minicom | [] [] [] [] |
- mkisofs | |
+ minicom | [] [] [] [] [] |
+ mkisofs | [] |
myserver | |
- nano | [] [] [] |
- opcodes | [] [] |
- parted | [] [] |
+ nano | [] [] [] [] |
+ opcodes | [] [] [] |
+ parted | [] [] |
pies | |
- popt | [] [] [] [] [] |
- psmisc | [] [] [] |
- pspp | [] |
- pwdutils | [] |
- radius | [] |
- recode | [] [] [] [] [] [] |
- rosegarden | () () () |
- rpm | [] [] [] |
+ popt | [] [] [] [] [] [] |
+ psmisc | [] [] [] [] |
+ pspp | [] |
+ pwdutils | [] |
+ radius | [] |
+ recode | [] [] [] [] [] [] [] |
+ rosegarden | () () () () |
+ rpm | [] [] [] |
rush | |
sarg | |
screem | |
- scrollkeeper | [] [] [] [] [] |
- sed | [] [] [] [] [] [] |
- sharutils | [] [] [] [] |
+ scrollkeeper | [] [] [] [] [] [] |
+ sed | [] [] [] [] [] [] [] |
+ sharutils | [] [] [] [] [] |
shishi | |
- skencil | [] () [] |
- solfege | [] [] [] |
- solfege-manual | [] [] |
- soundtracker | [] [] [] |
- sp | [] |
- sysstat | [] [] [] |
- tar | [] [] [] [] |
- texinfo | [] [] [] |
- tin | [] [] |
+ skencil | [] () [] |
+ solfege | [] [] [] [] |
+ solfege-manual | [] [] |
+ soundtracker | [] [] [] |
+ sp | [] |
+ sysstat | [] [] [] [] |
+ tar | [] [] [] [] [] |
+ texinfo | [] [] [] |
+ tin | [] [] |
unicode-han-tra... | |
unicode-transla... | |
- util-linux-ng | [] [] [] [] |
- vice | () () |
- vmm | [] |
- vorbis-tools | [] [] |
- wastesedge | [] |
- wdiff | [] [] |
- wget | [] [] [] |
- wyslij-po | |
- xchat | [] [] [] [] [] |
- xdg-user-dirs | [] [] [] [] [] [] [] [] [] |
- xkeyboard-config | [] [] [] [] [] [] |
+ util-linux-ng | [] [] [] [] [] |
+ vice | () () |
+ vmm | [] |
+ vorbis-tools | [] [] |
+ wastesedge | [] |
+ wdiff | [] [] [] |
+ wget | [] [] [] [] |
+ wyslij-po | [] |
+ xchat | [] [] [] [] [] [] |
+ xdg-user-dirs | [] [] [] [] [] [] [] [] [] |
+ xkeyboard-config | [] [] [] [] [] [] |
+-------------------------------------------------+
- crh cs da de el en en_GB en_ZA eo es et eu fa
- 5 64 105 117 18 1 8 0 28 89 18 19 0
+ cs da de el en en_GB en_ZA eo es et eu fa fi
+ 64 105 117 18 1 8 0 28 89 18 19 0 104
- fi fr ga gl gu he hi hr hu hy id is it ja ka kn
- +----------------------------------------------------+
- a2ps | [] [] [] [] |
- aegis | [] [] |
- ant-phone | [] [] |
- anubis | [] [] [] [] |
- aspell | [] [] [] [] |
- bash | [] [] [] [] |
- bfd | [] [] [] |
- bibshelf | [] [] [] [] [] |
- binutils | [] [] [] |
- bison | [] [] [] [] |
- bison-runtime | [] [] [] [] [] [] |
- bluez-pin | [] [] [] [] [] [] [] [] |
- bombono-dvd | [] |
- buzztard | [] |
- cflow | [] [] [] |
- clisp | [] |
- coreutils | [] [] [] [] [] |
- cpio | [] [] [] [] |
- cppi | [] [] |
- cpplib | [] [] [] |
- cryptsetup | [] [] [] |
- dfarc | [] [] [] |
- dialog | [] [] [] [] [] [] [] |
- dico | |
- diffutils | [] [] [] [] [] [] [] [] [] |
- dink | [] |
- doodle | [] [] |
- e2fsprogs | [] [] |
- enscript | [] [] [] [] |
- exif | [] [] [] [] [] [] |
- fetchmail | [] [] [] [] |
- findutils | [] [] [] [] [] [] |
- flex | [] [] [] |
- freedink | [] [] [] |
- gas | [] [] |
- gawk | [] [] [] [] () [] |
- gcal | [] |
- gcc | [] |
- gettext-examples | [] [] [] [] [] [] [] |
- gettext-runtime | [] [] [] [] [] [] |
- gettext-tools | [] [] [] [] |
- gip | [] [] [] [] [] [] |
- gjay | [] |
- gliv | [] () |
- glunarclock | [] [] [] [] |
- gnubiff | () [] () |
- gnucash | () () () () () [] |
- gnuedu | [] [] |
- gnulib | [] [] [] [] [] [] |
- gnunet | |
- gnunet-gtk | [] |
- gnutls | [] [] |
- gold | [] [] |
- gpe-aerial | [] [] [] |
- gpe-beam | [] [] [] [] |
- gpe-bluetooth | [] [] [] [] |
- gpe-calendar | [] [] |
- gpe-clock | [] [] [] [] [] |
- gpe-conf | [] [] [] [] |
- gpe-contacts | [] [] [] [] |
- gpe-edit | [] [] [] |
- gpe-filemanager | [] [] [] [] |
- gpe-go | [] [] [] [] [] |
- gpe-login | [] [] [] |
- gpe-ownerinfo | [] [] [] [] [] |
- gpe-package | [] [] [] |
- gpe-sketchbook | [] [] [] [] |
- gpe-su | [] [] [] [] [] [] |
- gpe-taskmanager | [] [] [] [] [] |
- gpe-timesheet | [] [] [] [] [] |
- gpe-today | [] [] [] [] [] [] [] |
- gpe-todo | [] [] [] |
- gphoto2 | [] [] [] [] [] [] |
- gprof | [] [] [] [] |
- gpsdrive | [] [] [] |
- gramadoir | [] [] [] |
- grep | [] [] |
- grub | [] [] [] [] |
- gsasl | [] [] [] [] [] |
- gss | [] [] [] [] [] |
- gst-plugins-bad | [] [] [] [] [] [] |
- gst-plugins-base | [] [] [] [] [] [] |
- gst-plugins-good | [] [] [] [] [] [] |
- gst-plugins-ugly | [] [] [] [] [] [] |
- gstreamer | [] [] [] [] [] |
- gtick | [] [] [] [] [] |
- gtkam | [] [] [] [] [] |
- gtkorphan | [] [] [] |
- gtkspell | [] [] [] [] [] [] [] [] [] |
- gutenprint | [] [] [] [] |
- hello | [] [] [] |
- help2man | [] [] |
- hylafax | [] |
- idutils | [] [] [] [] [] [] |
- indent | [] [] [] [] [] [] [] [] |
- iso_15924 | [] () [] [] |
- iso_3166 | [] () [] [] [] [] [] [] [] [] [] [] |
- iso_3166_2 | () [] [] [] |
- iso_4217 | [] () [] [] [] [] |
- iso_639 | [] () [] [] [] [] [] [] [] |
- iso_639_3 | () [] [] |
- jwhois | [] [] [] [] [] |
- kbd | [] [] |
- keytouch | [] [] [] [] [] [] |
- keytouch-editor | [] [] [] [] [] |
- keytouch-keyboa... | [] [] [] [] [] |
- klavaro | [] [] |
- latrine | [] [] [] |
- ld | [] [] [] [] |
- leafpad | [] [] [] [] [] [] [] () |
- libc | [] [] [] [] [] |
- libexif | [] |
- libextractor | |
- libgnutls | [] [] |
- libgpewidget | [] [] [] [] |
- libgpg-error | [] [] |
- libgphoto2 | [] [] [] |
- libgphoto2_port | [] [] [] |
- libgsasl | [] [] [] [] [] |
- libiconv | [] [] [] [] [] [] |
- libidn | [] [] [] [] |
- lifelines | () |
- liferea | [] [] [] [] |
- lilypond | [] [] |
- linkdr | [] [] [] [] [] |
- lordsawar | |
- lprng | [] |
- lynx | [] [] [] [] [] |
- m4 | [] [] [] [] [] [] |
- mailfromd | |
- mailutils | [] [] |
- make | [] [] [] [] [] [] [] [] [] |
- man-db | [] [] |
- man-db-manpages | [] |
- minicom | [] [] [] [] [] |
- mkisofs | [] [] [] [] |
- myserver | |
- nano | [] [] [] [] [] [] |
- opcodes | [] [] [] [] |
- parted | [] [] [] [] |
- pies | |
- popt | [] [] [] [] [] [] [] [] [] |
- psmisc | [] [] [] |
- pspp | |
- pwdutils | [] [] |
- radius | [] [] |
- recode | [] [] [] [] [] [] [] [] |
- rosegarden | () () () () () |
- rpm | [] [] |
- rush | |
- sarg | [] |
- screem | [] [] |
- scrollkeeper | [] [] [] [] |
- sed | [] [] [] [] [] [] [] [] |
- sharutils | [] [] [] [] [] [] [] |
- shishi | [] |
- skencil | [] |
- solfege | [] [] [] [] |
- solfege-manual | [] [] |
- soundtracker | [] [] |
- sp | [] () |
- sysstat | [] [] [] [] [] |
- tar | [] [] [] [] [] [] [] |
- texinfo | [] [] [] [] |
- tin | [] |
- unicode-han-tra... | |
- unicode-transla... | [] [] |
- util-linux-ng | [] [] [] [] [] [] |
- vice | () () () |
- vmm | [] |
- vorbis-tools | [] |
- wastesedge | () () |
- wdiff | [] |
- wget | [] [] [] [] [] [] [] [] |
- wyslij-po | [] [] [] |
- xchat | [] [] [] [] [] [] [] [] [] |
- xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] [] [] |
- xkeyboard-config | [] [] [] [] [] |
- +----------------------------------------------------+
- fi fr ga gl gu he hi hr hu hy id is it ja ka kn
- 105 121 53 20 4 8 3 5 53 2 120 5 84 67 0 4
+ fr ga gl gu he hi hr hu hy id is it ja ka kn
+ +------------------------------------------------+
+ a2ps | [] [] [] |
+ aegis | [] [] |
+ ant-phone | [] [] |
+ anubis | [] [] [] |
+ aspell | [] [] [] [] |
+ bash | [] [] [] |
+ bfd | [] [] |
+ bibshelf | [] [] [] [] |
+ binutils | [] [] |
+ bison | [] [] [] |
+ bison-runtime | [] [] [] [] [] |
+ bluez-pin | [] [] [] [] [] [] [] |
+ bombono-dvd | |
+ buzztard | [] |
+ cflow | [] [] |
+ clisp | [] |
+ coreutils | [] [] [] [] [] |
+ cpio | [] [] [] |
+ cppi | [] |
+ cpplib | [] [] |
+ cryptsetup | [] [] [] |
+ dfarc | [] [] |
+ dialog | [] [] [] [] [] [] [] |
+ dico | |
+ diffutils | [] [] [] [] [] [] [] [] |
+ dink | [] |
+ doodle | [] [] |
+ e2fsprogs | [] [] |
+ enscript | [] [] [] [] |
+ exif | [] [] [] [] [] |
+ fetchmail | [] [] [] [] |
+ findutils | [] [] [] [] [] |
+ flex | [] [] |
+ freedink | [] [] |
+ gas | [] [] |
+ gawk | [] [] [] [] () [] |
+ gcal | [] |
+ gcc | [] |
+ gettext-examples | [] [] [] [] [] [] |
+ gettext-runtime | [] [] [] [] [] |
+ gettext-tools | [] [] [] [] |
+ gip | [] [] [] [] [] |
+ gjay | |
+ gliv | () |
+ glunarclock | [] [] [] |
+ gnubiff | () [] () |
+ gnucash | () () () () [] |
+ gnuedu | [] [] |
+ gnulib | [] [] [] [] [] |
+ gnunet | |
+ gnunet-gtk | [] |
+ gnutls | [] [] |
+ gold | [] |
+ gpe-aerial | [] [] |
+ gpe-beam | [] [] [] |
+ gpe-bluetooth | [] [] [] |
+ gpe-calendar | [] |
+ gpe-clock | [] [] [] [] |
+ gpe-conf | [] [] [] |
+ gpe-contacts | [] [] [] |
+ gpe-edit | [] [] |
+ gpe-filemanager | [] [] [] |
+ gpe-go | [] [] [] [] |
+ gpe-login | [] [] |
+ gpe-ownerinfo | [] [] [] [] |
+ gpe-package | [] [] |
+ gpe-sketchbook | [] [] [] |
+ gpe-su | [] [] [] [] [] |
+ gpe-taskmanager | [] [] [] [] |
+ gpe-timesheet | [] [] [] [] |
+ gpe-today | [] [] [] [] [] [] |
+ gpe-todo | [] [] |
+ gphoto2 | [] [] [] [] [] |
+ gprof | [] [] [] |
+ gpsdrive | [] [] [] |
+ gramadoir | [] [] [] |
+ grep | [] |
+ grub | [] [] [] |
+ gsasl | [] [] [] [] |
+ gss | [] [] [] [] |
+ gst-plugins-bad | [] [] [] [] |
+ gst-plugins-base | [] [] [] [] [] |
+ gst-plugins-good | [] [] [] [] [] |
+ gst-plugins-ugly | [] [] [] [] [] |
+ gstreamer | [] [] [] [] |
+ gtick | [] [] [] [] |
+ gtkam | [] [] [] [] [] |
+ gtkorphan | [] [] [] |
+ gtkspell | [] [] [] [] [] [] [] [] |
+ gutenprint | [] [] [] |
+ hello | [] [] |
+ help2man | [] |
+ hylafax | [] |
+ idutils | [] [] [] [] [] |
+ indent | [] [] [] [] [] [] [] |
+ iso_15924 | () [] [] |
+ iso_3166 | () [] [] [] [] [] [] [] [] [] [] |
+ iso_3166_2 | () [] [] [] |
+ iso_4217 | () [] [] [] [] |
+ iso_639 | () [] [] [] [] [] [] [] |
+ iso_639_3 | () [] [] |
+ jwhois | [] [] [] [] |
+ kbd | [] [] |
+ keytouch | [] [] [] [] [] |
+ keytouch-editor | [] [] [] [] |
+ keytouch-keyboa... | [] [] [] [] |
+ klavaro | [] [] |
+ latrine | [] [] |
+ ld | [] [] [] |
+ leafpad | [] [] [] [] [] [] () |
+ libc | [] [] [] [] |
+ libexif | |
+ libextractor | |
+ libgnutls | [] [] |
+ libgpewidget | [] [] [] |
+ libgpg-error | [] [] |
+ libgphoto2 | [] [] [] |
+ libgphoto2_port | [] [] [] |
+ libgsasl | [] [] [] [] |
+ libiconv | [] [] [] [] [] |
+ libidn | [] [] [] |
+ lifelines | () |
+ liferea | [] [] [] [] |
+ lilypond | [] |
+ linkdr | [] [] [] [] |
+ lordsawar | |
+ lprng | [] |
+ lynx | [] [] [] [] [] |
+ m4 | [] [] [] [] [] |
+ mailfromd | |
+ mailutils | [] [] |
+ make | [] [] [] [] [] [] [] [] |
+ man-db | [] [] |
+ man-db-manpages | [] |
+ minicom | [] [] [] [] |
+ mkisofs | [] [] [] |
+ myserver | |
+ nano | [] [] [] [] [] |
+ opcodes | [] [] [] |
+ parted | [] [] [] [] |
+ pies | |
+ popt | [] [] [] [] [] [] [] [] |
+ psmisc | [] [] |
+ pspp | |
+ pwdutils | [] [] |
+ radius | [] [] |
+ recode | [] [] [] [] [] [] [] |
+ rosegarden | () () () () |
+ rpm | [] [] |
+ rush | |
+ sarg | [] |
+ screem | [] [] |
+ scrollkeeper | [] [] [] |
+ sed | [] [] [] [] [] [] [] |
+ sharutils | [] [] [] [] [] [] |
+ shishi | [] |
+ skencil | [] |
+ solfege | [] [] [] |
+ solfege-manual | [] [] |
+ soundtracker | [] [] |
+ sp | [] () |
+ sysstat | [] [] [] [] |
+ tar | [] [] [] [] [] [] |
+ texinfo | [] [] [] [] |
+ tin | [] |
+ unicode-han-tra... | |
+ unicode-transla... | [] [] |
+ util-linux-ng | [] [] [] [] [] |
+ vice | () () () |
+ vmm | [] |
+ vorbis-tools | [] |
+ wastesedge | () () |
+ wdiff | |
+ wget | [] [] [] [] [] [] [] |
+ wyslij-po | [] [] |
+ xchat | [] [] [] [] [] [] [] [] |
+ xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] |
+ xkeyboard-config | [] [] [] [] |
+ +------------------------------------------------+
+ fr ga gl gu he hi hr hu hy id is it ja ka kn
+ 121 53 20 4 8 2 5 53 2 120 5 83 66 0 4
ko ku ky lg lt lv mk ml mn mr ms mt nb nds ne
+-----------------------------------------------+
@@ -775,7 +820,7 @@ translation percentage of at least 50%.
grub | |
gsasl | |
gss | |
- gst-plugins-bad | [] [] [] [] |
+ gst-plugins-bad | [] [] |
gst-plugins-base | [] [] |
gst-plugins-good | [] [] |
gst-plugins-ugly | [] [] [] [] [] |
@@ -875,7 +920,7 @@ translation percentage of at least 50%.
xkeyboard-config | [] [] [] |
+-----------------------------------------------+
ko ku ky lg lt lv mk ml mn mr ms mt nb nds ne
- 20 5 10 1 13 48 4 2 2 4 24 10 20 3 1
+ 20 5 10 1 12 48 4 2 2 4 24 10 19 3 1
nl nn or pa pl ps pt pt_BR ro ru rw sk sl sq sr
+---------------------------------------------------+
@@ -959,7 +1004,7 @@ translation percentage of at least 50%.
grub | [] [] [] |
gsasl | [] [] [] [] |
gss | [] [] [] |
- gst-plugins-bad | [] [] [] [] [] [] |
+ gst-plugins-bad | [] [] [] [] [] |
gst-plugins-base | [] [] [] [] [] |
gst-plugins-good | [] [] [] [] [] |
gst-plugins-ugly | [] [] [] [] [] [] |
@@ -996,7 +1041,7 @@ translation percentage of at least 50%.
libgpewidget | [] [] [] |
libgpg-error | [] [] |
libgphoto2 | [] [] |
- libgphoto2_port | [] [] [] [] [] |
+ libgphoto2_port | [] [] [] [] |
libgsasl | [] [] [] [] [] |
libiconv | [] [] [] [] [] |
libidn | [] [] |
@@ -1056,10 +1101,10 @@ translation percentage of at least 50%.
wyslij-po | [] [] [] |
xchat | [] [] [] [] [] [] [] [] [] |
xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] [] [] [] |
- xkeyboard-config | [] [] [] |
+ xkeyboard-config | [] [] [] [] [] |
+---------------------------------------------------+
nl nn or pa pl ps pt pt_BR ro ru rw sk sl sq sr
- 135 10 4 7 105 1 29 62 47 91 3 54 46 9 37
+ 135 10 4 7 105 1 29 61 47 91 3 55 47 8 37
sv sw ta te tg th tr uk vi wa zh_CN zh_HK zh_TW
+---------------------------------------------------+
@@ -1068,7 +1113,7 @@ translation percentage of at least 50%.
ant-phone | [] [] [] [] | 9
anubis | [] [] [] [] | 15
aspell | [] [] [] | 20
- bash | [] [] [] | 12
+ bash | [] [] | 11
bfd | [] | 6
bibshelf | [] [] [] | 16
binutils | [] [] | 8
@@ -1082,7 +1127,7 @@ translation percentage of at least 50%.
coreutils | [] [] [] [] | 22
cpio | [] [] [] [] [] [] | 13
cppi | [] [] | 5
- cpplib | [] [] [] [] [] [] | 14
+ cpplib | [] [] [] [] [] [] | 13
cryptsetup | [] [] | 7
dfarc | [] | 9
dialog | [] [] [] [] [] [] [] | 30
@@ -1102,14 +1147,14 @@ translation percentage of at least 50%.
gcal | [] [] | 5
gcc | [] [] [] | 7
gettext-examples | [] [] [] [] [] [] [] | 34
- gettext-runtime | [] [] [] [] [] [] [] | 29
+ gettext-runtime | [] [] [] [] [] [] [] | 30
gettext-tools | [] [] [] [] [] [] | 22
gip | [] [] [] [] | 22
gjay | [] | 3
gliv | [] [] [] | 14
glunarclock | [] [] [] [] [] | 19
gnubiff | [] [] | 4
- gnucash | () [] () [] () | 10
+ gnucash | () [] () () | 9
gnuedu | [] [] | 7
gnulib | [] [] [] [] | 16
gnunet | [] | 1
@@ -1143,9 +1188,9 @@ translation percentage of at least 50%.
grub | [] [] [] | 14
gsasl | [] [] [] [] | 14
gss | [] [] [] | 11
- gst-plugins-bad | [] [] [] [] | 26
+ gst-plugins-bad | [] [] [] [] | 22
gst-plugins-base | [] [] [] [] [] | 24
- gst-plugins-good | [] [] [] [] | 24
+ gst-plugins-good | [] [] [] [] [] | 25
gst-plugins-ugly | [] [] [] [] [] | 29
gstreamer | [] [] [] [] | 22
gtick | [] [] [] | 13
@@ -1174,13 +1219,13 @@ translation percentage of at least 50%.
ld | [] [] [] [] | 11
leafpad | [] [] [] [] [] [] | 33
libc | [] [] [] [] [] | 21
- libexif | [] () | 7
+ libexif | [] () | 6
libextractor | [] | 1
libgnutls | [] [] [] | 9
libgpewidget | [] [] [] | 14
libgpg-error | [] [] [] | 9
libgphoto2 | [] [] | 8
- libgphoto2_port | [] [] [] [] | 14
+ libgphoto2_port | [] [] [] [] | 13
libgsasl | [] [] [] | 13
libiconv | [] [] [] [] | 21
libidn | () [] [] | 11
@@ -1226,7 +1271,7 @@ translation percentage of at least 50%.
sp | [] | 3
sysstat | [] [] | 15
tar | [] [] [] [] [] [] | 23
- texinfo | [] [] [] [] [] | 17
+ texinfo | [] [] [] [] | 16
tin | | 4
unicode-han-tra... | | 0
unicode-transla... | | 2
@@ -1239,11 +1284,11 @@ translation percentage of at least 50%.
wget | [] [] [] [] [] | 26
wyslij-po | [] [] | 8
xchat | [] [] [] [] [] [] | 36
- xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] | 63
- xkeyboard-config | [] [] [] | 22
+ xdg-user-dirs | [] [] [] [] [] [] [] [] [] | 60
+ xkeyboard-config | [] [] [] [] | 25
+---------------------------------------------------+
- 85 teams sv sw ta te tg th tr uk vi wa zh_CN zh_HK zh_TW
- 178 domains 119 1 3 3 0 10 65 51 155 17 98 7 41 2618
+ 84 teams sv sw ta te tg th tr uk vi wa zh_CN zh_HK zh_TW
+ 178 domains 119 1 3 2 0 10 66 50 155 17 97 7 41 2610
Some counters in the preceding matrix are higher than the number of
visible blocks let us expect. This is because a few extra PO files are
@@ -1256,12 +1301,12 @@ distributed as such by its maintainer. There might be an observable
lag between the mere existence a PO file and its wide availability in a
distribution.
- If June 2010 seems to be old, you may fetch a more recent copy of
+ If May 2010 seems to be old, you may fetch a more recent copy of
this `ABOUT-NLS' file on most GNU archive sites. The most up-to-date
matrix with full percentage details can be found at
`http://translationproject.org/extra/matrix.html'.
-1.5 Using `gettext' in new packages
+1.6 Using `gettext' in new packages
===================================
If you are writing a freely available program and want to
diff --git a/Makefile.am b/Makefile.am
index fd8eb1a..638c549 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -29,21 +29,19 @@
# to DEFS.
ACLOCAL_AMFLAGS = -I m4
-indent = @INDENT@
dist_doc_DATA = \
AUTHORS \
COPYING \
NEWS \
ONEWS \
- README
+ README.md
EXTRA_DIST = \
.indent.pro \
autogen.sh
SUBDIRS = \
- lib \
src \
doc \
examples \
@@ -58,8 +56,11 @@ ChangeLog: $(srcdir)/tools/git2cl
$(srcdir)/tools/git2cl > $@ \
; fi
+indent:
+ cd src && $(MAKE) $(AM_MAKEFLAGS) indent
+
install-exec-hook:
cd $(DESTDIR)$(bindir) && \
$(LN_S) -f flex$(EXEEXT) flex++$(EXEEXT)
-.PHONY: ChangeLog tags indent
+.PHONY: ChangeLog indent
diff --git a/NEWS b/NEWS
index 2dce029..85d900b 100644
--- a/NEWS
+++ b/NEWS
@@ -1,7 +1,143 @@
-This is the file NEWS for the flex package. It records user -visible
-changes between releases of flex.
+flex NEWS
-See the file COPYING for copying conditions.
+* Noteworthy changes in release 2.6.4 (2017-05-06) [stable]
+
+** build
+
+*** The indent target now knows about flex's new (as of 2.6.0)
+ layout. The indent rules it would apply are not correct and do
+ need to be fixed.
+
+*** The files included in the flex distribution are now built by the
+ version of flex that is included in the distribution.
+
+*** The configure script has a better idea of which headers are
+ required to build flex. It will also error when missing functions
+ are detected.
+
+*** We have lowered the versions of automake and gettext that
+ configure.ac lists as required for building flex. In autogen.sh,
+ we now check for how to call libtoolize and use what we find in
+ the rest of the script.
+
+*** Since files in lib/ are picked up as needed by src/, we no longer
+ generate a Makefile for that directory.
+
+*** Flex can be cross compiled.
+
+** documentation
+
+*** Some typos were removed from the manual.
+
+** scanner
+
+*** Some minor performance enhancements.
+
+*** We honor user defined yy_* macros again. We are also more careful
+ to not leak macro definitions into header files.
+
+*** A number of portability fixes were introduced so building flex is
+ more reliable on more platforms. Additionally, outdated function
+ calls were removed.
+
+*** When building the flex executable itself, %# comments from
+ flex.skl are removed when generating the C source code array. This
+ reduces the size of flex.
+
+** test suite
+
+*** All scripts in the test suite are now run by $(SHELL) and the
+ needed portability fixes have been included.
+
+*** Test suite dependencies are handled much better. This only matters
+ if you are actively developing flex or its test suite.
+
+*** Tests that depend on platform dependent features now properly skip
+ when those platforms are not present.
+
+*** When running "make check", you can now pas V=0 to silence more of
+ the build. This is useful when you're less connncerned about the
+ details of building and linking the test programs themselves.
+
+* Noteworthy changes in release 2.6.3 (2016-12-30) [stable]
+
+** scanner
+
+*** several bug fixes resolved problems introduced in recent flex
+ versions regarding processing of comments, literals and various
+ quoting scenarios.
+
+*** If the path to m4 was sufficiently long, a buffer overflow could
+ occur. This has been resolved. The fix also removes dependence on
+ the constant PATH_MAX.
+
+** build
+
+*** A new configure option --disable-bootstrap changes the behavior of
+ the build system when building flex. The default
+ "--enable-bootstrap" behavior is to build flex, then to use that
+ flex to build flex again. With --disable-bootstrap, the scanner is
+ simply built by sedding the scanner source. This is friendlier to
+ cross compilation.
+
+*** The compatibility functions in lib/ are no longer built as a
+ library. Instead, they are built as $(LIBOBJ) objects. This is
+ simpler and friendlier to cross compilation.
+
+*** It is now possible to build flex without building the accompanying
+ libfl. This is friendlier to cross compilation. See the
+ --disable-libfl option to configure. Resolves #99.
+
+*** the PIC version of libfl was not correctly built. It is no longer
+ included in the build/installation targets of flex since it was
+ unused.
+
+*** the distributed man page is only rebuilt when the relevant source
+ files change or when the binary doesn't exist. In particular, this
+ is friendlier to cross compilation. Resolves #108
+
+** test
+
+*** the shell scripts in the test suite are more portable across different shell implementations.
+
+* version 2.6.2 released 2016-10-24
+
+** flex internals
+
+*** a segfalt involving yyrestart(NULL) has been fixed
+
+*** flex should now handle quoting when mixed with m4 processing correctly
+
+*** flex handles `[[' and `]]' correctly
+
+*** flex no longer generates non-ANSI code
+
+*** more compilation warnings were squashed in generated scanners
+
+*** prevented a buffer overflow that could occur when input buffers were the exact wrong size
+
+** test suite
+
+*** input filenames on MSWindows are now calculated correctly
+
+*** general code cleanups in a number of tests now make the test suite compile much more cleanly
+
+** build system
+
+*** the xz archive has been replaced with an lzip archive
+
+*** a new option to configure --enable-warnings to encapsulate passing
+ of warning-related flags which is useful in testing flex
+
+*** make indent now works for out of source builds
+
+*** Portability warnings when generating Makefile.in files are now suppressed; they were just noise and the use of GNU extensions in Makefile.{am,in,} was intentional and well known.
+
+** bugs
+
+*** resolved gh#67
+
+** new sv translation from the translation project
* version 2.6.1 released 2016-03-01
@@ -602,6 +738,8 @@ But the inverse is still true
See the file ONEWS for changes in earlier releases.
+See the file COPYING for copying conditions.
+
Local Variables:
mode: text
mode: outline-minor
diff --git a/README b/README
deleted file mode 100644
index 4d60614..0000000
--- a/README
+++ /dev/null
@@ -1,113 +0,0 @@
-This is flex, the fast lexical analyzer generator.
-
-flex is a tool for generating scanners: programs which recognize
-lexical patterns in text.
-
-More information about flex as well as the latest official release of
-flex can be found at:
-
-http://flex.sourceforge.net/
-
-The flex codebase is kept in git at:
-
-https://github.com/westes/flex
-
-Bugs and pull requests should be filed against flex using github's
-issue tracker and pull request facilities.
-
-There are several mailing lists available as well:
-
-flex-announce@lists.sourceforge.net - where posts will be made
-announcing new releases of flex.
-
-flex-help@lists.sourceforge.net - where you can post questions about
-using flex
-
-flex-devel@lists.sourceforge.net - where you can discuss development of
-flex itself
-
-Find information on subscribing to the mailing lists at:
-
-http://sourceforge.net/mail/?group_id=97492
-
-The flex distribution contains the following files which may be of interest:
-
-README - This file.
-NEWS - current version number and list of user-visible changes.
-INSTALL - basic installation information.
-ABOUT-NLS - description of internationalization support in flex.
-COPYING - flex's copyright and license.
-doc/ - user documentation.
-examples/ - containing examples of some possible flex scanners and a
- few other things. See the file examples/README for more details.
-TODO - outstanding bug reports, desired features, etc.
-tests/ - regression tests. See TESTS/README for details.
-po/ - internationalization support files.
-
-You need the following tools to build flex from the maintainer's
-repository:
-
-compiler suite - flex is built with gcc
-bash, or a good Bourne-style shell
-m4 - m4 -p needs to work; GNU m4 and a few others are suitable
-GNU bison; to generate parse.c from parse.y
-autoconf; for handling the build system
-automake; for Makefile generation
-gettext; for i18n support
-help2man; to generate the flex man page
-tar, gzip, etc.; for packaging of the source distribution
-
-GNU texinfo; to build and test the flex manual. Note that if you want
-to build the dvi/ps/pdf versions of the documentation you will need
-texi2dvi and related programs, along with a sufficiently powerful
-implementation of \TeX to process them. See your operating system
-documentation for how to achieve this. The printable versions of the
-manual are not built unless specifically requested, but the targets
-are included by automake.
-
-GNU indent; for indenting the flex source the way we want it done
-
-In cases where the versions of the above tools matter, the file
-configure.ac will specify the minimum required versions.
-
-Once you have all the necessary tools installed, life becomes
-simple. To prepare the flex tree for building, run the script:
-
-$ ./autogen.sh
-
-in the top level of the flex source tree.
-This script calls the various tools needed to get flex ready for the
-GNU-style configure script to be able to work.
-
-From this point on, building flex follows the usual configure, make,
-make install routine.
-
-This file is part of flex.
-
-This code is derived from software contributed to Berkeley by
-Vern Paxson.
-
-The United States Government has rights in this work pursuant
-to contract no. DE-AC03-76SF00098 between the United States
-Department of Energy and the University of California.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions
-are met:
-
-1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in the
- documentation and/or other materials provided with the distribution.
-
-Neither the name of the University nor the names of its contributors
-may be used to endorse or promote products derived from this software
-without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
-IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE.
-
-
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..b979b01
--- /dev/null
+++ b/README.md
@@ -0,0 +1,109 @@
+This is flex, the fast lexical analyzer generator.
+
+flex is a tool for generating scanners: programs which recognize
+lexical patterns in text.
+
+The flex codebase is kept in
+[Git on GitHub.](https://github.com/westes/flex)
+
+Use GitHub's [issues](https://github.com/westes/flex/issues) and
+[pull request](https://github.com/westes/flex) features to file bugs
+and submit patches.
+
+There are several mailing lists available as well:
+
+* flex-announce@lists.sourceforge.net - where posts will be made
+ announcing new releases of flex.
+* flex-help@lists.sourceforge.net - where you can post questions about
+ using flex
+* flex-devel@lists.sourceforge.net - where you can discuss development
+ of flex itself
+
+Find information on subscribing to the mailing lists at:
+
+http://sourceforge.net/mail/?group_id=97492
+
+The flex distribution contains the following files which may be of
+interest:
+
+* README - This file.
+* NEWS - current version number and list of user-visible changes.
+* INSTALL - basic installation information.
+* ABOUT-NLS - description of internationalization support in flex.
+* COPYING - flex's copyright and license.
+* doc/ - user documentation.
+* examples/ - containing examples of some possible flex scanners and a
+ few other things. See the file examples/README for more
+ details.
+* tests/ - regression tests. See TESTS/README for details.
+* po/ - internationalization support files.
+
+You need the following tools to build flex from the maintainer's
+repository:
+
+* compiler suite - flex is built with gcc
+* bash, or a good Bourne-style shell
+* m4 - m4 -p needs to work; GNU m4 and a few others are suitable
+* GNU bison; to generate parse.c from parse.y
+* autoconf; for handling the build system
+* automake; for Makefile generation
+* gettext; for i18n support
+* help2man; to generate the flex man page
+* tar, gzip, lzip, etc.; for packaging of the source distribution
+* GNU texinfo; to build and test the flex manual. Note that if you want
+ to build the dvi/ps/pdf versions of the documentation you will need
+ texi2dvi and related programs, along with a sufficiently powerful
+ implementation of TeX to process them. See your operating system
+ documentation for how to achieve this. The printable versions of the
+ manual are not built unless specifically requested, but the targets
+ are included by automake.
+* GNU indent; for indenting the flex source the way we want it done
+
+In cases where the versions of the above tools matter, the file
+configure.ac will specify the minimum required versions.
+
+Once you have all the necessary tools installed, life becomes
+simple. To prepare the flex tree for building, run the script:
+
+```bash
+./autogen.sh
+```
+
+in the top level of the flex source tree.
+
+This script calls the various tools needed to get flex ready for the
+GNU-style configure script to be able to work.
+
+From this point on, building flex follows the usual routine:
+
+```bash
+configure && make && make install
+```
+
+This file is part of flex.
+
+This code is derived from software contributed to Berkeley by
+Vern Paxson.
+
+The United States Government has rights in this work pursuant
+to contract no. DE-AC03-76SF00098 between the United States
+Department of Energy and the University of California.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+
+1. Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+
+Neither the name of the University nor the names of its contributors
+may be used to endorse or promote products derived from this software
+without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
+IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE.
diff --git a/TODO b/TODO
deleted file mode 100644
index 702a6db..0000000
--- a/TODO
+++ /dev/null
@@ -1,66 +0,0 @@
-* the manual:
-
-** do an end-to-end proofread of the manual (this is under way, but is
- going slowly)
-
-** pretty up the dvi output; overflows, etc.
-
-** faq
-
-*** clean up the faqs section. The information is good; the texinfo
- could use some touching up.
-
-*** index the faq entries
-
-*** mention that it's possible to use a variable to scan matching
- brackets, nested comments etc.
-
-*** include something about lexing/parsing fortran
-
-** create a section on flex design, features, etc.
-
-* getext
-
-** make sure all flex modules use gettext translation facilities
-
-*subdirectories
-
-** in examples/manual, integrate the Makefile.examples into the
- Makefile.am
-
-* test suite
-
-** integrate the test suite into automake's framework (note that the
- test suite can be run from the top level directory with "make
- check". Still, we want to get it completely under automake's control.)
-
-** make test suite more complete
-
-* generic coding
-
-** move as much skeleton code as possible out of gen.c and into
- flex.skl
-
-** figure out whether we want to add the capability to have
- auto-generated backout rules
-
-** token-type and token buffer support
-
-** check if we still need to #undef macros at the end of a header
-
-** merge yylineno into support for location tracking
-
-** bug where yylineno is not decremented on REJECT
-
-** bug where yylineno is counted in trailing context
-
-* C++
-
-** have a separate skeleton for c++
-
-** revisit the C++ API. We get requests to make it more complete.
-
-Local Variables:
-Mode: text
-mode: outline-minor
-End:
diff --git a/autogen.sh b/autogen.sh
index 46611bf..6802e9f 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -24,10 +24,28 @@
# If you see no configure script, then run ./autogen.sh to create it
# and procede with the "normal" build procedures.
+# use LIBTOOLIZE, if set
+LIBTOOLIZE_ORIG="$LIBTOOLIZE";
+if test "x$LIBTOOLIZE" = "x"; then LIBTOOLIZE=libtoolize; fi
+
+# test libtoolize
+$LIBTOOLIZE --version 2>/dev/null
+if test "$?" -ne 0; then
+ LIBTOOLIZE=glibtoolize
+ $LIBTOOLIZE --version 2>/dev/null
+ if test "$?" -ne 0; then
+ echo "error: libtoolize not working, re-run with LIBTOOLIZE=/path/to/libtoolize"
+ echo " LIBTOOLIZE is currently \"$LIBTOOLIZE_ORIG\""
+ exit 1
+ fi
+fi
+
#if we pretend to have a ChangeLog, then automake is less
#worried. (Don't worry, we *do* have a ChangeLog, we just need the
#Makefile first.)
-touch ChangeLog
-libtoolize --install --force || glibtoolize --install --force
+if ! test -f ChangeLog; then
+ touch ChangeLog
+fi
+"$LIBTOOLIZE" --install --force
autoreconf --install --force
diff --git a/build-aux/config.rpath b/build-aux/config.rpath
index ab6fd99..17298f2 100755
--- a/build-aux/config.rpath
+++ b/build-aux/config.rpath
@@ -2,7 +2,7 @@
# Output a system dependent set of variables, describing how to set the
# run time search path of shared libraries in an executable.
#
-# Copyright 1996-2014 Free Software Foundation, Inc.
+# Copyright 1996-2010 Free Software Foundation, Inc.
# Taken from GNU libtool, 2001
# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
#
@@ -25,7 +25,7 @@
# known workaround is to choose shorter directory names for the build
# directory and/or the installation directory.
-# All known linkers require a '.a' archive for static linking (except MSVC,
+# All known linkers require a `.a' archive for static linking (except MSVC,
# which needs '.lib').
libext=a
shrext=.so
@@ -57,6 +57,13 @@ else
aix*)
wl='-Wl,'
;;
+ darwin*)
+ case $cc_basename in
+ xlc*)
+ wl='-Wl,'
+ ;;
+ esac
+ ;;
mingw* | cygwin* | pw32* | os2* | cegcc*)
;;
hpux9* | hpux10* | hpux11*)
@@ -65,7 +72,9 @@ else
irix5* | irix6* | nonstopux*)
wl='-Wl,'
;;
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
+ newsos6)
+ ;;
+ linux* | k*bsd*-gnu)
case $cc_basename in
ecc*)
wl='-Wl,'
@@ -76,26 +85,17 @@ else
lf95*)
wl='-Wl,'
;;
- nagfor*)
- wl='-Wl,-Wl,,'
- ;;
- pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
+ pgcc | pgf77 | pgf90)
wl='-Wl,'
;;
ccc*)
wl='-Wl,'
;;
- xl* | bgxl* | bgf* | mpixl*)
- wl='-Wl,'
- ;;
como)
wl='-lopt='
;;
*)
case `$CC -V 2>&1 | sed 5q` in
- *Sun\ F* | *Sun*Fortran*)
- wl=
- ;;
*Sun\ C*)
wl='-Wl,'
;;
@@ -103,24 +103,13 @@ else
;;
esac
;;
- newsos6)
- ;;
- *nto* | *qnx*)
- ;;
osf3* | osf4* | osf5*)
wl='-Wl,'
;;
rdos*)
;;
solaris*)
- case $cc_basename in
- f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
- wl='-Qoption ld '
- ;;
- *)
- wl='-Wl,'
- ;;
- esac
+ wl='-Wl,'
;;
sunos4*)
wl='-Qoption ld '
@@ -182,14 +171,15 @@ if test "$with_gnu_ld" = yes; then
fi
;;
amigaos*)
- case "$host_cpu" in
- powerpc)
- ;;
- m68k)
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
- ;;
- esac
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
+ # that the semantics of dynamic libraries on AmigaOS, at least up
+ # to version 4, is to share data among multiple programs linked
+ # with the same dynamic library. Since this doesn't match the
+ # behavior of shared libraries on other platforms, we cannot use
+ # them.
+ ld_shlibs=no
;;
beos*)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
@@ -208,13 +198,11 @@ if test "$with_gnu_ld" = yes; then
ld_shlibs=no
fi
;;
- haiku*)
- ;;
interix[3-9]*)
hardcode_direct=no
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
;;
- gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
+ gnu* | linux* | k*bsd*-gnu)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
:
else
@@ -337,14 +325,10 @@ else
fi
;;
amigaos*)
- case "$host_cpu" in
- powerpc)
- ;;
- m68k)
- hardcode_libdir_flag_spec='-L$libdir'
- hardcode_minus_L=yes
- ;;
- esac
+ hardcode_libdir_flag_spec='-L$libdir'
+ hardcode_minus_L=yes
+ # see comment about different semantics on the GNU ld section
+ ld_shlibs=no
;;
bsdi[45]*)
;;
@@ -358,15 +342,24 @@ else
;;
darwin* | rhapsody*)
hardcode_direct=no
- if { case $cc_basename in ifort*) true;; *) test "$GCC" = yes;; esac; }; then
+ if test "$GCC" = yes ; then
:
else
- ld_shlibs=no
+ case $cc_basename in
+ xlc*)
+ ;;
+ *)
+ ld_shlibs=no
+ ;;
+ esac
fi
;;
dgux*)
hardcode_libdir_flag_spec='-L$libdir'
;;
+ freebsd1*)
+ ld_shlibs=no
+ ;;
freebsd2.2*)
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes
@@ -427,8 +420,6 @@ else
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=:
;;
- *nto* | *qnx*)
- ;;
openbsd*)
if test -f /usr/libexec/ld.so; then
hardcode_direct=yes
@@ -524,12 +515,7 @@ case "$host_os" in
library_names_spec='$libname$shrext'
;;
amigaos*)
- case "$host_cpu" in
- powerpc*)
- library_names_spec='$libname$shrext' ;;
- m68k)
- library_names_spec='$libname.a' ;;
- esac
+ library_names_spec='$libname.a'
;;
beos*)
library_names_spec='$libname$shrext'
@@ -548,6 +534,8 @@ case "$host_os" in
dgux*)
library_names_spec='$libname$shrext'
;;
+ freebsd1*)
+ ;;
freebsd* | dragonfly*)
case "$host_os" in
freebsd[123]*)
@@ -559,9 +547,6 @@ case "$host_os" in
gnu*)
library_names_spec='$libname$shrext'
;;
- haiku*)
- library_names_spec='$libname$shrext'
- ;;
hpux9* | hpux10* | hpux11*)
case $host_cpu in
ia64*)
@@ -597,7 +582,7 @@ case "$host_os" in
;;
linux*oldld* | linux*aout* | linux*coff*)
;;
- linux* | k*bsd*-gnu | kopensolaris*-gnu)
+ linux* | k*bsd*-gnu)
library_names_spec='$libname$shrext'
;;
knetbsd*-gnu)
@@ -609,7 +594,7 @@ case "$host_os" in
newsos6)
library_names_spec='$libname$shrext'
;;
- *nto* | *qnx*)
+ nto-qnx*)
library_names_spec='$libname$shrext'
;;
openbsd*)
@@ -640,9 +625,6 @@ case "$host_os" in
sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
library_names_spec='$libname$shrext'
;;
- tpf*)
- library_names_spec='$libname$shrext'
- ;;
uts4*)
library_names_spec='$libname$shrext'
;;
diff --git a/build-aux/ltmain.sh b/build-aux/ltmain.sh
index 0f0a2da..a736cf9 100644
--- a/build-aux/ltmain.sh
+++ b/build-aux/ltmain.sh
@@ -31,7 +31,7 @@
PROGRAM=libtool
PACKAGE=libtool
-VERSION=2.4.6
+VERSION="2.4.6 Debian-2.4.6-2"
package_revision=2.4.6
@@ -2068,12 +2068,12 @@ include the following information:
compiler: $LTCC
compiler flags: $LTCFLAGS
linker: $LD (gnu? $with_gnu_ld)
- version: $progname (GNU libtool) 2.4.6
+ version: $progname $scriptversion Debian-2.4.6-2
automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q`
autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q`
Report bugs to <bug-libtool@gnu.org>.
-GNU libtool home page: <http://www.gnu.org/software/libtool/>.
+GNU libtool home page: <http://www.gnu.org/s/libtool/>.
General help using GNU software: <http://www.gnu.org/gethelp/>."
exit 0
}
@@ -7272,10 +7272,13 @@ func_mode_link ()
# -tp=* Portland pgcc target processor selection
# --sysroot=* for sysroot support
# -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
+ # -specs=* GCC specs files
# -stdlib=* select c++ std lib with clang
+ # -fsanitize=* Clang/GCC memory and address sanitizer
-64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
-t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
- -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*)
+ -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
+ -specs=*|-fsanitize=*)
func_quote_for_eval "$arg"
arg=$func_quote_for_eval_result
func_append compile_command " $arg"
@@ -7568,7 +7571,10 @@ func_mode_link ()
case $pass in
dlopen) libs=$dlfiles ;;
dlpreopen) libs=$dlprefiles ;;
- link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
+ link)
+ libs="$deplibs %DEPLIBS%"
+ test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs"
+ ;;
esac
fi
if test lib,dlpreopen = "$linkmode,$pass"; then
@@ -7887,19 +7893,19 @@ func_mode_link ()
# It is a libtool convenience library, so add in its objects.
func_append convenience " $ladir/$objdir/$old_library"
func_append old_convenience " $ladir/$objdir/$old_library"
+ tmp_libs=
+ for deplib in $dependency_libs; do
+ deplibs="$deplib $deplibs"
+ if $opt_preserve_dup_deps; then
+ case "$tmp_libs " in
+ *" $deplib "*) func_append specialdeplibs " $deplib" ;;
+ esac
+ fi
+ func_append tmp_libs " $deplib"
+ done
elif test prog != "$linkmode" && test lib != "$linkmode"; then
func_fatal_error "'$lib' is not a convenience library"
fi
- tmp_libs=
- for deplib in $dependency_libs; do
- deplibs="$deplib $deplibs"
- if $opt_preserve_dup_deps; then
- case "$tmp_libs " in
- *" $deplib "*) func_append specialdeplibs " $deplib" ;;
- esac
- fi
- func_append tmp_libs " $deplib"
- done
continue
fi # $pass = conv
@@ -8823,6 +8829,9 @@ func_mode_link ()
revision=$number_minor
lt_irix_increment=no
;;
+ *)
+ func_fatal_configuration "$modename: unknown library version type '$version_type'"
+ ;;
esac
;;
no)
diff --git a/build-aux/ylwrap b/build-aux/ylwrap
index 7c2d927..d788f2d 100755
--- a/build-aux/ylwrap
+++ b/build-aux/ylwrap
@@ -1,9 +1,9 @@
#! /bin/sh
# ylwrap - wrapper for lex/yacc invocations.
-scriptversion=2013-01-12.17; # UTC
+scriptversion=2016-01-11.22; # UTC
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2017 Free Software Foundation, Inc.
#
# Written by Tom Tromey <tromey@cygnus.com>.
#
@@ -242,6 +242,6 @@ exit $ret
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
diff --git a/configure.ac b/configure.ac
index b45c3ab..55e774b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -24,11 +24,11 @@
# autoconf requirements and initialization
-AC_INIT([the fast lexical analyser generator],[2.6.1],[flex-help@lists.sourceforge.net],[flex])
+AC_INIT([the fast lexical analyser generator],[2.6.4],[flex-help@lists.sourceforge.net],[flex])
AC_CONFIG_SRCDIR([src/scan.l])
AC_CONFIG_AUX_DIR([build-aux])
LT_INIT
-AM_INIT_AUTOMAKE([gnu check-news std-options dist-xz parallel-tests 1.14.1])
+AM_INIT_AUTOMAKE([1.11.3 -Wno-portability foreign check-news std-options dist-lzip parallel-tests subdir-objects])
AC_CONFIG_HEADER([src/config.h])
AC_CONFIG_LIBOBJ_DIR([lib])
AC_CONFIG_MACRO_DIR([m4])
@@ -38,29 +38,58 @@ AC_SUBST(SHARED_VERSION_INFO)
# checks for programs
AM_GNU_GETTEXT([external])
-AM_GNU_GETTEXT_VERSION([0.19])
+AM_GNU_GETTEXT_VERSION([0.18])
AC_PROG_YACC
+AS_IF([test "$YACC" != 'bison -y'], [
+ YACC="\${top_srcdir}/build-aux/missing bison -y"
+ AC_MSG_NOTICE(no bison program found: only required for maintainers)
+ ])
+AM_CONDITIONAL([HAVE_BISON], [test "$YACC" = 'bison -y'])
AM_PROG_LEX
AC_PROG_CC
+AX_PROG_CC_FOR_BUILD
AC_PROG_CXX
AM_PROG_CC_C_O
AC_PROG_LN_S
AC_PROG_AWK
AC_PROG_INSTALL
-AC_PATH_PROG([BISON], bison, no)
-AS_IF([test "$BISON" != no],[],
- [ AC_SUBST([BISON], [\${top_srcdir}/build-aux/missing bison])
- AC_MSG_NOTICE(no bison program found: only required for maintainers)
- ])
+# allow passing a variable `WARNINGFLAGS',
+# either when invoking `configure', or when invoking `make'
+# default to something useful if GCC was detected
+
+AC_ARG_ENABLE([warnings],
+ [AS_HELP_STRING([--enable-warnings],
+ [enable a bunch of compiler warning flags (defaults to GCC warning flags).])],
+ [AS_IF([test "x$GCC" = xyes],
+ [ : ${WARNINGFLAGS="-Wall -Wextra -Wmissing-prototypes -Wstrict-prototypes -Wnested-externs -Wold-style-definition -Wredundant-decls -Wconversion -Wno-unused-but-set-variable"} ])])
+
+AC_SUBST([WARNINGFLAGS])
+
+AC_ARG_ENABLE([libfl],
+ [AS_HELP_STRING([--disable-libfl],
+ [do not build -lfl runtime support library])],
+ [], [enable_libfl=yes])
+AM_CONDITIONAL([ENABLE_LIBFL], [test "x$enable_libfl" = xyes])
+
+# --disable-bootstrap is intended only to workaround problems with bootstrap
+# (e.g. when cross-compiling flex or when bootstrapping has bugs).
+# Ideally we should be able to bootstrap even when cross-compiling.
+AC_ARG_ENABLE([bootstrap],
+ [AS_HELP_STRING([--disable-bootstrap],
+ [don't perform a bootstrap when building flex])],
+ [], [enable_bootstrap=yes])
+AM_CONDITIONAL([ENABLE_BOOTSTRAP], [test "x$enable_bootstrap" = xyes])
+
+AM_CONDITIONAL([CROSS], [test "x$cross_compiling" = xyes])
AC_PATH_PROG([HELP2MAN], help2man, [\${top_srcdir}/build-aux/missing help2man])
- AS_IF([test -z "$ac_cv_path_HELP2MAN" ],[],
- AC_MSG_WARN(program not found: help2man: building man page will not work)
+ AS_IF([test "$HELP2MAN" = "\${top_srcdir}/build-aux/missing help2man"],
+ AC_MSG_WARN(help2man: program not found: building man page will not work)
)
AC_PATH_PROGS([TEXI2DVI], [gtexi2dvi texi2dvi], [\${top_srcdir}/build-aux/missing texi2dvi])
- AS_IF([test -z "$ac_cv_path_TEXI2DVI" ], [],
+ AS_IF([test "$TEXI2DVI" = "\${top_srcdir}/build-aux/missing texi2dvi"],
AC_MSG_WARN(texi2dvi: program not found: building pdf version of manual will not work)
)
@@ -75,23 +104,20 @@ AC_CACHE_CHECK([for m4 that supports -P], [ac_cv_path_M4],
AC_SUBST([M4], [$ac_cv_path_M4])
AC_DEFINE_UNQUOTED([M4], ["$M4"], [Define to the m4 executable name.])
-AC_PATH_PROG(INDENT, indent, indent)
-# if INDENT is set to 'indent' then we didn't find indent
-if test "$INDENT" != indent ; then
- AC_MSG_CHECKING(if $INDENT is GNU indent)
- if $INDENT --version 2>/dev/null | head -n 1|grep "GNU indent" > /dev/null ; then
- AC_MSG_RESULT(yes)
- else
- AC_MSG_RESULT(no)
- AC_MSG_WARN($INDENT does not appear to be GNU indent.)
- fi
-else
- AC_MSG_WARN(no indent program found: make indent target will not function)
-fi
+AC_PATH_PROG([INDENT], indent, [\${top_srcdir}/build-aux/missing indent])
+ AC_MSG_CHECKING(if $INDENT is GNU indent)
+ AS_IF([$INDENT --version 2>/dev/null | head -n 1 | grep "GNU indent" >/dev/null],
+ [AC_MSG_RESULT(yes)],
+ [AC_MSG_RESULT(no)
+ AC_MSG_WARN($INDENT does not appear to be GNU indent; 'make indent' may not function properly)
+ ])
# checks for headers
-AC_CHECK_HEADERS([inttypes.h libintl.h limits.h locale.h malloc.h netinet/in.h regex.h unistd.h])
+AC_CHECK_HEADERS([regex.h strings.h sys/stat.h sys/wait.h unistd.h], [],
+ [AC_MSG_ERROR(required header not found on your system)])
+
+AC_CHECK_HEADERS([inttypes.h libintl.h limits.h locale.h malloc.h netinet/in.h])
# checks for libraries
@@ -99,12 +125,12 @@ AC_CHECK_HEADERS([inttypes.h libintl.h limits.h locale.h malloc.h netinet/in.h r
# all we need is the preprocessor symbol defined since we don't need
# LIBS to include libpthread for building flex.
+LIBPTHREAD=''
AC_CHECK_LIB(pthread, pthread_mutex_lock,
-AC_DEFINE([HAVE_LIBPTHREAD], 1, [pthread library] ),
-AC_DEFINE([HAVE_LIBPTHREAD], 0, [pthread library] )
-)
-AC_CHECK_HEADERS([pthread.h])
-AM_CONDITIONAL([want_pthread], [test x$ac_cv_lib_pthread_pthread_mutex_lock = xyes])
+ [AC_CHECK_HEADERS([pthread.h], [LIBPTHREAD=-lpthread],
+ [AC_MSG_WARN([pthread tests will be skipped])])],
+ [AC_MSG_WARN([pthread tests will be skipped])])
+AC_SUBST([LIBPTHREAD])
AC_CHECK_LIB(m, log10)
@@ -118,19 +144,30 @@ AC_TYPE_SIZE_T
AC_FUNC_ALLOCA
AC_FUNC_FORK
+dnl Autoconf bug: AC_FUNC_MALLOC and AC_FUNC_REALLOC might not warn of cross
+dnl compilation. Workaround this.
AC_FUNC_MALLOC
+AS_IF([test "$cross_compiling" = yes],
+ AC_MSG_WARN([result $ac_cv_func_malloc_0_nonnull guessed because of cross compilation]))
AC_FUNC_REALLOC
+AS_IF([test "$cross_compiling" = yes],
+ AC_MSG_WARN([result $ac_cv_func_realloc_0_nonnull guessed because of cross compilation]))
-AC_CHECK_FUNCS(dup2 dnl
+AC_CHECK_FUNCS([dup2 dnl
memset dnl
-pow dnl
regcomp dnl
-setlocale dnl
+strcasecmp dnl
strchr dnl
strdup dnl
-strtol)
+strtol dnl
+], [], [AC_MSG_ERROR(required library function not found on your system)])
-AC_REPLACE_FUNCS(reallocarray)
+# Optional library functions
+AC_CHECK_FUNCS([dnl
+pow dnl Used only by "examples/manual/expr"
+setlocale dnl Needed only if NLS is enabled
+reallocarray dnl OpenBSD function. We have replacement if not available.
+])
AC_CONFIG_FILES(
Makefile
@@ -138,7 +175,6 @@ doc/Makefile
examples/Makefile
examples/fastwc/Makefile
examples/manual/Makefile
-lib/Makefile
po/Makefile.in
src/Makefile
tools/Makefile
diff --git a/doc/Makefile.am b/doc/Makefile.am
index e6e97c8..523aa97 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -1,30 +1,14 @@
-help2man = @HELP2MAN@
+FLEX = $(top_builddir)/src/flex$(EXEEXT)
info_TEXINFOS = flex.texi
dist_man_MANS = flex.1
+MAINTAINERCLEANFILES = flex.1
-CLEANFILES = \
- flex.aux \
- flex.cp \
- flex.cps \
- flex.fn \
- flex.fns \
- flex.hk \
- flex.hks \
- flex.ky \
- flex.log \
- flex.op \
- flex.ops \
- flex.pg \
- flex.toc \
- flex.tp \
- flex.tps \
- flex.vr \
- flex.vrs
+CLEANFILES = *.aux *.cp *.cps *.fn *.fns *.hk *.hks *.ky *.log \
+ *.op *.ops *.pg *.toc *.tp *.tps *.vr *.vrs
-$(dist_man_MANS): $(top_srcdir)/configure.ac $(top_srcdir)/src/flex.skl $(top_srcdir)/src/options.c $(top_srcdir)/src/options.h
- for i in $(dist_man_MANS) ; do \
- $(help2man) --name='$(PACKAGE_NAME)' \
- --section=`echo $$i | sed -e 's/.*\.\([^.]*\)$$/\1/'` \
- $(top_srcdir)/src/flex$(EXEEXT) > $$i || rm -f $$i ; \
- done
+flex.1: $(top_srcdir)/configure.ac $(top_srcdir)/src/flex.skl $(top_srcdir)/src/options.c $(top_srcdir)/src/options.h | $(FLEX)
+ $(HELP2MAN) --name='$(PACKAGE_NAME)' --section=1 \
+ --source='The Flex Project' --manual='Programming' \
+ --output=$@ $(FLEX) \
+ || rm -f $@
diff --git a/doc/flex.texi b/doc/flex.texi
index af639f1..bccab1e 100644
--- a/doc/flex.texi
+++ b/doc/flex.texi
@@ -408,7 +408,7 @@ A somewhat more complicated example:
"+"|"-"|"*"|"/" printf( "An operator: %s\n", yytext );
- "{"[\^{}}\n]*"}" /* eat up one-line comments */
+ "{"[^{}\n]*"}" /* eat up one-line comments */
[ \t\n]+ /* eat up whitespace */
@@ -1491,15 +1491,14 @@ the scanning routine using a K&R-style/non-prototyped function
declaration, you must terminate the definition with a semi-colon (;).
@code{flex} generates @samp{C99} function definitions by
-default. However flex does have the ability to generate obsolete, er,
-@samp{traditional}, function definitions. This is to support
+default. Flex used to have the ability to generate obsolete, er,
+@samp{traditional}, function definitions. This was to support
bootstrapping gcc on old systems. Unfortunately, traditional
definitions prevent us from using any standard data types smaller than
-int (such as short, char, or bool) as function arguments. For this
-reason, future versions of @code{flex} may generate standard C99 code
-only, leaving K&R-style functions to the historians. Currently, if you
-do @strong{not} want @samp{C99} definitions, then you must use
-@code{%option noansi-definitions}.
+int (such as short, char, or bool) as function arguments. Furthermore,
+traditional definitions support added extra complexity in the skeleton file.
+For this reason, current versions of @code{flex} generate standard C99 code
+only, leaving K&R-style functions to the historians.
@cindex stdin, default for yyin
@cindex yyin
@@ -2183,7 +2182,7 @@ manages its own input buffer stack manually (instead of letting flex do it).
}
<<EOF>> {
- if ( --include_stack_ptr 0 )
+ if ( --include_stack_ptr == 0 )
{
yyterminate();
}
@@ -2860,19 +2859,13 @@ calls @code{yylex()} again).
@opindex ---option-ansi-definitions
@opindex ansi-definitions
@item --ansi-definitions, @code{%option ansi-definitions}
-instruct flex to generate ANSI C99 definitions for functions.
-This option is enabled by default.
-If @code{%option noansi-definitions} is specified, then the obsolete style
-is generated.
+Deprecated, ignored
@anchor{option-ansi-prototypes}
@opindex ---option-ansi-prototypes
@opindex ansi-prototypes
@item --ansi-prototypes, @code{%option ansi-prototypes}
-instructs flex to generate ANSI C99 prototypes for functions.
-This option is enabled by default.
-If @code{noansi-prototypes} is specified, then
-prototypes will have empty parameter lists.
+Deprecated, ignored
@anchor{option-bison-bridge}
@opindex ---bison-bridge
diff --git a/lib/Makefile.am b/lib/Makefile.am
deleted file mode 100644
index 011163e..0000000
--- a/lib/Makefile.am
+++ /dev/null
@@ -1,4 +0,0 @@
-noinst_LTLIBRARIES = libcompat.la
-libcompat_la_SOURCES = lib.c
-libcompat_la_LIBADD = $(LTLIBOBJS)
-
diff --git a/lib/lib.c b/lib/lib.c
deleted file mode 100644
index 4b4bf73..0000000
--- a/lib/lib.c
+++ /dev/null
@@ -1,9 +0,0 @@
-/* Since building an empty library could cause problems, we provide a
- * function to go into the library. We could make this non-trivial by
- * moving something that flex treats as a library function into this
- * directory. */
-
-extern void do_nothing(void);
-
-void do_nothing(void){ return;}
-
diff --git a/lib/reallocarray.c b/lib/reallocarray.c
deleted file mode 100644
index 0c1e250..0000000
--- a/lib/reallocarray.c
+++ /dev/null
@@ -1,49 +0,0 @@
-/* $OpenBSD: reallocarray.c,v 1.2 2014/12/08 03:45:00 bcook Exp $ */
-/*
- * Copyright (c) 2008 Otto Moerbeek <otto@drijf.net>
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-/* OPENBSD ORIGINAL: lib/libc/stdlib/reallocarray.c */
-
-#include <config.h>
-#ifndef HAVE_REALLOCARRAY
-#undef reallocarray
-
-#include <sys/types.h>
-#include <errno.h>
-#ifdef HAVE_STDINT_H
-#include <stdint.h>
-#endif
-#include <stdlib.h>
-
-void *reallocarray(void *, size_t, size_t);
-
-/*
- * This is sqrt(SIZE_MAX+1), as s1*s2 <= SIZE_MAX
- * if both s1 < MUL_NO_OVERFLOW and s2 < MUL_NO_OVERFLOW
- */
-#define MUL_NO_OVERFLOW ((size_t)1 << (sizeof(size_t) * 4))
-
-void *
-reallocarray(void *optr, size_t nmemb, size_t size)
-{
- if ((nmemb >= MUL_NO_OVERFLOW || size >= MUL_NO_OVERFLOW) &&
- nmemb > 0 && SIZE_MAX / nmemb < size) {
- errno = ENOMEM;
- return NULL;
- }
- return realloc(optr, size * nmemb);
-}
-#endif /* HAVE_REALLOCARRAY */
diff --git a/m4/ax_prog_cc_for_build.m4 b/m4/ax_prog_cc_for_build.m4
new file mode 100644
index 0000000..77fd346
--- /dev/null
+++ b/m4/ax_prog_cc_for_build.m4
@@ -0,0 +1,125 @@
+# ===========================================================================
+# http://www.gnu.org/software/autoconf-archive/ax_prog_cc_for_build.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_PROG_CC_FOR_BUILD
+#
+# DESCRIPTION
+#
+# This macro searches for a C compiler that generates native executables,
+# that is a C compiler that surely is not a cross-compiler. This can be
+# useful if you have to generate source code at compile-time like for
+# example GCC does.
+#
+# The macro sets the CC_FOR_BUILD and CPP_FOR_BUILD macros to anything
+# needed to compile or link (CC_FOR_BUILD) and preprocess (CPP_FOR_BUILD).
+# The value of these variables can be overridden by the user by specifying
+# a compiler with an environment variable (like you do for standard CC).
+#
+# It also sets BUILD_EXEEXT and BUILD_OBJEXT to the executable and object
+# file extensions for the build platform, and GCC_FOR_BUILD to `yes' if
+# the compiler we found is GCC. All these variables but GCC_FOR_BUILD are
+# substituted in the Makefile.
+#
+# LICENSE
+#
+# Copyright (c) 2008 Paolo Bonzini <bonzini@gnu.org>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 8
+
+AU_ALIAS([AC_PROG_CC_FOR_BUILD], [AX_PROG_CC_FOR_BUILD])
+AC_DEFUN([AX_PROG_CC_FOR_BUILD], [dnl
+AC_REQUIRE([AC_PROG_CC])dnl
+AC_REQUIRE([AC_PROG_CPP])dnl
+AC_REQUIRE([AC_EXEEXT])dnl
+AC_REQUIRE([AC_CANONICAL_HOST])dnl
+
+dnl Use the standard macros, but make them use other variable names
+dnl
+pushdef([ac_cv_prog_CPP], ac_cv_build_prog_CPP)dnl
+pushdef([ac_cv_prog_gcc], ac_cv_build_prog_gcc)dnl
+pushdef([ac_cv_prog_cc_works], ac_cv_build_prog_cc_works)dnl
+pushdef([ac_cv_prog_cc_cross], ac_cv_build_prog_cc_cross)dnl
+pushdef([ac_cv_prog_cc_g], ac_cv_build_prog_cc_g)dnl
+pushdef([ac_cv_exeext], ac_cv_build_exeext)dnl
+pushdef([ac_cv_objext], ac_cv_build_objext)dnl
+pushdef([ac_exeext], ac_build_exeext)dnl
+pushdef([ac_objext], ac_build_objext)dnl
+pushdef([CC], CC_FOR_BUILD)dnl
+pushdef([CPP], CPP_FOR_BUILD)dnl
+pushdef([CFLAGS], CFLAGS_FOR_BUILD)dnl
+pushdef([CPPFLAGS], CPPFLAGS_FOR_BUILD)dnl
+pushdef([LDFLAGS], LDFLAGS_FOR_BUILD)dnl
+pushdef([host], build)dnl
+pushdef([host_alias], build_alias)dnl
+pushdef([host_cpu], build_cpu)dnl
+pushdef([host_vendor], build_vendor)dnl
+pushdef([host_os], build_os)dnl
+pushdef([ac_cv_host], ac_cv_build)dnl
+pushdef([ac_cv_host_alias], ac_cv_build_alias)dnl
+pushdef([ac_cv_host_cpu], ac_cv_build_cpu)dnl
+pushdef([ac_cv_host_vendor], ac_cv_build_vendor)dnl
+pushdef([ac_cv_host_os], ac_cv_build_os)dnl
+pushdef([ac_cpp], ac_build_cpp)dnl
+pushdef([ac_compile], ac_build_compile)dnl
+pushdef([ac_link], ac_build_link)dnl
+
+save_cross_compiling=$cross_compiling
+save_ac_tool_prefix=$ac_tool_prefix
+cross_compiling=no
+ac_tool_prefix=
+
+AC_PROG_CC
+AC_PROG_CPP
+AC_EXEEXT
+
+ac_tool_prefix=$save_ac_tool_prefix
+cross_compiling=$save_cross_compiling
+
+dnl Restore the old definitions
+dnl
+popdef([ac_link])dnl
+popdef([ac_compile])dnl
+popdef([ac_cpp])dnl
+popdef([ac_cv_host_os])dnl
+popdef([ac_cv_host_vendor])dnl
+popdef([ac_cv_host_cpu])dnl
+popdef([ac_cv_host_alias])dnl
+popdef([ac_cv_host])dnl
+popdef([host_os])dnl
+popdef([host_vendor])dnl
+popdef([host_cpu])dnl
+popdef([host_alias])dnl
+popdef([host])dnl
+popdef([LDFLAGS])dnl
+popdef([CPPFLAGS])dnl
+popdef([CFLAGS])dnl
+popdef([CPP])dnl
+popdef([CC])dnl
+popdef([ac_objext])dnl
+popdef([ac_exeext])dnl
+popdef([ac_cv_objext])dnl
+popdef([ac_cv_exeext])dnl
+popdef([ac_cv_prog_cc_g])dnl
+popdef([ac_cv_prog_cc_cross])dnl
+popdef([ac_cv_prog_cc_works])dnl
+popdef([ac_cv_prog_gcc])dnl
+popdef([ac_cv_prog_CPP])dnl
+
+dnl Finally, set Makefile variables
+dnl
+BUILD_EXEEXT=$ac_build_exeext
+BUILD_OBJEXT=$ac_build_objext
+AC_SUBST(BUILD_EXEEXT)dnl
+AC_SUBST(BUILD_OBJEXT)dnl
+AC_SUBST([CFLAGS_FOR_BUILD])dnl
+AC_SUBST([CPPFLAGS_FOR_BUILD])dnl
+AC_SUBST([LDFLAGS_FOR_BUILD])dnl
+])
diff --git a/m4/libtool.m4 b/m4/libtool.m4
index a3bc337..ee80844 100644
--- a/m4/libtool.m4
+++ b/m4/libtool.m4
@@ -728,7 +728,6 @@ _LT_CONFIG_SAVE_COMMANDS([
cat <<_LT_EOF >> "$cfgfile"
#! $SHELL
# Generated automatically by $as_me ($PACKAGE) $VERSION
-# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
# NOTE: Changes made to this file will be lost: look at ltmain.sh.
# Provide generalized library-building support services.
@@ -2887,6 +2886,18 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
dynamic_linker='GNU/Linux ld.so'
;;
+netbsdelf*-gnu)
+ version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
+ soname_spec='${libname}${release}${shared_ext}$major'
+ shlibpath_var=LD_LIBRARY_PATH
+ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ dynamic_linker='NetBSD ld.elf_so'
+ ;;
+
netbsd*)
version_type=sunos
need_lib_prefix=no
@@ -3546,7 +3557,7 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
lt_cv_deplibs_check_method=pass_all
;;
-netbsd*)
+netbsd* | netbsdelf*-gnu)
if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
else
@@ -4424,7 +4435,7 @@ m4_if([$1], [CXX], [
;;
esac
;;
- netbsd*)
+ netbsd* | netbsdelf*-gnu)
;;
*qnx* | *nto*)
# QNX uses GNU C++, but need to define -shared option too, otherwise
@@ -4936,6 +4947,9 @@ m4_if([$1], [CXX], [
;;
esac
;;
+ linux* | k*bsd*-gnu | gnu*)
+ _LT_TAGVAR(link_all_deplibs, $1)=no
+ ;;
*)
_LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
;;
@@ -4998,6 +5012,9 @@ dnl Note also adjust exclude_expsyms for C++ above.
openbsd* | bitrig*)
with_gnu_ld=no
;;
+ linux* | k*bsd*-gnu | gnu*)
+ _LT_TAGVAR(link_all_deplibs, $1)=no
+ ;;
esac
_LT_TAGVAR(ld_shlibs, $1)=yes
@@ -5252,7 +5269,7 @@ _LT_EOF
fi
;;
- netbsd*)
+ netbsd* | netbsdelf*-gnu)
if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
wlarc=
@@ -5773,6 +5790,7 @@ _LT_EOF
if test yes = "$lt_cv_irix_exported_symbol"; then
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
fi
+ _LT_TAGVAR(link_all_deplibs, $1)=no
else
_LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
_LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib'
@@ -5794,7 +5812,7 @@ _LT_EOF
esac
;;
- netbsd*)
+ netbsd* | netbsdelf*-gnu)
if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
_LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
else
diff --git a/po/Makefile.in.in b/po/Makefile.in.in
index 65184f6..83d8838 100644
--- a/po/Makefile.in.in
+++ b/po/Makefile.in.in
@@ -8,14 +8,13 @@
# Please note that the actual code of GNU gettext is covered by the GNU
# General Public License and is *not* in the public domain.
#
-# Origin: gettext-0.19
-GETTEXT_MACRO_VERSION = 0.19
+# Origin: gettext-0.18
+GETTEXT_MACRO_VERSION = 0.18
PACKAGE = @PACKAGE@
VERSION = @VERSION@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-SED = @SED@
SHELL = /bin/sh
@SET_MAKE@
@@ -77,16 +76,6 @@ POTFILES = \
CATALOGS = @CATALOGS@
-POFILESDEPS_ = $(srcdir)/$(DOMAIN).pot
-POFILESDEPS_yes = $(POFILESDEPS_)
-POFILESDEPS_no =
-POFILESDEPS = $(POFILESDEPS_$(PO_DEPENDS_ON_POT))
-
-DISTFILESDEPS_ = update-po
-DISTFILESDEPS_yes = $(DISTFILESDEPS_)
-DISTFILESDEPS_no =
-DISTFILESDEPS = $(DISTFILESDEPS_$(DIST_DEPENDS_ON_UPDATE_PO))
-
# Makevars gets inserted here. (Don't remove this line!)
.SUFFIXES:
@@ -107,14 +96,14 @@ DISTFILESDEPS = $(DISTFILESDEPS_$(DIST_DEPENDS_ON_UPDATE_PO))
mv t-$@ $@
-all: all-@USE_NLS@
+all: check-macro-version all-@USE_NLS@
all-yes: stamp-po
all-no:
# Ensure that the gettext macros and this Makefile.in.in are in sync.
-CHECK_MACRO_VERSION = \
- test "$(GETTEXT_MACRO_VERSION)" = "@GETTEXT_MACRO_VERSION@" \
+check-macro-version:
+ @test "$(GETTEXT_MACRO_VERSION)" = "@GETTEXT_MACRO_VERSION@" \
|| { echo "*** error: gettext infrastructure mismatch: using a Makefile.in.in from gettext version $(GETTEXT_MACRO_VERSION) but the autoconf macros are from gettext version @GETTEXT_MACRO_VERSION@" 1>&2; \
exit 1; \
}
@@ -134,7 +123,6 @@ CHECK_MACRO_VERSION = \
# $(POFILES) has been designed to not touch files that don't need to be
# changed.
stamp-po: $(srcdir)/$(DOMAIN).pot
- @$(CHECK_MACRO_VERSION)
test ! -f $(srcdir)/$(DOMAIN).pot || \
test -z "$(GMOFILES)" || $(MAKE) $(GMOFILES)
@test ! -f $(srcdir)/$(DOMAIN).pot || { \
@@ -149,29 +137,11 @@ stamp-po: $(srcdir)/$(DOMAIN).pot
# This target rebuilds $(DOMAIN).pot; it is an expensive operation.
# Note that $(DOMAIN).pot is not touched if it doesn't need to be changed.
-# The determination of whether the package xyz is a GNU one is based on the
-# heuristic whether some file in the top level directory mentions "GNU xyz".
-# If GNU 'find' is available, we avoid grepping through monster files.
$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed
- package_gnu="$(PACKAGE_GNU)"; \
- test -n "$$package_gnu" || { \
- if { if (LC_ALL=C find --version) 2>/dev/null | grep GNU >/dev/null; then \
- LC_ALL=C find -L $(top_srcdir) -maxdepth 1 -type f \
- -size -10000000c -exec grep 'GNU @PACKAGE@' \
- /dev/null '{}' ';' 2>/dev/null; \
- else \
- LC_ALL=C grep 'GNU @PACKAGE@' $(top_srcdir)/* 2>/dev/null; \
- fi; \
- } | grep -v 'libtool:' >/dev/null; then \
- package_gnu=yes; \
- else \
- package_gnu=no; \
- fi; \
- }; \
- if test "$$package_gnu" = "yes"; then \
- package_prefix='GNU '; \
+ if LC_ALL=C grep 'GNU @PACKAGE@' $(top_srcdir)/* 2>/dev/null | grep -v 'libtool:' >/dev/null; then \
+ package_gnu='GNU '; \
else \
- package_prefix=''; \
+ package_gnu=''; \
fi; \
if test -n '$(MSGID_BUGS_ADDRESS)' || test '$(PACKAGE_BUGREPORT)' = '@'PACKAGE_BUGREPORT'@'; then \
msgid_bugs_address='$(MSGID_BUGS_ADDRESS)'; \
@@ -191,7 +161,7 @@ $(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed
--add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \
--files-from=$(srcdir)/POTFILES.in \
--copyright-holder='$(COPYRIGHT_HOLDER)' \
- --package-name="$${package_prefix}@PACKAGE@" \
+ --package-name="$${package_gnu}@PACKAGE@" \
--package-version='@VERSION@' \
--msgid-bugs-address="$$msgid_bugs_address" \
;; \
@@ -219,10 +189,9 @@ $(srcdir)/$(DOMAIN).pot:
# This target rebuilds a PO file if $(DOMAIN).pot has changed.
# Note that a PO file is not touched if it doesn't need to be changed.
-$(POFILES): $(POFILESDEPS)
+$(POFILES): $(srcdir)/$(DOMAIN).pot
@lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \
if test -f "$(srcdir)/$${lang}.po"; then \
- test -f $(srcdir)/$(DOMAIN).pot || $(MAKE) $(srcdir)/$(DOMAIN).pot; \
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
cd $(srcdir) \
@@ -383,7 +352,7 @@ maintainer-clean: distclean
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
dist distdir:
- test -z "$(DISTFILESDEPS)" || $(MAKE) $(DISTFILESDEPS)
+ $(MAKE) update-po
@$(MAKE) dist2
# This is a separate target because 'update-po' must be executed before.
dist2: stamp-po $(DISTFILES)
diff --git a/po/Makevars b/po/Makevars
index 2ac7ee8..cff165f 100644
--- a/po/Makevars
+++ b/po/Makevars
@@ -8,7 +8,7 @@ subdir = po
top_builddir = ..
# These options get passed to xgettext.
-XGETTEXT_OPTIONS = --keyword=_ --keyword=N_
+XGETTEXT_OPTIONS = --language=C --keyword=_ --keyword=N_
# This is the copyright holder that gets inserted into the header of the
# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding
@@ -20,6 +20,13 @@ XGETTEXT_OPTIONS = --keyword=_ --keyword=N_
# their copyright.
COPYRIGHT_HOLDER =
+# This tells whether or not to prepend "GNU " prefix to the package
+# name that gets inserted into the header of the $(DOMAIN).pot file.
+# Possible values are "yes", "no", or empty. If it is empty, try to
+# detect it automatically by scanning the files in $(top_srcdir) for
+# "GNU packagename" string.
+PACKAGE_GNU = "no"
+
# This is the email address or URL to which the translators shall report
# bugs in the untranslated strings:
# - Strings which are not entire sentences, see the maintainer guidelines
@@ -39,3 +46,33 @@ MSGID_BUGS_ADDRESS = flex-devel@lists.sourceforge.net
# This is the list of locale categories, beyond LC_MESSAGES, for which the
# message catalogs shall be used. It is usually empty.
EXTRA_LOCALE_CATEGORIES =
+
+# This tells whether the $(DOMAIN).pot file contains messages with an 'msgctxt'
+# context. Possible values are "yes" and "no". Set this to yes if the
+# package uses functions taking also a message context, like pgettext(), or
+# if in $(XGETTEXT_OPTIONS) you define keywords with a context argument.
+USE_MSGCTXT = no
+
+# These options get passed to msgmerge.
+# Useful options are in particular:
+# --previous to keep previous msgids of translated messages,
+# --quiet to reduce the verbosity.
+MSGMERGE_OPTIONS =
+
+# These options get passed to msginit.
+# If you want to disable line wrapping when writing PO files, add
+# --no-wrap to MSGMERGE_OPTIONS, XGETTEXT_OPTIONS, and
+# MSGINIT_OPTIONS.
+MSGINIT_OPTIONS =
+
+# This tells whether or not to regenerate a PO file when $(DOMAIN).pot
+# has changed. Possible values are "yes" and "no". Set this to no if
+# the POT file is checked in the repository and the version control
+# program ignores timestamps.
+PO_DEPENDS_ON_POT = yes
+
+# This tells whether or not to forcibly update $(DOMAIN).pot and
+# regenerate PO files on "make dist". Possible values are "yes" and
+# "no". Set this to no if the POT file and PO files are maintained
+# externally.
+DIST_DEPENDS_ON_UPDATE_PO = no
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 1e820a2..62a928e 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -12,7 +12,6 @@ src/options.c
src/parse.y
src/scan.l
src/scanopt.c
-src/skel.c
src/sym.c
src/tblcmp.c
src/yylex.c
diff --git a/po/Rules-quot b/po/Rules-quot
index 7b92c7e..af52487 100644
--- a/po/Rules-quot
+++ b/po/Rules-quot
@@ -1,4 +1,3 @@
-# This file, Rules-quot, can be copied and used freely without restrictions.
# Special Makefile rules for English message catalogs with quotation marks.
DISTFILES.common.extra1 = quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot
@@ -15,23 +14,13 @@ en@boldquot.po-update: en@boldquot.po-update-en
.insert-header.po-update-en:
@lang=`echo $@ | sed -e 's/\.po-update-en$$//'`; \
- if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH; GETTEXTLIBDIR=`cd $(top_srcdir)/src && pwd`; export GETTEXTLIBDIR; fi; \
+ if test "$(PACKAGE)" = "gettext"; then PATH=`pwd`/../src:$$PATH; GETTEXTLIBDIR=`cd $(top_srcdir)/src && pwd`; export GETTEXTLIBDIR; fi; \
tmpdir=`pwd`; \
echo "$$lang:"; \
ll=`echo $$lang | sed -e 's/@.*//'`; \
LC_ALL=C; export LC_ALL; \
cd $(srcdir); \
- if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$lang -o - 2>/dev/null \
- | $(SED) -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | \
- { case `$(MSGFILTER) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
- '' | 0.[0-9] | 0.[0-9].* | 0.1[0-8] | 0.1[0-8].*) \
- $(MSGFILTER) $(SED) -f `echo $$lang | sed -e 's/.*@//'`.sed \
- ;; \
- *) \
- $(MSGFILTER) `echo $$lang | sed -e 's/.*@//'` \
- ;; \
- esac } 2>/dev/null > $$tmpdir/$$lang.new.po \
- ; then \
+ if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$lang -o - 2>/dev/null | sed -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | $(MSGFILTER) sed -f `echo $$lang | sed -e 's/.*@//'`.sed 2>/dev/null > $$tmpdir/$$lang.new.po; then \
if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
rm -f $$tmpdir/$$lang.new.po; \
else \
diff --git a/po/ca.po b/po/ca.po
index a26f5fe..5b69366 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -1,13 +1,28 @@
-# Catalan translation of flex message catalogs.
-# Copyright © 2002, 2003, 2006, 2008, 2012 The Flex Project (msgids)
-# This file is distributed under the same licence as the flex package.
-# Jordi Mallach <jordi@sindominio.net>, 2002, 2003, 2006, 2008, 2012.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex 2.5.37\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:17-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Catalan translation of flex message catalogs.
+#~ # Copyright © 2002, 2003, 2006, 2008, 2012 The Flex Project (msgids)
+#~ # This file is distributed under the same licence as the flex package.
+#~ # Jordi Mallach <jordi@sindominio.net>, 2002, 2003, 2006, 2008, 2012.
+#~ #
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex 2.5.37\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2012-12-04 17:36+0100\n"
"Last-Translator: Jordi Mallach <jordi@sindominio.net>\n"
"Language-Team: Catalan <ca@dodds.net>\n"
@@ -15,6 +30,7 @@ msgstr ""
"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"
#: src/buf.c:79
msgid "Allocation of buffer to print string failed"
@@ -76,24 +92,24 @@ msgstr ""
"Bolcat AFD:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "no s'ha pogut crear un estat únic de final-de-búfer"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "estat # %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "No s'ha pogut escriure yynxt_tbl[][]"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "caràcter de transició incorrecte detectat en sympartition()"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -105,29 +121,29 @@ msgstr ""
"Classes d'equivalència:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "l'estat # %d accepta: [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "l'estat # %d accepta: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "No s'ha pogut escriure yyacclist_tbl"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "No s'ha pogut escriure yyacc_tbl"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "No s'ha pogut escriure ecstbl"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -137,289 +153,293 @@ msgstr ""
"\n"
"Classes de metaequivalència:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "No s'ha pogut escriure yymeta_tbl"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "No s'ha pogut escriure yybase_tbl"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "No s'ha pogut escriure yydef_tbl"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "No s'ha pogut escriure yynxt_tbl"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "No s'ha pogut escriure yychk_tbl"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "No s'ha pogut escriure ftbl"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "No s'ha pogut escriure ssltbl"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "No s'ha pogut escriure eoltbl"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "No s'ha pogut escriure yynultrans_tbl"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "no es pot satisfer la regla"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr "S'ha especificat l'opció -s però es pot aplicar la regla per defecte"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "No es pot fer servir -+ amb l'opció -l"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "No es pot fer servir -f o -F amb l'opció -l"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr "No es pot fer servir --reentrant o --bison-bridge amb l'opció -l"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "-Cf/-CF i -Cm no tenen sentit juntes"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "-Cf/-CF i -I són incompatibles"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "-Cf/-CF són incompatibles amb el mode de compatibilitat amb lex"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "-Cf i -CF són mútuament excloents"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "No es pot fer servir -+ amb l'opció -CF"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "%array és incompatible amb l'opció -+"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "Les opcions -+ i --reentrant són mútuament excloents"
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "No es suporta «bison bridge» per a l'analitzador de C++"
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "no s'ha pogut crear %s"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "no s'ha pogut crear la capçalera de les taules"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "No es pot obrir el fitxer d'esquema %s"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr "Ha fallat l'assignació de la definició de la macro"
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "error d'entrada al llegir el fitxer d'esquema %s"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "s'ha produït un error en tancar el fitxer d'esquema %s"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "s'ha produït un error en crear el fitxer de capçalera %s"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "s'ha produït un error en escriure el fitxer d'eixida %s"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "s'ha produït un error en tancar el fitxer d'eixida %s"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "s'ha produït un error en suprimir el fitxer d'eixida %s"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "No hi ha retrocés.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d estats de retrocés (no-acceptació).\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Les taules comprimides sempre impliquen un retard.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "s'ha produït un error en escriure el fitxer de còpia de seguretat %s"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "s'ha produït un error en tancar el fitxer de còpia de seguretat %s"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "estadístiques d'ús de %s versió %s:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " opcions de l'analitzador: -"
# NFA == Autómata finit no-determinista. jm
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d estats AFN\n"
# DFA == Autómata finit deterministic. jm
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d estats AFD (%d paraules)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d regles\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " Sense retrocés\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d estats de retrocés (no-acceptació)\n"
# Es refereix a còpia de seguretat, o retrocés? jm
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Sempre es realitza còpia de seguretat de les taules comprimides\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " Utilitzats patrons de principi-de-línia\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d condicions d'activació\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d estats èpsilon, %d estats doble èpsilon\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " sense classes de caràcter\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr ""
" les classes de caràcters %d/%d necessitaren %d/%d paraules de magatzement, "
"%d reutilitzades\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d parells estat/estat-següent creats\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d transicions úniques/duplicades\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d entrades de la taula\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d entrades base-def creades\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (pic %d) entrades nxt-chk creades\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " %d/%d (pic %d) entrades de plantilla nxt-chk creades\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d entrades de la tabla buides\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d prototips creats\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d plantilles creades, %d usos\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d classes d'equivalència creades\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d classes de meta-equivalència creades\n"
@@ -428,65 +448,65 @@ msgstr " %d/%d classes de meta-equivalència creades\n"
# segons un company de treballa que estudia a la UOC, allí
# les "hashtables" s'anomenen "taules de DISPERSIÓ". En aquest context
# no sé que dir-te. ear
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d desades) col·lisions d'ubicació («hash»), %d AFD iguals\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " es necessiten %d conjunts de relocalització\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " es necessiten %d entrades totals de la taula\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "Error intern. Els flexopts estan malformats.\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Proveu «%s --help» per a obtindre més informació.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "opció de -C desconeguda «%c»"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
# Hmm. No se si açò està be. jm
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "s'ha produït un error fatal d'anàlisi sintàctic"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "no s'ha pogut crear un fitxer d'informació del retrocés %s"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr ""
"-l l'opció de compatibilitat amb AT&T lex implica una penalització del "
"rendiment molt gran\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr ""
" i pot ser l'origen real d'altres penalitzacions del rendiment notificades\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
@@ -495,48 +515,48 @@ msgstr ""
"l'%%opció yylineno implica una penalització del rendiment NOMÉS en regles "
"que poden fer coincidir caràcters de nova línia\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "-I (interactiu) implica una xicoteta penalització del rendiment\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() implica una xicoteta penalització del rendiment\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT implica una penalització del rendiment molt gran\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr ""
"Les regles de context posterior variable implica una penalització del "
"rendiment molt gran\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT no es pot fer servir amb -f o -F"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "l'%opció yylineno no es pot fer servir amb REJECT"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr ""
"Les regles de context posterior variable no es poden utilitzar amb -f o -F"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "l'%opció yyclass només té sentit per a analitzadors de C++"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Forma d'ús: %s [OPCIONS] [FITXER]...\n"
@@ -545,7 +565,7 @@ msgstr "Forma d'ús: %s [OPCIONS] [FITXER]...\n"
# molt això de text emparellat.
# Encara que coincident tampoc no m'acaba de convéncer. ear
# I que faig amb "reentrant" i "parser"? jm
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -600,8 +620,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -684,48 +702,48 @@ msgstr ""
" -h, --help mostra aquest missatge d'ajuda\n"
" -V, --version informa de la versió de %s\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr "Ha fallat l'assignació de «sko_stack»"
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "el nom «%s» és ridículament llarg"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "ha fallat l'assignació de memòria en allocate_array()"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "caràcter incorrecte «%s» detectat en check_char()"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "l'analitzador requereix l'opció -8 per a fer servir el caràcter %s"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "ha fallat l'assignació de memòria en allocate_array()"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: error intern fatal, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "ha fallat l'intent d'augmentar la mida de la matriu"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "línia incorrecta en el fitxer d'esquema"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "ha fallat l'assignació de memòria en yy_flex_xmalloc()"
@@ -759,20 +777,20 @@ msgstr "màquina buida en dupmachine()"
msgid "Variable trailing context rule at line %d\n"
msgstr "Regla de context posterior variable en la línia %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "tipus d'estat incorrecte en mark_beginning_as_normal()"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "les regles d'entrada són massa complicades (>= %d estats AFN)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "s'han trobat massa transicions en mkxtion()"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "massa regles (> %d)!"
@@ -781,138 +799,142 @@ msgstr "massa regles (> %d)!"
msgid "unknown error processing section 1"
msgstr "s'ha produït un error desconegut en processar la secció 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "condició de començament incorrecta"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "regla no reconeguda"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "s'ha utilitzat el context posterior dos vegades"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "valors d'iteració incorrectes"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "el valor d'iteració ha de ser positiu"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr ""
"el rang de caràcters [%c-%c] és ambigu en un analitzador insensible a les "
"majúscules i minúscules"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "rang negatiu en classe de caràcter"
-#: src/parse.y:916
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr ""
"[:^lower:] és ambigu en un analitzador insensible a les majúscules i "
"minúscules"
-#: src/parse.y:922
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr ""
"[:^upper:] és ambigu en un analitzador insensible a les majúscules i "
"minúscules"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "La línia d'entrada és massa llarga\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "directiva «%top» malformada"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "directiva «%» no reconeguda"
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr "El nom de la definició és massa llarg\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "«|» no emparellat"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr "El valor de la definició de {%s} és massa llarg\n"
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "definició del nom incompleta"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr "La línia d'opcions és massa llarga\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "%%opció no reconeguda: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "classe de caràcter incorrecta"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "definició no definida {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "<condició d'activació> incorrecta: %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "manca una cometa"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "expressió de la classe de caràcters incorrecta: %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "caràcter incorrecte dins de {}"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "manca una }"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "s'ha trobat un EOF dins d'una acció"
-#: src/scan.l:951
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
msgstr "s'ha trobat un EOF dins d'un patró"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "caràcter incorrecte: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "no es pot obrir %s"
@@ -960,16 +982,16 @@ msgstr "el nom ha sigut definit dos vegades"
msgid "start condition %s declared twice"
msgstr "la condició d'activació %s ha sigut declarada dos vegades"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "EOF prematur"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Marcador de fi\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*Quelcom estrany* - terminal: %d val: %d\n"
diff --git a/po/da.po b/po/da.po
index 0bf61d5..1c004c0 100644
--- a/po/da.po
+++ b/po/da.po
@@ -1,14 +1,29 @@
-# Danish messages for flex.
-# Copyright (C) 2007 The Flex Project (msgids)
-# This file is distributed under the same license as the flex package.
-# Johan Linde <jl@theophys.kth.se>, 1996.
-# Keld Simonsen <keld@keldix.com>, 2000-2011, 2015.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex-2.5.38\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:21-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Danish messages for flex.
+#~ # Copyright (C) 2007 The Flex Project (msgids)
+#~ # This file is distributed under the same license as the flex package.
+#~ # Johan Linde <jl@theophys.kth.se>, 1996.
+#~ # Keld Simonsen <keld@keldix.com>, 2000-2011, 2015.
+#~ #
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex-2.5.38\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2015-04-26 09:12+0200\n"
"Last-Translator: Keld Simonsen <keld@keldix.com>\n"
"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
@@ -16,6 +31,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8-bit\n"
+"X-Bugs: Report translation errors to the Language-Team address.\n"
#: src/buf.c:79
msgid "Allocation of buffer to print string failed"
@@ -77,26 +93,26 @@ msgstr ""
"DFA-udskrift:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "kunne ikke oprette en unik buffersluttilstand"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "tilstand %d:\n"
# Dette er ju helt sjukt. Har buggrapporteret dette at det bør
# erstatas med %s
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "Kunne ikke skrive yynxt_tbl[][]"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "forkert overgangstegn fundet i sympartition()"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -108,29 +124,29 @@ msgstr ""
"Ækvivalensklasser:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "tilstand %d accepterer: [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "tilstand %d accepterer: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "Kunne ikke skrive yyacclist_tbl"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "Kunne ikke skrive yyacc_tbl"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "Kunne ikke skrive esctbl"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -140,344 +156,348 @@ msgstr ""
"\n"
"Meta-ækvivalensklasser:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "Kunne ikke skrive yymeta_tbl"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "kunne ikke oprette yybase_tbl"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "Kunne ikke oprette yydef_tbl"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "Kunne ikke skrive yynxt_tbl"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "Kunne ikke skrive yychk_tbl"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "Kunne ikke skrive ftbl"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "Kunne ikke skrive ssltbl"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "Kunne ikke skrive eoltbl"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "Kunne ikke skrive yynultrans_tbl"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "reglen kan ikke matches"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr "flaget -s angivet, men standardreglen kan følges"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "-+ kan ikke bruges sammen med flaget -l"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "-f eller -F kan ikke bruges sammen med -l"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr "Kan ikke bruge --reentrant eller --bison-bridge sammen med flaget -l"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "-Cf/-CF og -Cm kan ikke bruges sammen"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "-Cf/-CF og -I kan ikke bruges sammen"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "-Cf/-CF kan ikke bruges i lex-kompatibilitetstilstand"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "-Cf og -CF er gensidigt udelukkende"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "-+ kan ikke bruges sammen med flaget -CF"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "-+ kan ikke bruges sammen med %array"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "Flagene -+ og --reentrant er gensidigt udelukkende."
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "bisonbro understøttes ikke for C++-skanneren."
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "kunne ikke oprette %s"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "kunne ikke skrive tabellhoved"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "kan ikke åbne skabelonfilen %s"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr "tildeling af makro-definition mislykkedes"
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "fejl ved læsning af skabelonsfilen %s"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "fejl ved lukning af skabelonfilen %s"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "fejl ved oprettelsen af headerfilen %s"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "fejl ved skrivning af udfilen %s"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "fejl ved lukning af udfilen %s"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "fejl ved sletning af udfilen %s"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "Ingen sikkerhedskopiering.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d sikkerhedskopierer (ikke-accepterende) tilstande.\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Komprimerete tabeller backer alltid tillbaka.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "fejl ved skrivning af sikkerhedskopifilen %s"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "fejl ved lukning af sikerhedskopifilen %s"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "Statistik over brugaf %s version %s:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " fortolkningsflag: -"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d NFA-tilstand\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d DFA-tilstand (%d ord)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d regler\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " Ingen sikkerhedskopiering\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d sikkerhedskopierer (ikke-accepterende) tilstande.\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Komprimerede tabeller bakker altid tilbake\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " Begyndelse-af-linje-mønster brugt\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d startbetingelse\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d epsilontilstande, %d dobbelte epsilontilstande\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " ingen tegnklasser\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr " %d/%d tegnklasser behøvede %d/%d ord for gemning, %d genbrugte\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d par med tilstand/næste-tilstand oprettede\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d unikke/duplikerede overgange\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d tabelposter\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d base/standard-poster oprettede\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (max %d) næste/test-poster oprettede\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " %d/%d (max %d) skablon-næste/test-poster oprettede\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d tomme tabelposter\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d prototyper oprettede\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d skabloner oprettede, %d formål\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d ækvivalensklasser oprettet\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d meta-ækvivalensklasser oprettede\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d gemte) hash-kollisioner, %d DFA'er er ens\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " %d opsætninger med omallokeringer krævedes\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " %d totale tabelposter kræves\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "Intern fejl. flexopts er fejlbehæftede.\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Prøv '%s --help' for mere information.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "ukendt flag til -C '%c'"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "uoprettelig fejl ved analysen"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "kunne ikke oprette sikkerhedskopi af info-fil %s"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr ""
"flaget -l for opførsel som AT&T's lex medfører et væsentligt præstationstab\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr " og kan være den egentlige årsag til andre rapporter om dette\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
@@ -486,54 +506,54 @@ msgstr ""
"%%option yylineno medfører et præstationstab KUN på regler der kan matche "
"nylinje-tegn\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "-I (interaktiv) medfører et mindre præstationstab\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() medfører et mindre præstationstab\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT medfører et væsentligt præstationstab\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr ""
"Regler for variabel efterfølgende kontekst medfører et væsentlig "
"præstationstab\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT kan ikke bruges sammen med -f eller -F"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "%option yylineno kan ikke bruges sammen med REJECT"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr ""
"regler for variabel efterfølgende kontekst kan ikke bruges\n"
"sammen med -f eller -F"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%option yyclass er kun meningsfyldt for C++-fortolkere"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Brug: %s [FLAG] [FIL]...\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -588,8 +608,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -664,48 +682,48 @@ msgstr ""
" -h, --help udskriv denne hjælpebesked\n"
" -V, --version udskriv %s version\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr "tildeling af sko_stack mislykkedes"
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "navnet '%s' er latterligt langt"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "hukommelsestildelingen mislykkedes i allocate_array()"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "forkert tegn '%s' fundet i check_char()"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "skanneren kræver flaget -8 for at kunne bruge tegnet %s"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "hukommelsestildelingen mislykkedes i allocate_array()"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: uoprettelig intern fejl, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "forsøg på at øge arraystørrelse mislykkedes"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "forkert linje i skeletfilen"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "hukommelsestildelingen mislykkedes i yy_flex_xmalloc()"
@@ -739,20 +757,20 @@ msgstr "tom maskine i dupmachine()"
msgid "Variable trailing context rule at line %d\n"
msgstr "Regel for variabel efterfølgende kontekst på linje %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "forkert tilstandstype i mark_beginning_as_normal()"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "inddatareglerne er for komplicerede (>= %d NFA-tilstand)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "fandt for mange overgange i mkxtion()"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "for mange regler (> %d)!"
@@ -761,132 +779,136 @@ msgstr "for mange regler (> %d)!"
msgid "unknown error processing section 1"
msgstr "ukendt fejl ved tolkning af sektion 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "forkert liste af startbetingelser"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "ukendt regel"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "efterfølgende kontekst brugt to gange"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "fejlagtige iterationsværdier"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "iterationsværdi skal være positiv"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr "tegnintervallet [%c-%c] er flertydigt i en versalufølsom skanner"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "negativt interval i tegnklasse"
-#: src/parse.y:916
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr "[:^lower:] er flertydigt i en versalufølsom skanner"
-#: src/parse.y:922
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr "[:^upper:] er flertydigt i en versalufølsom skanner"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "For lang inddatalinje\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "fejlagtigt '%top'-direktiv"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "ukendt '%'-direktiv"
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr "For langt definitionsnavn\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "Ensomt '{'"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr "Definitionsværdi for (%s) for langt\n"
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "ufuldstændig navnedefinition"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr "For lang valgmulighedslinje\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "ukendt %%option: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "forkert tegnklasse"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "udefinieret definition {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "forkert <startbetingelse>: %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "citationstegn savnes"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "forkert udtryk for tegnklasse: %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "forkert tegn imellem {}"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "} savnes"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "filslutning mødt inden i en handling"
-#: src/scan.l:951
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
msgstr "filslutning mødt inden i et mønster"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "forkert tegn: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "kan ikke åbne %s"
@@ -934,16 +956,16 @@ msgstr "navnet defineret to gange"
msgid "start condition %s declared twice"
msgstr "startbetingelse %s deklareret to gange"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "for tidlig filslut"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Slutmarkering\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*Noget mærkeligt* - tegn: %d værdi: %d\n"
diff --git a/po/de.po b/po/de.po
index 8de1586..14958e7 100644
--- a/po/de.po
+++ b/po/de.po
@@ -1,13 +1,28 @@
-# German messages for flex
-# Copyright (C) 2007 The Flex Project (msgids)
-# This file is distributed under the same license as the flex package.
-# Michael Piefel <piefel@informatik.hu-berlin.de>, 2002, 2003, 2008, 2012
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex 2.5.36\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:23-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # German messages for flex
+#~ # Copyright (C) 2007 The Flex Project (msgids)
+#~ # This file is distributed under the same license as the flex package.
+#~ # Michael Piefel <piefel@informatik.hu-berlin.de>, 2002, 2003, 2008, 2012
+#~ #
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex 2.5.36\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2012-08-03 13:42+0200\n"
"Last-Translator: Michael Piefel <piefel@informatik.hu-berlin.de>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
@@ -15,6 +30,7 @@ msgstr ""
"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"
#: src/buf.c:79
msgid "Allocation of buffer to print string failed"
@@ -76,24 +92,24 @@ msgstr ""
"DFA-Ausgabe:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "konnte keinen einzigartigen Ende-des-Puffers-Zustand erzeugen"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "Zustand # %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "Konnte yynxt_tbl[][] nicht schreiben"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "ungültiges Übergangszeichen in sympartition() entdeckt"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -105,29 +121,29 @@ msgstr ""
"Äquivalenz-Klassen:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "Zustand # %d akzeptiert: [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "Zustand # %d akzeptiert: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "Konnte yyacclist_tbl nicht schreiben"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "Konnte yyacc_tbl nicht schreiben"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "Konnte ecstbl nicht schreiben"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -137,347 +153,351 @@ msgstr ""
"\n"
"Meta-Äquivalenz-Klassen:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "Konnte yymeta_tbl nicht schreiben"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "Konnte yybase_tbl nicht schreiben"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "Konnte yydef_tbl nicht schreiben"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "Konnte yynxt_tbl nicht schreiben"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "Konnte yychk_tbl nicht schreiben"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "Konnte ftbl nicht schreiben"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "Konnte ssltbl nicht schreiben"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "Konnte eoltbl nicht schreiben"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "Konnte yynultrans_tbl nicht schreiben"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "Regel kann nicht passen"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr "„-s“-Option gegeben, aber Vorgabe-Regel kann nicht passen"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "Kann nicht „-+“ zusammen mit „-l“-Option verwenden"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "Kann nicht „-f“ oder „-F“ zusammen mit „-l“-Option verwenden"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr ""
"Kann nicht „--reentrant“ oder „--bison-bridge“ mit „-l“-Option verwenden"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "„-Cf“/„-CF“ und „-Cm“ sind zusammen nicht sinnvoll"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "„-Cf“/„-CF“ und „-I“ sind inkompatibel"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "„-Cf“/„-CF“ sind inkompatibel mit lex-Kompatibilitätsmodus"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "„-Cf“ und „-CF“ schließen sich gegenseitig aus"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "Kann nicht „-+“ zusammen mit „-CF“-Option verwenden"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "„%array“ inkompatibel mit „-+“-Option"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "Optionen „-+“ und „--reentrant“ schließen sich gegenseitig aus."
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "Brücke zu Bison für den C++-Scanner nicht unterstützt."
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "konnte %s nicht erzeugen"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "konnte Tabellenköpfe nicht schreiben"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "kann Skelett-Datei %s nicht öffnen"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr "Anlegen der Makrodefinition fehlgeschlagen"
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "Eingabefehler beim Lesen der Skelett-Datei %s"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "Fehler beim Schließen der Skelett-Datei %s"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "Fehler beim Erstellen der Header-Datei %s"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "Fehler beim Schreiben der Ausgabe-Datei %s"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "Fehler beim Schließen der Ausgabe-Datei %s"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "Fehler beim Löschen der Ausgabe-Datei %s"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "Kein Backing-up.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d Zustände mit Backing-up (nicht akzeptierend).\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Komprimierte Tabellen benutzen immer Backing-up.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "Fehler beim Schreiben der Backup-Datei %s"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "Fehler beim Schließen der Backup-Datei %s"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "%s Version %s Benutzungsstatistiken:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " Scanner-Optionen: -"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d NFA-Zustände\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d DFA-Zustände (%d Wörter)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d Regeln\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " Kein Backing-up.\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d Zustände mit Backing-up (nicht akzeptierend).\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Komprimierte Tabellen benutzen immer Backing-up.\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " Zeilenanfang-Muster benutzt\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d Startbedingungen\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d Epsilon-Zustände, %d Doppel-Epsilon-Zustände\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " keine Zeichenklassen\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr ""
" %d/%d Zeichenklassen brauchten %d/%d Speicherwörter, %d wiederbenutzt\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d Zustand/Nächster-Zustand-Paare erzeugt\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d einzigartige/doppelte Übergänge\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d Tabelleneinträge\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d Einträge „base-def“ erzeugt\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (max. %d) Einträge „nxt-chk“ erzeugt\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " %d/%d (max. %d) Einträge „template nxt-chk“ erzeugt\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d leere Tabelleneinträge\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d Protos erzeugt\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d Schablonen erzeugt, %d Benutzungen\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d Äquivalenz-Klassen erzeugt\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d Meta-Äquivalenz-Klassen erzeugt\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d gespeichert) Hash-Kollisionen, %d DFAs gleich\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " %d Sätze von Neuallozierungen benötigt\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " %d Tabelleneinträge insgesamt benötigt\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "Interner Fehler. flexopts sind missgestaltet.\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Versuchen Sie es mit „%s --help“ für mehr Informationen.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "unbekannte „-C“-Option „%c“"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "fataler Parse-Fehler"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "konnte Datei %s mit Informationen zum Backing-up nicht erzeugen"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr ""
"-l AT&T-lex-Kompatibilitätsmodus führt zu großen Geschwindigkeitseinbußen\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr ""
" und ist möglicherweise die wirkliche Quelle anderer gemeldeter Einbußen\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
@@ -486,54 +506,54 @@ msgstr ""
"%%option yylineno führt zu Geschwindigkeitseinbußen NUR für Regeln, die auf "
"einen Zeilenvorschub passen können\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "-I (interaktiv) führt zu kleineren Geschwindigkeitseinbußen\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() führt zu kleineren Geschwindigkeitseinbußen\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT führt zu großen Geschwindigkeitseinbußen\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr ""
"Regeln mit variablem folgenden Kontext führen zu großen "
"Geschwindigkeitseinbußen\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT kann nicht mit „-f“ oder „-F“ zusammen verwendet werden"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "%option yylineno kann nicht mit REJECT zusammen verwendet werden"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr ""
"Regeln mit variablem folgenden Kontext können nicht mit „-f“ oder „-F“ "
"verwendet werden"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%option yyclass ist nur bei C++-Scannern sinnvoll"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Aufruf: %s [OPTIONEN...] [DATEI...]\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -588,8 +608,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -667,48 +685,48 @@ msgstr ""
" -h, --help produziere diese Hilfenachricht\n"
" -V, --version melde %s-Version\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr "Anlegen des sko_stack fehlgeschlagen"
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "name „%s“ ist lächerlich lang"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "Speicheranforderung in allocate_array() fehlgeschlagen"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "ungültiges Zeichen „%s“ in check_char() entdeckt"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "Scanner erfordert Option „-8“, um das Zeichen %s benutzen zu können"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "Speicheranforderung in allocate_array() fehlgeschlagen"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: fataler interner Fehler, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "Versuch, die Feldgröße zu erhöhen, fehlgeschlagen"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "ungültige Zeile in Skelettdatei"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "Speicheranforderung in yy_flex_xmalloc() fehlgeschlagen"
@@ -742,20 +760,20 @@ msgstr "leere Maschine in dupmachine()"
msgid "Variable trailing context rule at line %d\n"
msgstr "Regel mit veränderlichem folgenden Kontext in Zeile %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "ungültiger Zustandstyp in mark_beginning_as_normal()"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "Eingaberegeln sind zu kompliziert (>= %d NFA-Zustände)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "zu viele Übergänge in mkxtion() gefunden"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "zu viele Regeln (> %d)!"
@@ -764,138 +782,142 @@ msgstr "zu viele Regeln (> %d)!"
msgid "unknown error processing section 1"
msgstr "unbekannter Fehler beim Bearbeiten von Abschnitt 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "ungültige Startbedingungs-Liste"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "nicht erkannte Regel"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "folgender Kontext doppelt verwendet"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "ungültige Iterationswerte"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "Iterationswerte müssen positiv sein"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr ""
"der Zeichenbereich [%c-%c] ist in Scannern ohne Beachtung von Groß-/"
"Kleinschreibung mehrdeutig"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "negativer Bereich in Zeichenklasse"
-#: src/parse.y:916
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr ""
"[:^lower:] ist in Scannern ohne Beachtung von Groß-/Kleinschreibung "
"mehrdeutig"
-#: src/parse.y:922
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr ""
"[:^upper:] ist in Scannern ohne Beachtung von Groß-/Kleinschreibung "
"mehrdeutig"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "Eingabezeile zu lang\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "falsch geformte „%top“-Direktive"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "nicht erkannte „%“-Direktive"
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr "Definitionsname zu lang\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "Unbalancierte „{“"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr "Definitionswert für {%s} ist zu lang\n"
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "unvollständige Namensdefinition"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr "Optionszeile zu lang\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "nicht erkannte %%option: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "ungültige Zeichenklasse"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "undefinierte Definitione {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "ungültige <Startbedingung>: %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "fehlendes Anführungszeichen"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "ungültiger Zeichenklassenausdruck: %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "ungültiges Zeichen innerhalb von {}"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "fehlende }"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "EOF innerhalb einer Aktion angetroffen"
-#: src/scan.l:951
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
msgstr "EOF innerhalb eines Musters angetroffen"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "ungültiges Zeichen: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "kann %s nicht öffnen"
@@ -943,16 +965,16 @@ msgstr "Name zweimal definiert"
msgid "start condition %s declared twice"
msgstr "Startbedingung %s zweimal definiert"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "vorzeitiges EOF"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Endemarkierung\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*Etwas Seltsames* - tok: %d val: %d\n"
diff --git a/po/eo.po b/po/eo.po
index d65e069..b117eb5 100644
--- a/po/eo.po
+++ b/po/eo.po
@@ -1,13 +1,28 @@
-# Esperanto translation
-# Copyright © 2008 The Flex Project (msgids)
-# This file is distributed under the same license as the flex package.
-# Felipe Castro <fefcas@gmail.com>, 2012.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex 2.5.37\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:25-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Esperanto translation
+#~ # Copyright © 2008 The Flex Project (msgids)
+#~ # This file is distributed under the same license as the flex package.
+#~ # Felipe Castro <fefcas@gmail.com>, 2012.
+#~ #
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex 2.5.37\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2012-09-08 07:15-0300\n"
"Last-Translator: Felipe Castro <fefcas@gmail.com>\n"
"Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n"
@@ -15,6 +30,7 @@ msgstr ""
"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"
#: src/buf.c:79
msgid "Allocation of buffer to print string failed"
@@ -76,24 +92,24 @@ msgstr ""
"Nekropsio DFA:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "ne eblis krei unikan staton de bufro-fino"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "stato * %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "Ne eblis skribi yynxt_tbl[][]"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "malÄusta transiga signo estis detektata en sympartition()"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -105,29 +121,29 @@ msgstr ""
"Ekvivalentecaj Klasoj:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "stato # %d akceptas: [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "stato # %d akceptas: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "Ne eblis skribi yyacclist_tbl"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "Ne eblis skribi yyacc_tbl"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "Ne eblis skribi ecstbl"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -137,347 +153,351 @@ msgstr ""
"\n"
"Meta-Ekvivalentecaj Klasoj:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "Ne eblis skribi yymeta_tbl"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "Ne eblis skribi yybase_tbl"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "Ne eblis skribi yydef_tbl"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "Ne eblis skribi yynxt_tbl"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "Ne eblis skribi yychk_tbl"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "Ne eblis skribi ftbl"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "Ne eblis skribi ssltbl"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "Ne eblis skribi eoltbl"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "Ne eblis skribi yynultrans_tbl"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "regulo ne povas esti korespondata"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr ""
"la modifilo -s estis indikata sed la apriora regulo povas esti korespondata"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "Ne eblas uzi -+ kun la modifilo -l"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "Ne eblas uzi -f aŭ -F kun la modifilo -l"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr "Ne eblas uzi --reentrant aÅ­ --bison-bridge kun la modifilo -l"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "Sensencas -Cf/-CF kaj -Cm kune"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "-Cf/-CF kaj -I malakordas"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "-Cf/-CF malakordas kun lex-akorda reÄimo"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "-Cf kaj -CF estas reciproke ekskluzivaj"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "Ne eblas uzi -+ kun la modifilo -CF"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "%array malakordas kun modifilo -+"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "Modifiloj -+ kaj --reentrant estas reciproke ekskluzivaj."
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "bison-ponto ne estas subtenata por la skanilo C++."
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "ne eblis krei %s"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "ne eblis skribi tabel-kapojn"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "ne eblas malfermi la skeletan dosieron %s"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr "rezervo de makroa difino fiaskis"
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "eniga eraro dum lego de la skeleta dosiero %s"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "eraro dum fermo de la skeleta dosiero %s"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "eraro dum kreo de la kap-dosiero %s"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "eraro dum skribo de la eliga dosiero %s"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "eraro dum fermo de la eliga dosiero %s"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "eraro dum forigo de eliga dosiero %s"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "Sen savkopiado.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d savkopiadas (ne-akceptantajn) statojn.\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Densigitaj tabeloj ĉiam estas savkopiataj.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "eraro dum skribo de la savkopia dosiero %s"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "eraro dum fermo de la savkopia dosiero %s"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "%s versio %s statistikoj pri usado:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " skanilaj modifiloj: -"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d statoj NFA\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d statoj DFA (%d vortoj)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d reguloj\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " Sen savkopiado\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d savkopianta (ne-akceptantajn) statojn\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Densigitaj tabeloj ĉiam savkopiite\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " modeloj komenco-de-linio estas uzataj\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d komencaj kondiĉoj\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d epsilonaj statoj, %d duoblaj epsilonaj statoj\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " neniu signo-klaso\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr " %d/%d signo-klasoj bezonis %d/%d vortojn da memoro, %d reuzitaj\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d stato/sekvstato-paroj estis kreataj\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d unikaj/duobligitaj transigoj\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d tabel-enigoj\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d bazo-def enigoj estis kreataj\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (pinto %d) enigoj nxt-chk estis kreataj\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " %d/%d (pinto %d) Åablonaj enigoj nxt-chk estis kreataj\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d malplenaj tabel-enigoj\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d protoj estis kreataj\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d Åablonoj estis kreataj, %d uzoj\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d ekvivalento-klasoj estis kreataj\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d metaekvivalento-klasoj estis kreataj\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d konservitaj) haketaj kolizioj, %d DFA egalaj\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " %d aroj de relokigoj estas bezonataj\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " entute %d tabel-enigoj estas bezonataj\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "Interna eraro. 'flexopt' estas misformitaj.\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Provu '%s --help' por pli da informo.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "nekonata modifilo -C '%c'"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "neriparebla analiz-eraro"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "ne eblis krei savkopiad-informan dosieron %s"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr ""
"La modifilo -l AT&T de akordigo al lex alportas grandan malaltigon de "
"rendimento\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr ""
" kaj povas esti la vera fonto de aliaj raportitaj malaltigoj de rendimento\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
@@ -486,50 +506,50 @@ msgstr ""
"%%option yylineno alportas malaltigon de rendimento NUR kun reguloj kiuj "
"povas akordiÄi kun novliniaj signoj\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "-I (interage) alportas etan malaltigon de rendimento\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() alportas etan malaltigon de rendimento\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT alportas grandan malaltigon de rendimento\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr "Variabla vosta kunteksto alportas grandan malaltigon de rendimento\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT ne povas esti uzata kun -f aÅ­ F"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "%option yylineno ne povas esti uzata kun REJECT"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr "variablaj vostaj kuntekstaj reguloj ne povas esti uzataj kun -f aÅ­ F"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%option yyclass nur koheras por skaniloj C++"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Uzado: %s [MODIFILOJ] [DOSIERO]...\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -584,8 +604,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -661,48 +679,48 @@ msgstr ""
" -h, --help produkti tiun ĉi help-mesaÄon\n"
" -V, --version raporti la version de %s\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr "rezervo de sko_stack fiaskis"
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "la nomo \"%s\" estas ridinde longa"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "rezervo de memoro fiaskis en allocate_array()"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "malÄusta signo '%s' estis detektata en check_char()"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "la skanilo postulas la flagon -8 por uzi la signon %s"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "rezervo de memoro fiaskis en allocate_array()"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: neriparebla interna eraro, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "provo pliigi grandon de tabelo fiaskis"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "malÄusta linio en skeleta dosiero"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "rezervo de memoro fiaskis en yy_flex_xmalloc()"
@@ -736,20 +754,20 @@ msgstr "malplena maÅino en dupmachine()"
msgid "Variable trailing context rule at line %d\n"
msgstr "Variabla vosta kunteksta regulo ĉe linio %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "malÄusta stat-tipo en mark_beginning_as_normal()"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "enigaj reguloj estas tro komplikaj (>= %d statoj NFA)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "tro multe da transigoj estis trovataj en mkxtion()"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "tro multe da reguoloj (> %d)!"
@@ -758,132 +776,136 @@ msgstr "tro multe da reguoloj (> %d)!"
msgid "unknown error processing section 1"
msgstr "Nekonata erar-proceza sekcio 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "malÄusta komenc-kondiĉa listo"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "nerekonata regulo"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "vosta kunteksto estis uzata duoble"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "malÄustaj iteraciaj valoroj"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "iteracia valoro devas esti pozitiva"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr "la signara intervalo [%c-%c] estas dusenca en sen-uskleca skanilo"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "negativa intervalo en signo-klaso"
-#: src/parse.y:916
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr "[:^lower:] estas dusenca en sen-uskleca skanilo"
-#: src/parse.y:922
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr "[:^upper:] estas dusenca en sen-uskleca skanilo"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "Eniga linio tro longas\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "misformita instrukcio '%top'"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "nerekonita instrukcio '%'"
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr "Nom-difino tro longas\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "Senpara '{'"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr "Valor-difino por {%s} tro longas\n"
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "nekompleta nom-difino"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr "Linio de modifiloj tro longas\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "nerekonita %%modifilo: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "malÄusta signo-klaso"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "nedifinita difino {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "malÄusta <komenca kondiĉo>: %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "mankas citilo"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "malÄusta signo-klasa esprimo: %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "malÄusta signo interne de {}"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "mankas }"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "EOF estis trovata interne de ago"
-#: src/scan.l:951
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
msgstr "EOF estis trovata interne de modelo"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "malÄusta signo: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "ne eblas malfermi %s"
@@ -931,16 +953,16 @@ msgstr "nomo estis difinata duoble"
msgid "start condition %s declared twice"
msgstr "la komenca kondiĉo %s estis deklarata duoble"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "tro frua EOF"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Fino-markilo\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*Io Stranga* - ero: %d val: %d\n"
diff --git a/po/es.po b/po/es.po
index 9eac583..d9a5f8d 100644
--- a/po/es.po
+++ b/po/es.po
@@ -1,13 +1,28 @@
-# Mensajes en español para GNU flex.
-# Copyright (C) 2002 The Flex Project
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
-# Nicolás García-Pedrajas <ngarcia-pedrajas@acm.org>, 1997.
-# Gracias a Nicolás Fernández García que me ha sugerido algunas ideas.
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: GNU flex 2.5.8\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:27-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Mensajes en español para GNU flex.
+#~ # Copyright (C) 2002 The Flex Project
+#~ #
+#~ # Nicolás García-Pedrajas <ngarcia-pedrajas@acm.org>, 1997.
+#~ # Gracias a Nicolás Fernández García que me ha sugerido algunas ideas.
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: GNU flex 2.5.8\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2003-01-02 12:06+0100\n"
"Last-Translator: Nicolás García-Pedrajas <ngarcia-pedrajas@acm.org>\n"
"Language-Team: Spanish <es@li.org>\n"
@@ -15,6 +30,23 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8-bit\n"
+"X-Bugs: Report translation errors to the Language-Team address.\n"
+
+#: src/buf.c:79
+msgid "Allocation of buffer to print string failed"
+msgstr ""
+
+#: src/buf.c:107
+msgid "Allocation of buffer for line directive failed"
+msgstr ""
+
+#: src/buf.c:177
+msgid "Allocation of buffer for m4 def failed"
+msgstr ""
+
+#: src/buf.c:198
+msgid "Allocation of buffer for m4 undef failed"
+msgstr ""
#: src/buf.c:79
msgid "Allocation of buffer to print string failed"
@@ -90,24 +122,24 @@ msgstr ""
"Volcado AFD:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "no se pudo crear un estado único de final-de-buffer"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "estado # %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr ""
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "carácter de transición erróneo detectado en sympartition()"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -119,32 +151,32 @@ msgstr ""
"Clases de equivalencia:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "el estado # %d acepta: [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "el estado # %d acepta: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr ""
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr ""
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
#, fuzzy
msgid "Could not write ecstbl"
msgstr "no se pudo crear %s"
# ¿No sería mejor "MetaEquivalencia" o "Meta-Equivalencia"? sv
# yo prefiero como está, es el mismo caso de metafísica ng+
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -154,43 +186,43 @@ msgstr ""
"\n"
"Clases de metaequivalencia:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr ""
-#: src/gen.c:1362
+#: src/gen.c:1352
#, fuzzy
msgid "Could not write yybase_tbl"
msgstr "no se pudo crear %s"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr ""
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr ""
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr ""
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
#, fuzzy
msgid "Could not write ftbl"
msgstr "no se pudo crear %s"
-#: src/gen.c:1624
+#: src/gen.c:1614
#, fuzzy
msgid "Could not write ssltbl"
msgstr "no se pudo crear %s"
-#: src/gen.c:1675
+#: src/gen.c:1665
#, fuzzy
msgid "Could not write eoltbl"
msgstr "no se pudo crear %s"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr ""
@@ -201,25 +233,25 @@ msgstr ""
# abierta con una cerrada, por ejemplo, pero no cuando se trata de ver
# si una regla "matches" o no "matches".
# creo que aplicar no qeuda mal ng+
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "la regla no se puede aplicar"
# ## re-redacto el mensaje. sv
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr ""
"se ha especificado la opción -s pero se puede aplicar la regla por defecto"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "No se puede usar -+ con la opción -l"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "No se pueden usar las opciones -f o -F con la opción -l"
-#: src/main.c:229
+#: src/main.c:228
#, fuzzy
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr "No se pueden usar las opciones -R o -Rb con la opción -l"
@@ -227,7 +259,7 @@ msgstr "No se pueden usar las opciones -R o -Rb con la opción -l"
# ¿juntos o juntas?
# Creo que está bien así em
# ok ng
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "-Cf/-CF y -Cm no tienen sentido juntos"
@@ -236,42 +268,42 @@ msgstr "-Cf/-CF y -Cm no tienen sentido juntos"
# entonces lo dejo ng
# Yo creo que en este caso no hace falta porque se leería así:
# "menos ce efe o menos ce efe mayúscula y menos I son incompatibles". sv
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "-Cf/-CF e -I son incompatibles"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "-Cf/-CF son incompatibles con el modo de compatibilidad con lex"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "-Cf y -CF son mutuamente excluyentes"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "No se puede usar -+ con la opción -CF"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "%array incompatible con la opción -+"
-#: src/main.c:285
+#: src/main.c:284
#, fuzzy
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "-+ y -R son mutuamente excluyentes"
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr ""
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "no se pudo crear %s"
-#: src/main.c:439
+#: src/main.c:431
#, fuzzy
msgid "could not write tables header"
msgstr "no se pudo crear %s"
@@ -280,12 +312,16 @@ msgstr "no se pudo crear %s"
# lo mismo de antes ng
# Lo mismo que antes :) em
# idem ng+
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "no se puede abrir el archivo de esquema %s"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr ""
@@ -305,46 +341,46 @@ msgstr ""
# que decida una tercera persona
#
# ## Cambio "leyendo" por "al leer", como en otras traducciones. sv
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "error de entrada al leer el archivo de esquema %s"
# Otra vez :) em
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "error al cerrar el archivo de esquema %s"
# Lo mismo, archivo de seguridad? em
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "error al crear el archivo de cabecera %s"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "error al escribir el archivo de salida %s"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "error al cerrar el archivo de salida %s"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "error al borrar el archivo de salida %s"
# Copia de seguridad? em
# Sugerencia: No hay retroceso. sv
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "Sin retroceso.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d estados de retroceso (no-aceptación).\n"
@@ -354,13 +390,13 @@ msgstr "%d estados de retroceso (no-aceptación).\n"
# "Compressed tables are always back up"
# (supuesto que back es irregular y su pasado/participio es back y no backed,
# que ahora mismo no me acuerdo). sv
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Las tablas comprimidas siempre implican un retraso.\n"
# Lo mismo, archivo de seguridad? em
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "error al escribir el archivo de seguridad %s"
@@ -368,47 +404,47 @@ msgstr "error al escribir el archivo de seguridad %s"
# En todas las traducciones que ha aparecido
# he sugerido el uso de copia de seguridad em
# ok ng
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "error al cerrar el archivo de copia de seguridad %s"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "%s versión %s estadísticas de uso:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " opciones del analizador: -"
# NFA significa non-deterministic finite automata, así que lo he traducido
# por AFN
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d estados AFN\n"
# DFA significa deterministic finite autómata, lo he traducido por AFD
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d estados AFD {%d palabras}\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d reglas\n"
# Otra vez ;) em
# modificado como en la anterior ng
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " Sin retroceso\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d estados de retroceso (no-aceptación)\n"
@@ -416,18 +452,18 @@ msgstr " %d estados de retroceso (no-aceptación)\n"
# FIXME.
# Informar al autor de que esta frase es casi idéntica a una anterior, para
# que sólo haya que traducirla una vez. sv
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Siempre se realiza copia de seguridad de las tablas comprimidas\n"
# Lo mismo "se han usado patrones de comienzo de línea". sv
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " Usados patrones de comienzo-de-línea\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d condiciones de activación\n"
@@ -440,17 +476,17 @@ msgstr " %d/%d condiciones de activación\n"
# lo de doble épsilon no lo he oído nunca. Creo que hay que dejar el término
# técnico. ng
# Tu mandas, no tengo nada que decir a eso em
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d estados épsilon, %d estados doble épsilon\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " sin clases de caracteres\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr ""
@@ -461,13 +497,13 @@ msgstr ""
# ¿Qué tal " se han creado %d pares estado/estado-siguiente"?
# Bueno, mejor no lo hagas hasta que no se sepa cómo queda al lado
# de las otras. sv
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d pares estado/estado-siguiente creados\n"
# ## Añado sendas eses, ya que son transiciones. sv
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d transiciones únicas/duplicadas\n"
@@ -476,50 +512,50 @@ msgstr " %d/%d transiciones únicas/duplicadas\n"
# sí, mejor ng
# ¿Que había antes? (¿entradas a la tabla?)
# (entradas *de* la tabla me suena mejor) sv.
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d entradas en la tabla\n"
# ## pongo `comillas' en el base-def. sv
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d entradas `base-def' creadas\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (pico %d) entradas nxt-chk creadas\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " %d/%d (pico %d) entradas de plantilla nxt-chk creadas\n"
# ¿entradas a la tabla o entradas de la tabla? sv
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d entradas en la tabla vacías\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d prototipos creados\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d plantillas creadas, %d usos\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d clases de equivalencia creadas\n"
# "se han creado..." sv
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d clases de metaequivalencia creadas\n"
@@ -537,40 +573,40 @@ msgstr " %d/%d clases de metaequivalencia creadas\n"
# un lugar que se puede determinar mediante una transformación directa de su
# clave, por eso si hay dos claves iguales hay una colisión, porque dos
# registros van al mismo sitio ng+
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr ""
" %d (%d almacenadas) colisiones de localización ('hash'), %d AFDs iguales\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " se necesitan %d conjuntos de relocalización\n"
# Lo mismo que en otro sitio: ¿table entries son entradas a la tabla o
# de la tabla? sv
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " se necesitan %d entradas totales en la tabla\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "Error interno. flexopts mal formadas.\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Pruebe `%s --help' para más información.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "opción -C desconocida '%c'"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
@@ -587,7 +623,7 @@ msgstr "%s %s\n"
# Sugerencia: error fatal. sv
# con comillas es un término medio. Lo de error grave fue una sugerencia
# de Enrique, y croe que queda mejor. ng+
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "error muy grave en el analizador sintáctico"
@@ -610,28 +646,28 @@ msgstr "error muy grave en el analizador sintáctico"
# ##
# ## Eso no es válido ( solución, usa emacs po-mode :) ) em
# ## ok, ya estoy instalando linux otra vez ng+
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr ""
"no se pudo crear el archivo de información de las reglas\n"
"que producen un retroceso del analizador %s"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr ""
"-l la opción de compatibilidad con AT&T lex implica una penalización del\n"
"rendimiento muy alta\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr ""
" y puede ser el origen real de otras penalizaciones del rendimiento "
"notificadas\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, fuzzy, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
@@ -639,53 +675,53 @@ msgid ""
msgstr ""
"la %%opción yylineno implica una penalización del rendimiento muy alta\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "-I (interactivo) implica una pequeña penalización del rendimiento\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() implica un pequeña penalización del rendimiento\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT implica una penalización del rendimiento muy alta\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr ""
"La existencia de reglas de contexto posterior variable implica una\n"
"penalización del rendimiento muy alta\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT no se puede usar con -f o -F"
-#: src/main.c:1587
+#: src/main.c:1576
#, fuzzy, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "la %opción yylineno no se puede usar con -f o -F"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr ""
"las reglas de contexto posterior variable no se pueden usar con -f o -F"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "la %option yyclass sólo tiene sentido para los analizadores en C++"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Uso: %s [OPCIONES] [FICHERO]...\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -815,11 +851,11 @@ msgstr ""
" -h, --help produce este mensaje de ayuda\n"
" -V, --version informa de la versión %s\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr ""
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "nombre \"%s\" ridículamente grande"
@@ -829,18 +865,18 @@ msgstr "nombre \"%s\" ridículamente grande"
# Sí, pero creo que sólo por mí. Normalmente esos mensajes
# los dá la biblioteca C antes em
# ok ng+
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "falló la asignación de memoria en `allocate_array()'"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "carácter incorrecto '%s' detectado en `check_char()'"
# he añadido el `poder' em
# ok ng
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "el analizador requiere la opción -8 para poder usar el carácter %s"
@@ -850,26 +886,26 @@ msgstr "el analizador requiere la opción -8 para poder usar el carácter %s"
# Sí, pero creo que sólo por mí. Normalmente esos mensajes
# los dá la biblioteca C antes em
# ok ng+
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "falló la asignación de memoria en `allocate_array()'"
# Sugerencia: error fatal. sv
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: error interno muy grave, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "falló el intento de aumentar el tamaño de la matriz"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "línea incorrecta en el archivo de esquema"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "la reserva de memoria falló en yy_flex_xmalloc()"
@@ -905,21 +941,21 @@ msgstr "máquina vacía en `dupmachine()'"
msgid "Variable trailing context rule at line %d\n"
msgstr "Regla de contexto posterior variable en la línea %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "tipo de estado incorrecto en mark_beginning_as_normal()"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "las reglas de entrada son demasiado complicadas (>= %d estados AFN)"
# Sugerencia: se han encontrado... sv
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "encontradas demasiadas transiciones en mkxtion()"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "demasiadas reglas (> %d)!"
@@ -928,107 +964,111 @@ msgstr "demasiadas reglas (> %d)!"
msgid "unknown error processing section 1"
msgstr "error desconocido en el proceso de la sección 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "lista de condiciones de activación incorrecta"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "regla no reconocida"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "contexto posterior usado dos veces"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "valores incorrectos para iteración"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "los valores para iteración deben ser positivos"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr ""
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "rango negativo en clase caracteres"
-#: src/parse.y:916
+#: src/parse.y:918
#, fuzzy
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr ""
"\t-i genera un analizador que no distingue entre mayúsculas y minúsculas\n"
-#: src/parse.y:922
+#: src/parse.y:924
#, fuzzy
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr ""
"\t-i genera un analizador que no distingue entre mayúsculas y minúsculas\n"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr ""
-#: src/scan.l:161
+#: src/scan.l:183
#, fuzzy, c-format
msgid "malformed '%top' directive"
msgstr "directiva '%' no reconocida"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "directiva '%' no reconocida"
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr ""
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr ""
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr ""
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "definición de nombre incompleta"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr ""
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "%%opción no reconocida: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "clase de caracteres incorrecta"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "definición no definida {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "<condición de activación> incorrecta: %s"
# Sugerencia: falta una comilla. sv
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "falta comilla"
@@ -1036,35 +1076,35 @@ msgstr "falta comilla"
# incorrecta la expresión ... em
# ok, de traducir al final ocurre que acabas hablando al revés,
# como en inglés ng
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "expresión de la clase de caracteres incorrecta: %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "carácter incorrecto dentro de {}'s"
# Sugerencia: "falta una }". sv
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "falta }"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "Fin de archivo (EOF) encontrado dentro de una acción"
-#: src/scan.l:951
+#: src/scan.l:977
#, fuzzy
msgid "EOF encountered inside pattern"
msgstr "Fin de archivo (EOF) encontrado dentro de una acción"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "carácter incorrecto: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "no se puede abrir %s"
@@ -1117,18 +1157,18 @@ msgstr "el nombre ha sido definido dos veces"
msgid "start condition %s declared twice"
msgstr "la condición de activación %s ha sido declarada dos veces"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "fin de archivo (EOF) prematuro"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Marcador de fin\n"
# sobre lo de tok, me parece que es abreviatura de token. ng
# en bison he traducido token por terminal, creo que es bueno unificar. ng
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*Algo extraño* - terminal: %d val: %d\n"
diff --git a/po/fi.po b/po/fi.po
index c6d3d47..36202df 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -1,14 +1,29 @@
-# Finnish messages for flex.
-# Copyright © 2009, 2012 The Flex Project (msgids)
-# This file is put in the public domain.
-# This file is distributed under the same license as the flex package.
-# Jorma Karvonen <karvonen.jorma@gmail.com>, 2009, 2012.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex 2.5.36\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:28-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Finnish messages for flex.
+#~ # Copyright © 2009, 2012 The Flex Project (msgids)
+#~ # This file is put in the public domain.
+#~ # This file is distributed under the same license as the flex package.
+#~ # Jorma Karvonen <karvonen.jorma@gmail.com>, 2009, 2012.
+#~ #
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex 2.5.36\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2012-08-02 21:16+0200\n"
"Last-Translator: Jorma Karvonen <karvonen.jorma@gmail.com>\n"
"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
@@ -16,6 +31,7 @@ msgstr ""
"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"
#: src/buf.c:79
@@ -80,24 +96,24 @@ msgstr ""
"Deterministisen äärellisen automaatin vedos:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "ei voitu luoda uniikkia puskurinlopputilaa"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "tila numero %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "Ei voitu kirjoittaa yynxt_tbl[][]"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "väärä siirtymämerkki havaittu funktiossa sympartition()"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -109,29 +125,29 @@ msgstr ""
"Ekvivalenssiluokat:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "tila numero %d hyväksyy: [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "tila numero %d hyväksyy: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "Ei voitu kirjoittaa: yyacclist_tbl"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "Ei voitu kirjoittaa: yyacc_tbl"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "Ei voitu kirjoitaa ecstbl"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -141,351 +157,355 @@ msgstr ""
"\n"
"Meta-ekvivalenssiluokkia:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "Ei voitu kirjoittaa: yymeta_tbl"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "Ei voitu kirjoittaa: yybase_tbl"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "Ei voitu kirjoittaa: yydef_tbl"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "Ei voitu kirjoittaa: yynxt_tbl"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "Ei voitu kirjoittaa: yychk_tbl"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "Ei voitu kirjoittaa: ftbl"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "Ei voitu kirjoittaa: ssltbl"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "Ei voitu kirjoittaa: eoltbl"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "Ei voitu kirjoittaa: yynultrans_tbl"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "sääntö ei voinut täsmätä"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr "valitsin -s annettu mutta oletussääntö ei voinut täsmätä"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "Ei voi käyttää -+ valitsimen -l kanssa"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "Ei voi käyttää valitsinta -f tai -F valitsimen -l kanssa"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr ""
"Ei voi käyttää valitsinta --reentrant tai --bison-bridge valitsimen -l kanssa"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "-Cf/-CF ja -Cm eivät ole järkeviä yhdessä"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "-Cf/-CF ja -I ovat yhteensopimattomia"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "-Cf/-CF ovat yhteensopimattomia lex-yhteensopivuustilassa"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "-Cf ja -CF ovat toisensa poissulkevia"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "Ei voi käyttää valitsinta -+ valitsimen -CF kanssa"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "%array on yhteensopimaton valitsimen -+ kanssa"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "Valitsimen -+ ja --reentrant ovat toisensa poissulkevia."
# bison bridge tarkoittaa, että flex käyttää bison-ohjelmaa analyysissä
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "â€bison bridgeâ€-menettelyä ei tueta C++-skannerille."
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "ei voitu luoda %s"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "ei voitu kirjoittaa tauluotsaketta"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "ei voi avata kehystiedostoa %s"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr "Makromäärityksen varaaminen epäonnistui"
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "syötevirhe luettaessa kehystiedostoa %s"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "virhe suljettaessa kehystiedostoa %s"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "virhe luotaessa otsaketiedostoa %s"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "virhe kirjoitettaessa tulostetiedostoa %s"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "virhe suljettaessa tulostetiedostoa %s"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "virhe poistettaessa tulostetiedostoa %s"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "Ei varmuuskopiointia.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d (ei-hyväksyvää) varmuuskopiointitilaa.\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Tiivistetyt taulut varmuuskopioidaan aina.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "virhe kirjoitettaessa varmuuskopiotiedostoa %s"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "virhe suljettaessa varmuuskopiotiedostoa %s"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "%s-version %s käyttötilastot:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " skannerivalitsimet: -"
# Epädeterministinen äärellinen automaatti, lyh. NFA (engl. non-deterministic finite-state automaton)
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d Epädeterministisen äärellisen automaatin tilaa\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d Deterministisen äärellisen automaatin tilaa (%d sanaa)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d sääntöä\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " Ei varmuuskopiointia\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d (ei-hyväksyvää) varmuuskopiotilaa\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Tiivistetyt taulut varmuuskopioidaan aina\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " Rivin-alku-malleja käytetään\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d-käynnistysehtoja\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d epsilon-tilaa, %d double epsilon-tilaa\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " ei merkkiluokkia\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr ""
" %d/%d merkkiluokkaa tarvittu %d/%d tallennussanaan, %d käytetty uudelleen\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d tila/seuraavatila-paria luotu\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d uniikkia/kaksoiskappelsiirtymää\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d-tauluriviä\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d base-def-alkiota luotu\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (huippu %d) nxt-chk-alkiota luotu\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " %d/%d (huippu %d) malline nxt-chk-alkiota luotu\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d tyhjää taulualkiota\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d protoa luotu\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d mallinetta luotu, %d käytetään\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d ekvivalenssiluokkaa luotu\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d meta-ekvivalenssiluokkaa luotu\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr ""
" %d (%d tallennettu) hash-törmäykset, yhtäsuuri kuin %d Deterministisen "
"äärellisen automaatin törmäystä\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " %d uudelleenvarausjoukkoa tarvittu\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " %d taulukkoalkiota tarvittu yhteensä\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "Sisäinen virhe. flex-valitsimet ovat vääränmuotoisia.\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Lisätietoja käskyllä â€%s --helpâ€.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "tuntematon valitsin -C â€%câ€"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "vakava jäsennysvirhe"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "ei voitu luoda varmuuskopiotietotiedostoa %s"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr ""
"-l AT&T lex-yhteensopivuusvalitsin tuo mukanaan ison suorituskykysakon\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr ""
" ja saattaa olla muiden ilmoitettujen suorituskykysakkojen todellinen lähde\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
@@ -494,51 +514,51 @@ msgstr ""
"%%option yylineno tuo mukanaan suorituskykysakon VAIN säännöissä, jotka "
"voivat täsmätä rivinvaihtomerkkeihin\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "-I (interaktiivinen) tuo mukanaan pienemmän suorituskykysakon\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() tuo mukanaan pienemmän suorituskykysakon\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT tuo mukanaan ison suorituskykyrangaistuksen\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr "Muuttujajättökontekstisäännöt tuovat mukanaan ison suorityskykysakon\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT ei voida käyttää valitsimen -f tai -F kanssa"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "%option yylineno ei voi käyttää REJECT:n kanssa"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr ""
"muuttujajättökontekstisääntöjä ei voida käyttää valitsimen -f tai -F kanssa"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%option yyclass on merkityksellinen vain C++-skannereille"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Käyttö: %s [VALITSIMET] [TIEDOSTO]...\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -593,8 +613,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -674,48 +692,48 @@ msgstr ""
" -h, --help tuota tämä opastesanoma\n"
" -V, --version ilmoita %s-versio\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr "sko_stack-varaaminen epäonnistui"
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "nimi â€%s†on naurettavan pitkä"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "muistinvaraus epäonnistui funktiossa allocate_array()"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "väärä merkki â€%s†havaittu funktiossa check_char()"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "skanneri vaatiin lipun -8 käytettäväksi merkille %s"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "muistinvaraus epäonnistui funktiossa allocate_array()"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: vakava sisäinen virhe, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "yritys taulukon koon kasvattamiseksi epäonnistui"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "väärä rivi kehystiedostossa"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "muistinvaraus epäonnistui funktiossa yy_flex_xmalloc()"
@@ -750,22 +768,22 @@ msgstr "tyhjä kone funktiossa dupmachine()"
msgid "Variable trailing context rule at line %d\n"
msgstr "Muuttujajättökontekstisääntö rivillä %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "väärä tilatyyppi funktiossa mark_beginning_as_normal()"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr ""
"syötesäännöt ovat liian mutkikkaita (>= %d Epädeterministisen äärellisen "
"automaatin tilaa)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "löytyi liian monta siirtymää funktiossa mkxtion()"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "liian moni sääntöjä (> %d)!"
@@ -774,136 +792,140 @@ msgstr "liian moni sääntöjä (> %d)!"
msgid "unknown error processing section 1"
msgstr "tuntematon virhe käsiteltäessä lohkoa 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "väärä alkuehtoluettelo"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "tunnistamaton sääntö"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "jättökontekstia käytetty kahdesti"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "vääriä iteraatioarvoja"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "iteraatioarvon on oltava positiivinen"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr ""
"merkkialue [%c-%c] ei ole yksiselitteinen skannerissa, joka ei välitä "
"kirjainkoosta"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "negatiivinen lukualue merkkiluokassa"
-#: src/parse.y:916
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr ""
"[:^lower:] ei ole yksiselitteinen skannerissa, joka ei välitä kirjainkoosta"
-#: src/parse.y:922
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr ""
"[:^upper:] ei ole yksiselitteinen skannerissa, joka ei välit kirjainkoosta"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "Syöterivi on liian pitkä\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "vääränmuotoinen â€%topâ€-direktiivi"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "tunnistamaton â€%â€-direktiivi"
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr "Määritysnimi on liian pitkä\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "Pariton â€{â€"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr "Määritysarvo kohteelle {%s} on liian pitkä\n"
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "epätäydellinen nimimäärittely"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr "Valitsinrivi on liian pitkä\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "tunnistamaton %%valitsin: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "väärä merkkiluokka"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "määrittelemätön määrittely {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "virheellinen <aloitusehto>: %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "puuttuva lainausmerkki"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "väärä merkkiluokkalauseke: %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "väärä merkki aaltosulkeiden {} sisällä"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "puuttuva }"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "Tiedoston loppumerkki EOF tavattu toiminnon sisällä"
-#: src/scan.l:951
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
msgstr "Tiedoston loppumerkki EOF tavattu mallin sisällä"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "väärä merkki: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "ei voi avata %s"
@@ -951,16 +973,16 @@ msgstr "nimi määritelty kahdesti"
msgid "start condition %s declared twice"
msgstr "alkuehto %s esitelty kahdesti"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "ennenaikainen tiedoston loppumerkki EOF"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Loppumerkki\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*Jotain outoa - tok: %d arvo: %d\n"
diff --git a/po/fr.po b/po/fr.po
index 655324f..94f1a86 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -1,17 +1,32 @@
-# Messages français pour Flex.
-# Copyright © 2008, 2012 The Flex Project (msgids)
-# This file is distributed under the same license as the flex package.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
-# Dominique Boucher <boucherd@IRO.UMontreal.CA>, 1996.
-# Marc Baudoin <babafou@ensta.fr>, 1996-2002.
-# Michel Robitaille <robitail@IRO.UMontreal.CA>, 2002-2008.
-# François-Xavier Coudert <fxcoudert@gmail.com>, 2008.
-# David Prévot <david@tilapin.org>, 2012.
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex 2.5.37\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:32-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Messages français pour Flex.
+#~ # Copyright © 2008, 2012 The Flex Project (msgids)
+#~ # This file is distributed under the same license as the flex package.
+#~ #
+#~ # Dominique Boucher <boucherd@IRO.UMontreal.CA>, 1996.
+#~ # Marc Baudoin <babafou@ensta.fr>, 1996-2002.
+#~ # Michel Robitaille <robitail@IRO.UMontreal.CA>, 2002-2008.
+#~ # François-Xavier Coudert <fxcoudert@gmail.com>, 2008.
+#~ # David Prévot <david@tilapin.org>, 2012.
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex 2.5.37\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2012-09-19 21:01-0400\n"
"Last-Translator: David Prévot <david@tilapin.org>\n"
"Language-Team: French <traduc@traduc.org>\n"
@@ -19,6 +34,7 @@ msgstr ""
"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"
"X-Generator: Lokalize 1.4\n"
@@ -82,24 +98,24 @@ msgstr ""
"Vidage de l'AFD :\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "impossible de créer un seul état de fin de tampon"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "état nº %d :\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "Impossible d'écrire yynxt_tbl[][]"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "mauvais caractère de transition détecté dans sympartition()"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -111,29 +127,29 @@ msgstr ""
"Classes d'équivalence :\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "l'état nº %d accepte : [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "l'état nº %d accepte : "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "Impossible d'écrire yyacclist_tbl"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "Impossible d'écrire yyacc_tbl"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "Impossible d'écrire ecstbl"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -143,351 +159,355 @@ msgstr ""
"\n"
"Classes de métaéquivalence :\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "Impossible d'écrire yymeta_tbl"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "Impossible d'écrire yybase_tbl"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "Impossible d'écrire yydef_tbl"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "Impossible d'écrire yynxt_tbl"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "Impossible d'écrire yychk_tbl"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "Impossible d'écrire ftbl"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "Impossible d'écrire ssltbl"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "Impossible d'écrire eoltbl"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "Impossible d'écrire yynultrnas_tbl"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "la règle ne peut pas correspondre"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr "l'option -s est donnée mais la règle par défaut peut correspondre"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "L'option -+ ne peut pas être combinée à -l"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "Les options -f et -F ne peuvent pas être combinées à -l"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr ""
"Les options --reentrant ou --bison-bridge ne peuvent pas être combinées à "
"l'option -l"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "-Cf ou -CF et -Cm ne peuvent pas être indiquées ensemble"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "-Cf ou -CF et -I sont incompatibles"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr ""
"les options -Cf ou -CF ne sont pas compatibles avec le mode de compatibilité "
"« lex »"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "-Cf et -CF sont mutuellement exclusifs"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "L'option -+ ne peut pas être combinée à -CF"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "%array incompatible avec l'option -+"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "Les options +- et --reentrant sont mutuellement exclusives."
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "bridge bison n'est pas pris en charge pour l'analyseur C++"
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "impossible de créer %s"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "impossible d'écrire les tables d'en-tête"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "impossible d'ouvrir le fichier canevas %s"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr "échec d'allocation de définition de macro"
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "erreur de lecture du fichier canevas %s"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "erreur de fermeture du fichier canevas %s"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "erreur de création du fichier d'en-tête %s"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "erreur d'écriture du fichier de sortie %s"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "erreur de fermeture du fichier de sortie %s"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "erreur d'effacement du fichier de sortie %s"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "Pas d'archivage.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d états d'archivage (non acceptants).\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Les tables comprimées sont toujours archivées.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "erreur d'écriture du fichier de sauvegarde %s"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "erreur de fermeture du fichier de sauvegarde %s"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "« %s » version %s, statistiques d'utilisation :\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " options de l'analyseur lexical : -"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d états NFA\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d états AFD (%d mots)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d règles\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " Pas d'archivage\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d états d'archivage (si non acceptants)\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Les tables comprimées sont toujours archivées\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " Modèles utilisés en début de ligne\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d conditions de départ\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d états epsilon, %d états double epsilon\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " pas de classes de caractères\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr ""
" %d/%d classes de caractères nécessaires %d/%d mots-mémoire, %d recyclés\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d paires state/nextstate produites\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d transitions uniques/dupliquées\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d entrées dans la table\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d entrées base-def produites\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (max. %d) entrées nxt-chk produites\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " %d/%d (max. %d) entrées de modèle nxt-chk produites\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d entrées vides dans la table\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d prototypes produits\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d modèles produits, %d usages\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d classes d'équivalence produites\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d classes de métaéquivalence produites\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d sauvés) collisions durant dispersion, %d AFD égaux\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " %d ensembles de réallocations nécessaires\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " %d entrées nécessaires dans la table, au total\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "Erreur interne. Les options « flexopts » sont mal composées.\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr ""
"Exécutez « %s --help » pour obtenir des renseignements complémentaires.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "l'option -C « %c » inconnue"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "erreur de lecture fatale"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "impossible de créer le fichier d'informations d'archivage %s"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr ""
"L'option -l de compatibilité avec le « lex » d'AT&T entraîne une importante\n"
"perte de performance\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr " et peuvent être cause d'autres vices de performance observés\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
@@ -496,54 +516,54 @@ msgstr ""
"%%option yylineno n'entraîne une importante perte de performance QUE sur\n"
"les règles pouvant correspondre avec le caractère de changement de ligne\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "l'option -I (interactif) entraîne une faible perte de performance\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() entraîne une faible baisse de performance\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT entraîne une importante baisse de performance\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr ""
"Les règles de contexte traîné variable entraînent une importante baisse de\n"
"performance\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT ne peut pas être utilisé avec -f ou -F"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "%option yylineno ne peut être utilisé avec REJECT"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr ""
"les règles de contexte traîné variable ne peuvent pas être utilisées avec\n"
"-f ou -F"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%option yyclass n'a de sens qu'avec les analyseurs C++"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Utilisation : %s [OPTIONS] [FICHIER]...\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -598,8 +618,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -681,49 +699,49 @@ msgstr ""
" -h, --help afficher l'aide-mémoire\n"
" -V, --version afficher la version %s du logiciel\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr "échec d'allocation de sko_stack"
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "le nom « %s » est ridiculement long"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "échec d'allocation mémoire dans allocate_array()"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "mauvais caractère « %s » détecté dans check_char()"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr ""
"l'analyseur nécessite l'option -8 pour pouvoir utiliser le caractère %s"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "échec d'allocation mémoire dans allocate_array()"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s : erreur interne fatale, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "échec de la tentative d'augmenter la taille du tableau"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "mauvaise ligne dans le fichier canevas"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "échec d'allocation mémoire dans yy_flex_xmalloc()"
@@ -757,20 +775,20 @@ msgstr "machine vide dans dupmachine()"
msgid "Variable trailing context rule at line %d\n"
msgstr "Règle de contexte traîné variable à la ligne %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "mauvais type d'état dans mark_beginning_as_normal()"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "les règles d'entrée sont trop compliquées (>= %d états NFA)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "il y a trop de transitions dans mkxtion()"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "trop de règles (> %d)."
@@ -779,134 +797,138 @@ msgstr "trop de règles (> %d)."
msgid "unknown error processing section 1"
msgstr "erreur inconnue de traitement à la section 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "mauvaise liste de conditions de départ"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "règle non reconnue"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "contexte traîné utilisé deux fois"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "valeurs d'itération erronée"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "la valeur d'itération doit être positive"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr ""
"l'étendue de caractères [%c-%c] est ambiguë pour un scanner insensible à la "
"casse"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "plage négative dans la classe de caractères"
-#: src/parse.y:916
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr "[:^lower:] est ambigu pour un scanner insensible à la casse"
-#: src/parse.y:922
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr "[:^upper:] est ambigu pour un scanner insensible à la casse"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "ligne d'entrée trop longue\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "directive « %top » mal composée"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "directive « % » inconnue"
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr "Nom de définition trop long\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "« { » non apparié"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr "Valeur de définition trop longue pour {%s}\n"
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "définition de nom incomplète"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr "Ligne d'option trop longue\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "%%option non reconnue : %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "mauvaise classe de caractères"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "définition {%s} non définie"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "mauvaise <condition de départ> : %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "guillemet manquant"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "mauvaise expression de classe de caractères : %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "mauvais caractère entre accolades « {} »"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "« } » manquante"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "Fin de fichier rencontrée à l'intérieur d'une action"
-#: src/scan.l:951
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
msgstr "Fin de fichier rencontrée à l'intérieur d'un modèle"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "mauvais caractère : %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "impossible d'ouvrir %s"
@@ -954,16 +976,16 @@ msgstr "nom défini deux fois"
msgid "start condition %s declared twice"
msgstr "condition de départ %s déclarée deux fois"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "fin de fichier inattendue"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Marqueur de fin\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*Très bizarre* — tok : %d val : %d\n"
diff --git a/po/ga.po b/po/ga.po
index ee2bda2..edf6ddf 100644
--- a/po/ga.po
+++ b/po/ga.po
@@ -1,35 +1,51 @@
-# Irish translations for flex.
-# Copyright (C) 2008 The Flex Project (msgids)
-# This file is distributed under the same license as the flex package.
-# Kevin Patrick Scannell <scannell@SLU.EDU>, 2003, 2006, 2008.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex 2.5.34\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
-"PO-Revision-Date: 2008-07-23 09:37-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:33-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Irish translations for flex.
+#~ # Copyright (C) 2008 The Flex Project (msgids)
+#~ # This file is distributed under the same license as the flex package.
+#~ # Kevin Patrick Scannell <scannell@SLU.EDU>, 2003, 2006, 2008, 2017.
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex 2.5.38\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
+"PO-Revision-Date: 2017-01-10 09:37-0500\n"
"Last-Translator: Kevin 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"
#: src/buf.c:79
msgid "Allocation of buffer to print string failed"
-msgstr ""
+msgstr "Níorbh fhéidir spás a leagan amach chun teaghrán a phriontáil"
#: src/buf.c:107
msgid "Allocation of buffer for line directive failed"
-msgstr ""
+msgstr "Níorbh fhéidir spás a leagan amach do threoir líne"
#: src/buf.c:177
msgid "Allocation of buffer for m4 def failed"
-msgstr ""
+msgstr "Níorbh fhéidir spás a leagan amach do shainmhíniú m4"
#: src/buf.c:198
msgid "Allocation of buffer for m4 undef failed"
-msgstr ""
+msgstr "Níorbh fhéidir spás a leagan amach do dhí-shainmhíniú m4"
#: src/dfa.c:59
#, c-format
@@ -38,12 +54,12 @@ msgstr "Níl an staid #%d ina staid ghlactha -\n"
#: src/dfa.c:119
msgid "dangerous trailing context"
-msgstr "comhthéacs sraoilleach baolach"
+msgstr "comhthéacs leantach baolach"
#: src/dfa.c:159
#, c-format
msgid " associated rule line numbers:"
-msgstr " líne-uimhreacha de na rialacha bainteacha:"
+msgstr " líne-uimhreacha de na rialacha gaolmhara:"
#: src/dfa.c:193
#, c-format
@@ -62,7 +78,7 @@ msgstr ""
#: src/dfa.c:331
msgid "consistency check failed in epsclosure()"
-msgstr "theip ar sheiceáil chomhionannais i epsclosure()"
+msgstr "níorbh fhéidir comhsheasmhacht a sheiceáil in epsclosure()"
#: src/dfa.c:419
msgid ""
@@ -73,27 +89,27 @@ msgid ""
msgstr ""
"\n"
"\n"
-"Dumpáil DFA:\n"
+"Dumpa DFA:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "níorbh fhéidir staid shainiúil a chruthú ag deireadh maoláin"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "staid # %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "Níorbh fhéidir yynxt_tbl[][] a scríobh"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "carachtar trasdula neamhbhailí i sympartition()"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -105,29 +121,29 @@ msgstr ""
"Aicmí Coibhéise:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "glacann staid # %d le: [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "glacann staid # %d le: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "Níorbh fhéidir yyacclist_tbl a scríobh"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "Níorbh fhéidir yyacc_tbl a scríobh"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "Níorbh fhéidir ecstbl a scríobh"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -137,403 +153,403 @@ msgstr ""
"\n"
"Aicmí Meiteachoibhéise:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "Níorbh fhéidir yymeta_tbl a scríobh"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "Níorbh fhéidir yybase_tbl a scríobh"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "Níorbh fhéidir yydef_tbl a scríobh"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "Níorbh fhéidir yynxt_tbl a scríobh"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "Níorbh fhéidir yychk_tbl a scríobh"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "Níorbh fhéidir ftbl a scríobh"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "Níorbh fhéidir ssltbl a scríobh"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "Níorbh fhéidir eoltbl a scríobh"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "Níorbh fhéidir yynultrans_tbl a scríobh"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
-msgstr "Ní féidir riail chomhoiriúnach a aimsiú"
+msgstr "ní féidir an riail a mheaitseáil"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
-msgstr ""
-"bhí an rogha -s tugtha ach is féidir an riail réamhshocraithe a chur i "
-"gcomhoiriúnacht"
+msgstr "tugadh rogha -s ach is féidir riail réamhshocraithe a mheaitseáil"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
-msgstr "Níl -+ ar fáil in éineacht leis an rogha -l"
+msgstr "Níl -+ ar fáil in éineacht le rogha -l"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
-msgstr "Níl -f nó -F ar fáil in éineacht leis an rogha -l"
+msgstr "Níl -f nó -F ar fáil in éineacht le -l"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
-msgstr "Níl --reentrant nó --bison-bridge ar fáil in éineacht leis an rogha -l"
+msgstr "Níl --reentrant nó --bison-bridge ar fáil in éineacht le rogha -l"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
-msgstr "Níl -Cf/-CF agus -Cm comhoiriúnach"
+msgstr "Ní féidir -Cf/-CF agus -Cm a úsáid le chéile"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
-msgstr "Níl -Cf/-CF agus -I comhoiriúnach"
+msgstr "Ní féidir -Cf/-CF agus -I a úsáid le chéile"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
-msgstr "Níl -Cf/-CF ar fáil sa mhód comhoiriúnachta lex"
+msgstr "Níl -Cf/-CF ar fáil i mód comhoiriúnachta lex"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "Is comheisiatach iad na roghanna -Cf agus -CF"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
-msgstr "Níl -+ ar fáil in éineacht leis an rogha -CF"
+msgstr "Níl -+ ar fáil in éineacht le rogha -CF"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
-msgstr "níl %array comhoiriúnach leis an rogha -+"
+msgstr "Ní féidir %array a úsáid le rogha -+"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "Is comheisiatach iad na roghanna -+ agus --reentrant."
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "níl bison bridge ar fáil don scanóir C++."
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "níorbh fhéidir %s a chruthú"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "níorbh fhéidir ceanntásc táblaí a scríobh"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "ní féidir creatchomhad %s a oscailt"
-#: src/main.c:480
-msgid "allocation of macro definition failed"
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
msgstr ""
-#: src/main.c:527
+#: src/main.c:474
+msgid "allocation of macro definition failed"
+msgstr "níorbh fhéidir spás a leagan amach do shainmhíniú an mhacra"
+
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "earráid agus creatchomhaid %s á léamh"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "earráid agus creatchomhaid %s á dhúnadh"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "earráid agus comhad ceanntáisc %s á chruthú"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "earráid agus aschomhaid %s á scríobh"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "earráid agus aschomhad %s á dhúnadh"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "earráid agus aschomhaid %s á scriosadh"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
-msgstr "Ná cúlaítear.\n"
+msgstr "Gan cúlú.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
-msgstr "%d staid chúlaithe (níl ina staid ghlactha).\n"
+msgstr "%d staid chúlaithe (nach bhfuil ina staid ghlactha).\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Cúlaíonn táblaí comhbhrúite i gcónaí.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "earráid agus comhad cúltaca %s á scríobh"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "earráid agus comhad cúltaca %s á dhúnadh"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "%s leagan %s staitistic d'úsáid:\n"
# fr uses "lexical analyzer"; scanóir seems fine though --KPS
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " roghanna don scanóir: -"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d staid NFA\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d staid DFA (%d focal)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d riail\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
-msgstr " Ná cúlaítear\n"
+msgstr " Gan cúlú\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d staid chúlaithe (níl ina staid ghlactha)\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Cúlaíonn táblaí comhbhrúite i gcónaí\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
-msgstr " Patrúin úsáidte ag ceann líne\n"
+msgstr " Patrúin úsáidte ag tús na líne\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d coinníoll tosaigh\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d staid eipsealóin, %d staid eipsealóin dúbailte\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
-msgstr " níl aon aicme charachtair\n"
+msgstr " níl aon aicme charachtair ann\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr ""
" tá gá le %d/%d aicme charachtair %d/%d focal stórála, %d athúsáidte\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d péire state/nextstate\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d athrú sainiúil/dúblach\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d iontráil sa tábla\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d iontráil base-def\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (buaic %d) iontráil nxt-chk\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " %d/%d (buaic %d) iontráil teimpléid nxt-chk\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d iontráil tábla folamh\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d fréamhshamhail\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d teimpléad, %d i bhfeidhm\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d aicme choibhéise\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d aicme mheiteachoibhéise\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d sábháilte) tuairt haiseála, %d DFA comhionann le chéile\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " tá gá le %d sraith athdháilte\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " tá gá le %d iontráil tábla ar fad\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "Earráid inmheánach (flexopts míchumtha).\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Bain triail as `%s --help' chun tuilleadh eolais a fháil.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "rogha -C anaithnid '%c'"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "earráid pharsála mharfach"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "níorbh fhéidir comhad %s a chruthú don eolas faoin chúlú"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr "is cúis le moilliú mór an rogha -l (comhoiriúnacht le AT&T lex)\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
-msgstr " agus is féidir gur cúis é le fadhbanna luais eile é\n"
+msgstr " agus b'fhéidir gur cúis le fadhbanna luais eile é\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
"newline characters\n"
msgstr ""
-"is cúis le moilliú mór an %%rogha yylineno, Mà tá rialacha ann le línte nua "
-"iontu\n"
+"is cúis le moilliú mór an %%rogha yylineno, Mà tá rialacha ann a bhfuil "
+"línte nua iontu\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "is cúis le moilliú beag an rogha -I (idirghníomhach)\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "is cúis le moilliú beag an fheidhm yymore()\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
-msgstr "is REJECT cúis le moilliú mór\n"
+msgstr "is cúis le moilliú mór é REJECT\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr ""
-"is cúis le moilliú na rialacha maidir le comhthéacs sraoilleach "
-"athraitheach\n"
+"is cúis le moilliú na rialacha maidir le comhthéacs leantach athraitheach\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "Níl REJECT ar fáil leis na roghanna -f nó -F"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "níl %option yylineno ar fáil le REJECT"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr ""
-"níl rialacha maidir le comhthéacs sraoilleach athraitheach ar fáil le -f nó -"
-"F"
+"níl rialacha maidir le comhthéacs leantach athraitheach ar fáil le -f nó -F"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "tá an %option yyclass gan bhrí ach amháin le scanóirí C++"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Úsáid: %s [ROGHANNA] [COMHAD]...\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -588,8 +604,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -664,50 +678,50 @@ msgstr ""
" -h, --help taispeáin an chabhair seo\n"
" -V, --version taispeáin leagan %s\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
-msgstr ""
+msgstr "níorbh fhéidir spás a leagan amach do sko_stack"
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "tá an t-ainm \"%s\" i bhfad Éireann rófhada"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "theip ar dháileadh na cuimhne i allocate_array()"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "aimsíodh carachtar neamhbhailí '%s' i check_char()"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
-msgstr "ní foláir an rogha -8 chun an charachtair %s a úsáid"
+msgstr "teastaíonn rogha -8 ón scanóir chun carachtar %s a úsáid"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "theip ar dháileadh na cuimhne i allocate_array()"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: earráid inmheánach mharfach, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "theip ar mhéadú an eagair"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "drochlíne i gcreatchomhad"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
-msgstr "theip ar dháileadh na cuimhne i yy_flex_xmalloc()"
+msgstr "theip ar dháileadh cuimhne i yy_flex_xmalloc()"
#: src/nfa.c:100
#, c-format
@@ -728,7 +742,7 @@ msgstr "staid # %4d\t"
#: src/nfa.c:126
#, c-format
msgid "********** end of dump\n"
-msgstr "********** i ndeireadh dumpála\n"
+msgstr "********** deireadh an dumpa\n"
#: src/nfa.c:169
msgid "empty machine in dupmachine()"
@@ -737,22 +751,22 @@ msgstr "meaisín folamh i dupmachine()"
#: src/nfa.c:234
#, c-format
msgid "Variable trailing context rule at line %d\n"
-msgstr "riail maidir le comhthéacs sraoilleach athraitheach ag líne %d\n"
+msgstr "Riail maidir le comhthéacs leantach athraitheach ag líne %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "drochstaid i mark_beginning_as_normal()"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "is róchasta na rialacha ionchuir (>= %d staid NFA)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "an iomarca athruithe i mkxtion()"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "an iomarca rialacha (> %d)!"
@@ -761,140 +775,142 @@ msgstr "an iomarca rialacha (> %d)!"
msgid "unknown error processing section 1"
msgstr "earráid anaithnid agus an chéad pháirt á próiseáil"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
-msgstr "is neamhbhailí liosta na coinníollacha tosaigh"
+msgstr "is neamhbhailí liosta na gcoinníollacha tosaigh"
+
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
-#: src/parse.y:315
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "riail anaithnid"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
-msgstr "baineadh úsáid as comhthéacs sraoilleach faoi dhó"
+msgstr "baineadh úsáid as comhthéacs leantach faoi dhó"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "luachanna timthrialla neamhbhailí"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "ní foláir luach timthrialla deimhneach"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr ""
"tá an raon carachtair [%c-%c] débhríoch i scanóir a dhéanann neamhshuim ar "
"cheannlitreacha agus litreacha beaga"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "raon diúltach in aicme charachtair"
-#: src/parse.y:916
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr ""
"tá [:^lower:] débhríoch i scanóir a dhéanann neamhshuim ar cheannlitreacha "
"agus litreacha beaga"
-#: src/parse.y:922
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr ""
"tá [:^upper:] débhríoch i scanóir a dhéanann neamhshuim ar cheannlitreacha "
"agus litreacha beaga"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
-msgstr "Tá líne an ionchuir rófhada\n"
+msgstr "Líne ionchurtha rófhada\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "treoir '%top' míchumtha"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "treoir '%' anaithnid"
-#: src/scan.l:192
-#, fuzzy
+#: src/scan.l:214
msgid "Definition name too long\n"
-msgstr "Tá líne an ionchuir rófhada\n"
+msgstr "Ainm an tsainmhínithe rófhada\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "'{' corr"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
-msgstr ""
+msgstr "Luach an tsainmhínithe {%s} rófhada\n"
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
-msgstr "is neamhiomlán an sainmhíniú ainm"
+msgstr "is neamhiomlán sainmhíniú an ainm"
-#: src/scan.l:444
-#, fuzzy
+#: src/scan.l:467
msgid "Option line too long\n"
-msgstr "Tá líne an ionchuir rófhada\n"
+msgstr "Líne roghanna rófhada\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "rogha %% anaithnid: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "aicme charachtair neamhbhailí"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "sainmhíniú neamhshainithe {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "<coinníoll tosaigh> neamhbhailí: %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "comhartha athfhriotal ar iarraidh"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "is neamhbhailí an slonn aicme carachtair: %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "carachtar neamhbhailí idir {}"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "} ar iarraidh."
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
-msgstr "Buaileadh comhadchríoch isteach i ngníomh"
+msgstr "Buaileadh comhadchríoch laistigh de ghníomh"
-#: src/scan.l:951
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
-msgstr "Buaileadh comhadchríoch isteach i bpatrún"
+msgstr "Buaileadh comhadchríoch laistigh de phatrún"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "carachtar neamhbhailí: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "ní féidir %s a oscailt"
@@ -931,7 +947,7 @@ msgstr "Earráid anaithnid=(%d)\n"
#: src/sym.c:92
msgid "symbol table memory allocation failed"
-msgstr "theip ar dháileadh na cuimhne don tábla siombalach"
+msgstr "theip ar dháileadh na cuimhne don tábla na siombailí"
#: src/sym.c:183
msgid "name defined twice"
@@ -942,22 +958,22 @@ msgstr "sainmhíníodh an t-ainm faoi dhó"
msgid "start condition %s declared twice"
msgstr "fógraíodh an coinníoll tosaigh %s faoi dhó"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
-msgstr "comhadchríoch gan choinne"
+msgstr "comhadchríoch gan súil leis"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Comhartha Deiridh\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*Rud Éigin Aisteach* - tok: %d val: %d\n"
#~ msgid "dynamic memory failure in copy_string()"
-#~ msgstr "theip ar dháileadh na cuimhne i copy_string()"
+#~ msgstr "theip ar chuimhne dhinimiciúil i copy_string()"
#~ msgid "consistency check failed in symfollowset"
#~ msgstr "theip ar sheiceáil chomhionannais i symfollowset"
diff --git a/po/hr.po b/po/hr.po
index 480562a..e924871 100644
--- a/po/hr.po
+++ b/po/hr.po
@@ -1,13 +1,28 @@
-# Translation of flex to Croatian.
-# Copyright (C) 2012 The Flex Project (msgids)
-# This file is put in the public domain.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
-# Tomislav Krznar <tomislav.krznar@gmail.com>, 2012.
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex 2.5.37\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:35-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Translation of flex to Croatian.
+#~ # Copyright (C) 2012 The Flex Project (msgids)
+#~ # This file is put in the public domain.
+#~ #
+#~ # Tomislav Krznar <tomislav.krznar@gmail.com>, 2012.
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex 2.5.37\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2012-10-05 16:48+0200\n"
"Last-Translator: Tomislav Krznar <tomislav.krznar@gmail.com>\n"
"Language-Team: Croatian <lokalizacija@linux.hr>\n"
@@ -15,6 +30,7 @@ msgstr ""
"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=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Lokalize 1.4\n"
@@ -73,24 +89,24 @@ msgid ""
"\n"
msgstr ""
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr ""
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr ""
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr ""
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr ""
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -98,422 +114,426 @@ msgid ""
"\n"
msgstr ""
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr ""
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr ""
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr ""
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr ""
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr ""
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
"Meta-Equivalence Classes:\n"
msgstr ""
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr ""
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr ""
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr ""
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr ""
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr ""
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr ""
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr ""
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr ""
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr ""
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr ""
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr ""
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr ""
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr ""
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr ""
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr ""
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr ""
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr ""
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr ""
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr ""
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr ""
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr ""
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr ""
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr ""
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr ""
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr ""
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr ""
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr ""
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "greška pri zatvaranju datoteke predloška %s"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "greška pri stvaranju datoteke zaglavlja %s"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "greška pri pisanju izlazne datoteke %s"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "greška pri zatvaranju izlazne datoteke %s"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "greška pri uklanjanju izlazne datoteke %s"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr ""
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr ""
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr ""
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr ""
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr ""
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr ""
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr ""
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr ""
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr ""
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr ""
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr ""
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr ""
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr ""
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr ""
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr ""
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr ""
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr ""
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr ""
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr ""
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr ""
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr ""
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr ""
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr ""
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr ""
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr ""
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr ""
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr ""
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr ""
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr ""
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr ""
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr ""
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr ""
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr ""
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Pokušajte „%s --help†za više informacija.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "nepoznata -C opcija „%câ€"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "fatalna greška analize"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr ""
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr ""
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr ""
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
"newline characters\n"
msgstr ""
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr ""
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr ""
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr ""
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr ""
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr ""
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr ""
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr ""
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr ""
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Uporaba: %s [OPCIJE] [DATOTEKA]...\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -568,8 +588,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -581,48 +599,48 @@ msgid ""
" -V, --version report %s version\n"
msgstr ""
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr ""
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr ""
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr ""
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr ""
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr ""
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "alokacija memorije za tablicu simbola nije uspjela"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr ""
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr ""
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "neispravan redak u datoteci predloška"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr ""
@@ -653,20 +671,20 @@ msgstr ""
msgid "Variable trailing context rule at line %d\n"
msgstr ""
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr ""
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr ""
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr ""
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "previše pravila (> %d)!"
@@ -675,132 +693,136 @@ msgstr "previše pravila (> %d)!"
msgid "unknown error processing section 1"
msgstr ""
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr ""
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "neprepoznato pravilo"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr ""
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "neispravne vrijednosti iteracije"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "vrijednost iteracije mora biti pozitivna"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr ""
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr ""
-#: src/parse.y:916
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr ""
-#: src/parse.y:922
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr ""
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "Ulazni redak je predugaÄak\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr ""
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr ""
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr "Ime definicije je predugaÄko\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "Neuparena „{â€"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr ""
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "nepotpuna definicija imena"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr "Redak opcija je predugaÄak\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr ""
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "neispravan razred znakova"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "nedefinirana definicija {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr ""
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "nedostaje navodnik"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr ""
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "neispravan znak unutar {}"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "nedostaje }"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr ""
-#: src/scan.l:951
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
msgstr ""
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "neispravan znak: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "ne mogu otvoriti %s"
@@ -848,16 +870,16 @@ msgstr "ime je dvaput definirano"
msgid "start condition %s declared twice"
msgstr ""
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "preuranjen EOF"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Oznaka kraja\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*NeÅ¡to je Äudno* - simbol: %d vrijednost: %d\n"
diff --git a/po/ko.po b/po/ko.po
index 98417f3..873361f 100644
--- a/po/ko.po
+++ b/po/ko.po
@@ -1,12 +1,27 @@
-# flex-2.5.2 Korean po file
-# Copyright (C) 1996 The Flex Project
-# Choi Jun Ho <junker@jazz.snu.ac.kr>, 1997.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex 2.5.2\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:37-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # flex-2.5.2 Korean po file
+#~ # Copyright (C) 1996 The Flex Project
+#~ # Choi Jun Ho <junker@jazz.snu.ac.kr>, 1997.
+#~ #
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex 2.5.2\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 1997-02-05 20:30\n"
"Last-Translator: Choi Jun Ho <junker@jazz.snu.ac.kr>\n"
"Language-Team: Korean <ko@li.org>\n"
@@ -14,6 +29,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=EUC-KR\n"
"Content-Transfer-Encoding: 8-bit\n"
+"X-Bugs: Report translation errors to the Language-Team address.\n"
#: src/buf.c:79
msgid "Allocation of buffer to print string failed"
@@ -75,24 +91,24 @@ msgstr ""
"DFA Ãâ·Â:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "À¯ÀÏÇÑ ¹öÆÛÀÇ ³¡(end-of-buffer)»óŸ¦ ¸¸µé ¼ö ¾ø¾ú½À´Ï´Ù"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "»óŹøÈ£ %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr ""
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "sympartition()¿¡¼­ À߸øµÈ ÀüÀÌ ¹®ÀÚ¸¦ ã¾Ò½À´Ï´Ù"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -104,30 +120,30 @@ msgstr ""
"µ¿Ä¡·ù:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "»óŹøÈ£ %d´Â [%d]¸¦ ¹Þ¾ÆµéÀÔ´Ï´Ù\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "»óŹøÈ£ %d´Â ´ÙÀ½À» ¹Þ¾ÆµéÀÔ´Ï´Ù: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr ""
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr ""
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
#, fuzzy
msgid "Could not write ecstbl"
msgstr "%s¸¦ ¸¸µé ¼ö ¾ø½À´Ï´Ù"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -137,402 +153,406 @@ msgstr ""
"\n"
"¸ÞŸ-µ¿Ä¡·ùµé:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr ""
-#: src/gen.c:1362
+#: src/gen.c:1352
#, fuzzy
msgid "Could not write yybase_tbl"
msgstr "%s¸¦ ¸¸µé ¼ö ¾ø½À´Ï´Ù"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr ""
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr ""
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr ""
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
#, fuzzy
msgid "Could not write ftbl"
msgstr "%s¸¦ ¸¸µé ¼ö ¾ø½À´Ï´Ù"
-#: src/gen.c:1624
+#: src/gen.c:1614
#, fuzzy
msgid "Could not write ssltbl"
msgstr "%s¸¦ ¸¸µé ¼ö ¾ø½À´Ï´Ù"
-#: src/gen.c:1675
+#: src/gen.c:1665
#, fuzzy
msgid "Could not write eoltbl"
msgstr "%s¸¦ ¸¸µé ¼ö ¾ø½À´Ï´Ù"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr ""
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "¸Â´Â ±ÔÄ¢À» ãÀ» ¼ö ¾ø½À´Ï´Ù"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr "-s ¿É¼ÇÀÌ ÁÖ¾îÁ³Áö¸¸ ±âº» ±ÔÄ¢ÀÌ Àû¿ëµÉ ¼ö ÀÖ½À´Ï´Ù"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "-l¿É¼Ç¿¡´Â -+¿É¼ÇÀ» °°ÀÌ ¾µ ¼ö ¾ø½À´Ï´Ù"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "-l¿É¼Ç¿¡ -f³ª -F¿É¼ÇÀ» ¾µ ¼ö ¾ø½À´Ï´Ù"
-#: src/main.c:229
+#: src/main.c:228
#, fuzzy
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr "-l¿É¼Ç¿¡ -f³ª -F¿É¼ÇÀ» ¾µ ¼ö ¾ø½À´Ï´Ù"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "-Cf/-CF´Â -Cm¿Í °°ÀÌ ¾²¸é Àǹ̰¡ ¾ø½À´Ï´Ù"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "-Cf/-CF¿Í -I´Â °°ÀÌ ¾µ ¼ö ¾ø½À´Ï´Ù"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "-Cf/-CF ´Â lexȣȯ ¸ðµå¿Í´Â °°ÀÌ ¾µ ¼ö ¾ø½À´Ï´Ù"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "-Cf¿Í -CF´Â °°ÀÌ ¾µ ¼ö ¾ø½À´Ï´Ù"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "-CF¿É¼Ç¿¡ -+¿É¼ÇÀ» °°ÀÌ ¾µ ¼ö ¾ø½À´Ï´Ù"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "%array´Â -+¿É¼Ç°ú °°ÀÌ ¾µ ¼ö ¾ø½À´Ï´Ù"
-#: src/main.c:285
+#: src/main.c:284
#, fuzzy
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "-Cf¿Í -CF´Â °°ÀÌ ¾µ ¼ö ¾ø½À´Ï´Ù"
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr ""
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "%s¸¦ ¸¸µé ¼ö ¾ø½À´Ï´Ù"
-#: src/main.c:439
+#: src/main.c:431
#, fuzzy
msgid "could not write tables header"
msgstr "%s¸¦ ¸¸µé ¼ö ¾ø½À´Ï´Ù"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "½ºÄÌ·¹Åæ ÆÄÀÏ %s¸¦ ¿­ ¼ö ¾ø½À´Ï´Ù"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr ""
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "½ºÄÌ·¹Åæ ÆÄÀÏ %s¸¦ Àд µµÁß ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "½ºÄÌ·¹Åæ ÆÄÀÏ %s¸¦ ´Ý´Âµ¥ ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù"
-#: src/main.c:715
+#: src/main.c:709
#, fuzzy, c-format
msgid "error creating header file %s"
msgstr "¹é¾÷ ÆÄÀÏ %s¸¦ ¾²´Âµ¥ ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "Ãâ·ÂÆÄÀÏ %s¸¦ ¾²´Â µ¥ ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "Ãâ·ÂÆÄÀÏ %s¸¦ ´Ý´Âµ¥ ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "Ãâ·ÂÆÄÀÏ %s¸¦ Áö¿ì´Â µ¥ ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "µÇµ¹¸²ÀÌ ¾ø½À´Ï´Ù.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d°³ÀÇ µÇµ¹¸²(¹Þ¾ÆµéÀÌÁö ¾Ê´Â) »óÅÂ.\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr " ¾ÐÃàµÈ Å×À̺íÀº Ç×»ó ¹é¾÷ÇÕ´Ï´Ù.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "¹é¾÷ ÆÄÀÏ %s¸¦ ¾²´Âµ¥ ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "¹é¾÷ ÆÄÀÏ %s¸¦ ´Ý´Âµ¥ ¿À·ù°¡ ¹ß»ýÇß½À´Ï´Ù"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "%s ¹öÀü %s »ç¿ë Åë°è:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " ½ºÄ³³Ê ¿É¼Ç: -"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d°³ÀÇ NFA »óÅÂ\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d°³ÀÇ DFA »óÅ (%d ´Ü¾î)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d°³ÀÇ ±ÔÄ¢\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " µÇµ¹¸²ÀÌ ¾ø½À´Ï´Ù\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d°³ÀÇ µÇµ¹¸²(¹Þ¾ÆµéÀÌÁö ¾Ê´Â) »óÅÂ\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " ¾ÐÃàµÈ Å×À̺íÀº Ç×»ó ¹é¾÷ÇÕ´Ï´Ù\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " Çà ½ÃÀÛ(beginning-of-line) À¯ÇüÀ» »ç¿ëÇÏ¿´½À´Ï´Ù\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d°³ÀÇ ½ÃÀÛÁ¶°Ç\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d°³ÀÇ ¿¦½Ç·Ð »óÅÂ, %d°³ÀÇ ÀÌÁß ¿¦½Ç·Ð »óÅÂ\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " ¹®ÀÚ·ù°¡ ¾ø½À´Ï´Ù\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr ""
" %d/%d ¹®ÀÚ ÁýÇÕ¿¡ %d/%d°³ÀÇ ÀúÀå¿ë ¹®ÀÚ°¡ ÇÊ¿äÇß°í, %d°³´Â Àç»ç¿ëµÇ¾ú½À´Ï"
"´Ù.\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d°³ÀÇ »óÅÂ/´ÙÀ½ »óÅ ½ÖÀÌ ¸¸µé¾îÁ³½À´Ï´Ù\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d°³ÀÇ À¯ÀÏÇÑ/Áߺ¹µÇ´Â ÀüÀÌ\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d°³ÀÇ Å×ÀÌºí ¿£Æ®¸®\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d base-def ¿£Æ®¸®°¡ ¸¸µé¾îÁ³½À´Ï´Ù\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (ÃÖ´ë %d) nxt-chk ¿£Æ®¸®°¡ ¸¸µé¾îÁ³½À´Ï´Ù\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " %d/%d (ÃÖ´ë %d) ÅÛÇø®Æ® nxt-chk ¿£Æ®¸®°¡ ¸¸µé¾îÁ³½À´Ï´Ù\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d°³ÀÇ ºó Å×ÀÌºí ¿£Æ®¸®\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d°³ÀÇ ¿øÇüÀÌ ¸¸µé¾îÁ³½À´Ï´Ù\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d°³ÀÇ ÅÛÇø®Æ®°¡ ¸¸µé¾îÁö°í, %d°³¸¦ ¾¹´Ï´Ù\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d°³ÀÇ µ¿Ä¡·ù°¡ ¸¸µé¾îÁ³½À´Ï´Ù\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d ¸ÞŸ µ¿Ä¡·ù°¡ ¸¸µé¾îÁ³½À´Ï´Ù\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d(%d ÀúÀåµÊ)°³ÀÇ ÇØ½Ì Ãæµ¹·Î %d°³ÀÇ DFA°¡ °°°Ô 󸮵˴ϴÙ\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " %d°³ÀÇ ÀçÇÒ´ç ÁýÇÕÀÌ ÇÊ¿äÇÕ´Ï´Ù\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " ÃÑ %d°³ÀÇ Å×ÀÌºí ¿£Æ®¸®°¡ ÇÊ¿äÇÕ´Ï´Ù\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr ""
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr ""
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "¾Ë ¼ö ¾ø´Â -C ¿É¼Ç '%c'"
-#: src/main.c:1211
+#: src/main.c:1204
#, fuzzy, c-format
msgid "%s %s\n"
msgstr "%s ¹öÀü %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "Ä¡¸íÀûÀÎ ÆÄ½Ì ¿¡·¯"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "µÇµ¹¸² Á¤º¸ ÆÄÀÏ %s¸¦ ¸¸µé ¼ö ¾ø¾ú½À´Ï´Ù"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr "-l AT&T lex ȣȯ ¿É¼ÇÀº Å« ¼º´É ÀúÇϸ¦ ÀÏÀ¸Åµ´Ï´Ù\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr " ±×¸®°í ¾Æ¸¶µµ ´Ù¸¥ º¸°íµÈ ¼º´É ÀúÇÏÀÇ ½ÇÁ¦ ¿øÀÎÀÏ °ÍÀÔ´Ï´Ù\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, fuzzy, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
"newline characters\n"
msgstr "%%option yylineno´Â Å« ¼º´ÉÀúÇϸ¦ ÀÏÀ¸Åµ´Ï´Ù\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "-I (´ëÈ­Çü) Àº ¼Ò±Ô¸ðÀÇ ¼º´ÉÀúÇϸ¦ ÀÏÀ¸Åµ´Ï´Ù\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore()´Â ¼Ò±Ô¸ðÀÇ ¼º´ÉÀúÇϸ¦ ÀÏÀ¸Åµ´Ï´Ù\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT´Â Å« ¼º´ÉÀúÇϸ¦ ÀÏÀ¸Åµ´Ï´Ù\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr "°¡º¯ ÃßÀû ¹®¸Æ ±ÔÄ¢Àº Å« ¼º´ÉÀúÇϸ¦ ÀÏÀ¸Åµ´Ï´Ù\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT´Â -f³ª -F¿É¼Ç°ú °°ÀÌ ¾µ ¼ö ¾ø½À´Ï´Ù"
-#: src/main.c:1587
+#: src/main.c:1576
#, fuzzy, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "%option yylinenoÀº -f³ª -F¿É¼Ç°ú °°ÀÌ ¾µ ¼ö ¾ø½À´Ï´Ù"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr "°¡º¯ ÃßÀû ¹®¸Æ ±ÔÄ¢Àº -f³ª -F¿É¼Ç°ú °°ÀÌ ¾µ ¼ö ¾ø½À´Ï´Ù"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%option yyclass´Â C++½ºÄ³³Ê¿¡°Ô¸¸ Àǹ̰¡ ÀÖ½À´Ï´Ù"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr ""
-#: src/main.c:1808
+#: src/main.c:1794
#, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -587,8 +607,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -600,48 +618,48 @@ msgid ""
" -V, --version report %s version\n"
msgstr ""
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr ""
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "À̸§ \"%s\"´Â ºñÁ¤»óÀûÀ¸·Î ±é´Ï´Ù"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "allocate_array()¿¡¼­ ¸Þ¸ð¸® ÇÒ´çÀÌ ½ÇÆÐÇß½À´Ï´Ù"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "check_char()¿¡¼­ À߸øµÈ ¹®ÀÚ '%s'¸¦ ã¾Ò½À´Ï´Ù"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "½ºÄ³³Ê¿¡¼­ ¹®ÀÚ %s¸¦ ¾²±â À§Çؼ­´Â -8¿É¼ÇÀÌ ÇÊ¿äÇÕ´Ï´Ù"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "allocate_array()¿¡¼­ ¸Þ¸ð¸® ÇÒ´çÀÌ ½ÇÆÐÇß½À´Ï´Ù"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: Ä¡¸íÀûÀÎ ³»ºÎ ¿¡·¯, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "¹è¿­ Å©±â¸¦ ´Ã¸®·Á´Â ½Ãµµ°¡ ½ÇÆÐÇß½À´Ï´Ù"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "½ºÄÌ·¹Åæ ÆÄÀÏ¿¡ À߸øµÈ Çà"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "yy_flex_xmalloc()¿¡¼­ ¸Þ¸ð¸® ÇÒ´çÀÌ ½ÇÆÐÇß½À´Ï´Ù"
@@ -675,20 +693,20 @@ msgstr "dupmachine()¿¡¼­ÀÇ ºó ¸Ó½Å"
msgid "Variable trailing context rule at line %d\n"
msgstr "%dÇà¿¡¼­ °¡º¯ ÃßÀû ¹®¸Æ ±ÔÄ¢\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "mark_beginning_as_normal()¿¡¼­ À߸øµÈ »óÅÂÇü"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "ÀÔ·Â ±ÔÄ¢ÀÌ ³Ê¹« º¹ÀâÇÕ´Ï´Ù(>= NFA»óÅ %d°³)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "mkxtion()¿¡ ÀüÀÌ°¡ ³Ê¹« ¸¹½À´Ï´Ù"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "±ÔÄ¢ÀÌ ³Ê¹« ¸¹½À´Ï´Ù (> %d)!"
@@ -697,139 +715,143 @@ msgstr "±ÔÄ¢ÀÌ ³Ê¹« ¸¹½À´Ï´Ù (> %d)!"
msgid "unknown error processing section 1"
msgstr ""
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
#, fuzzy
msgid "bad start condition list"
msgstr "À߸øµÈ <½ÃÀÛ Á¶°Ç>: %s"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
#, fuzzy
msgid "unrecognized rule"
msgstr "¾Ë ¼ö ¾ø´Â '%' Áö½ÃÀÚ"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
#, fuzzy
msgid "trailing context used twice"
msgstr "%dÇà¿¡¼­ °¡º¯ ÃßÀû ¹®¸Æ ±ÔÄ¢\n"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr ""
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr ""
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr ""
-#: src/parse.y:819
+#: src/parse.y:821
#, fuzzy
msgid "negative range in character class"
msgstr " ¹®ÀÚ·ù°¡ ¾ø½À´Ï´Ù\n"
-#: src/parse.y:916
+#: src/parse.y:918
#, fuzzy
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr "\t-i ´ë¼Ò¹®ÀÚ ±¸º°¾ø´Â ½ºÄ³³Ê¸¦ ¸¸µì´Ï´Ù\n"
-#: src/parse.y:922
+#: src/parse.y:924
#, fuzzy
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr "\t-i ´ë¼Ò¹®ÀÚ ±¸º°¾ø´Â ½ºÄ³³Ê¸¦ ¸¸µì´Ï´Ù\n"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr ""
-#: src/scan.l:161
+#: src/scan.l:183
#, fuzzy, c-format
msgid "malformed '%top' directive"
msgstr "¾Ë ¼ö ¾ø´Â '%' Áö½ÃÀÚ"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "¾Ë ¼ö ¾ø´Â '%' Áö½ÃÀÚ"
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr ""
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr ""
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr ""
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "ºÒ¿ÏÀüÇÑ À̸§ Á¤ÀÇ"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr ""
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "¾Ë ¼ö ¾ø´Â %%option: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "À߸øµÈ ¹®ÀÚ·ù"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "Á¤ÀǵÇÁö ¾ÊÀº Á¤ÀÇ {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "À߸øµÈ <½ÃÀÛ Á¶°Ç>: %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "Àοë±âÈ£ ºüÁü"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "À߸øµÈ ¹®ÀÚ ÁýÇÕ ½Ä: %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "{}¾ÈÀÇ À߸øµÈ ¹®ÀÚ"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "}ÀÌ ºüÁ³½À´Ï´Ù"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "µ¿ÀÛ µµÁß¿¡ EOF¸¦ ¸¸³µ½À´Ï´Ù"
-#: src/scan.l:951
+#: src/scan.l:977
#, fuzzy
msgid "EOF encountered inside pattern"
msgstr "µ¿ÀÛ µµÁß¿¡ EOF¸¦ ¸¸³µ½À´Ï´Ù"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "À߸øµÈ ¹®ÀÚ: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "%s¸¦ ¿­ ¼ö ¾ø½À´Ï´Ù"
@@ -877,16 +899,16 @@ msgstr "À̸§À» µÎ¹ø Á¤ÀÇÇß½À´Ï´Ù"
msgid "start condition %s declared twice"
msgstr "½ÃÀÛÁ¶°Ç %s¸¦ µÎ¹ø ¼±¾ðÇß½À´Ï´Ù"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "°©ÀÛ½º·± EOF"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Á¾·á Ç¥½Ã\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*¹«¾ð°¡ ÀÌ»óÇÕ´Ï´Ù* - tok: %d val: %d\n"
diff --git a/po/nl.po b/po/nl.po
index 860899b..0045594 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -1,15 +1,30 @@
-# Dutch translations for the fast parser Flex.
-# Copyright (C) 2014 The Flex Project (msgids)
-# This file is distributed under the same license as the flex package.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
-# Beim schwarzen Schaf...
-#
-# Benno Schulenberg <benno@vertaalt.nl>, 2005, 2006, 2007, 2008, 2012, 2014.
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex-2.5.38\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:39-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Dutch translations for the fast parser Flex.
+#~ # Copyright (C) 2014 The Flex Project (msgids)
+#~ # This file is distributed under the same license as the flex package.
+#~ #
+#~ # Beim schwarzen Schaf...
+#~ #
+#~ # Benno Schulenberg <benno@vertaalt.nl>, 2005, 2006, 2007, 2008, 2012, 2014.
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex-2.5.38\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2014-02-13 22:25+0100\n"
"Last-Translator: Benno Schulenberg <benno@vertaalt.nl>\n"
"Language-Team: Dutch <vertaling@vrijschrift.org>\n"
@@ -17,6 +32,7 @@ msgstr ""
"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"
"X-Generator: Lokalize 1.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@@ -80,24 +96,24 @@ msgstr ""
"DFA-dump:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "kon geen unieke toestand voor einde-van-buffer aanmaken"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "toestand # %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "Kan yynxt_tbl[][] niet schrijven"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "onjuist transitieteken in sympartition()"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -109,29 +125,29 @@ msgstr ""
"Equivalentieklassen:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "toestand # %d accepteert: [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "toestand # %d accepteert: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "Kan yyacclist_tbl niet schrijven"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "Kan yyacc_tbl niet schrijven"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "Kan ecstbl niet schrijven"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -141,349 +157,353 @@ msgstr ""
"\n"
"Meta-equivalentieklassen:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "Kan yymeta_tbl niet schrijven"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "Kan yybase_tbl niet schrijven"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "Kan yydef_tbl niet schrijven"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "Kan yynxt_tbl niet schrijven"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "Kan yychk_tbl niet schrijven"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "Kan ftbl niet schrijven"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "Kan ssltbl niet schrijven"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "Kan eoltbl niet schrijven"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "Kan yynultrans_tbl niet schrijven"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "voorschrift geeft geen overeenkomsten"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr ""
"optie '-s' is gegeven, maar het standaardvoorschrift geeft overeenkomsten"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "Optie '-+' gaat niet samen met '-l'"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "Optie '-f' of '-F' gaat niet samen met '-l'"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr "Optie '--reentrant' of '--bison-bridge' gaat niet samen met '-l'"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "Opties -Cf/-CF en -Cm gaan niet samen"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "Opties -Cf/-CF en -I gaan niet samen"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "Optie -Cf of -CF gaat niet samen met lex-compatibiliteitsmodus"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "Opties -Cf en -CF sluiten elkaar uit"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "Optie '-+' gaat niet samen met '-CF'"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "Optie '-+' gaat niet samen met %array"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "Opties '-+' en '--reentrant' sluiten elkaar uit."
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "bison bridge wordt niet ondersteund voor de C++-scanner."
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "kan %s niet aanmaken"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "kan tabellenkop niet schrijven"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "kan skeletbestand %s niet openen"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr "geheugenreservering voor macrodefinitie is mislukt"
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "invoerfout tijdens lezen van skeletbestand %s"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "fout tijdens sluiten van skeletbestand %s"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "fout tijdens aanmaken van headerbestand %s"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "fout tijdens schrijven van uitvoerbestand %s"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "fout tijdens sluiten van uitvoerbestand %s"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "fout tijdens verwijderen van uitvoerbestand %s"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "Terugstappen is niet mogelijk.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d terugstappende (niet-accepterende) toestanden.\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Gecomprimeerde tabellen kunnen altijd terugstappen.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "fout tijdens schrijven van terugstapbestand %s"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "fout tijdens sluiten van terugstapbestand %s"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "%s versie %s gebruiksstatistieken:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " scanneropties: -"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d NFA-toestanden\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d DFA-toestanden (%d woorden)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d voorschriften\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " Terugstappen is niet mogelijk\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d terugstappende (niet-accepterende) toestanden\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Gecomprimeerde tabellen kunnen altijd terugstappen\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " Begin-van-regel-patronen gebruikt\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d startvoorwaarden\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d epsilontoestanden, %d dubbele epsilontoestanden\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " geen tekenklassen\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr ""
" %d/%d tekenklassen hadden %d/%d opslagwoorden nodig, %d hergebruikt\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d toestand/volgtoestand-paren aangemaakt\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d unieke/dubbele transities\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d tabelitems\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d base-def-items aangemaakt\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (piek %d) nxt-chk-items aangemaakt\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " %d/%d (piek %d) sjabloon-nxt-chk-items aangemaakt\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d lege tabelitems\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d prototypes aangemaakt\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d sjablonen aangemaakt, %d keer gebruikt\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d equivalentieklassen aangemaakt\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d meta-equivalentieklassen aangemaakt\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d bewaarde) hash-botsingen, %d DFA's gelijk\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " %d sets van herallocaties waren nodig\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " in totaal %d tabelitems nodig\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "*Interne fout*: ongeldige flexopts.\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Typ '%s --help' voor meer informatie.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "onbekende -C-optie '%c'"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "fatale ontledingsfout"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "kon terugstapbestand %s niet aanmaken"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr ""
"de AT&T-lexcompatibiliteitsoptie '-l' betekent een grote "
"prestatievermindering\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr ""
" en zou de eigenlijke bron kunnen zijn van andere gemelde "
"prestatieverminderingen\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
@@ -492,54 +512,54 @@ msgstr ""
"de %%optie yylineno betekent een prestatievermindering, maar ALLEEN voor "
"voorschriften die met het regeleindeteken overeen kunnen komen\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "optie '-I' (interactief) betekent een kleine prestatievermindering\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() betekent een kleine prestatievermindering\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT betekent een grote prestatievermindering\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr ""
"Voorschriften met variabele nakomende context betekenen een grote "
"prestatievermindering\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT gaat niet samen met -f of -F"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "%optie yylineno gaat niet samen met REJECT"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr ""
"voorschriften met variabele nakomende context gaan niet samen met '-f' of '-"
"F'"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%optie yyclass heeft alleen betekenis voor C++-scanners"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Gebruik: %s [OPTIE...] [BESTAND...]\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -594,8 +614,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -673,48 +691,48 @@ msgstr ""
" -h, --help deze hulptekst tonen\n"
" -V, --version de versie van %s tonen\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr "geheugenreservering voor 'sko_stack' is mislukt"
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "naam is belachelijk lang: \"%s\""
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "geheugenreservering is mislukt in allocate_array()"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "onjuist teken '%s' in check_char()"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "scanner heeft de optie '-8' nodig om teken %s te kunnen gebruiken"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "geheugenreservering is mislukt in allocate_array()"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: **fatale interne programmafout**, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "vergroting van array is mislukt"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "onjuiste regel in skeletbestand"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "geheugenreservering is mislukt in yy_flex_xmalloc()"
@@ -748,20 +766,20 @@ msgstr "lege machine in dupmachine()"
msgid "Variable trailing context rule at line %d\n"
msgstr "Voorschrift met variabele nakomende context op regel %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "onjuist toestandstype in mark_beginning_as_normal()"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "invoervoorschriften zijn te ingewikkeld (>= %d NFA-toestanden)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "te veel transities gevonden in mkxtion()"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "te veel voorschriften (> %d)!"
@@ -770,134 +788,138 @@ msgstr "te veel voorschriften (> %d)!"
msgid "unknown error processing section 1"
msgstr "onbekende fout tijdens verwerken van sectie 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "onjuiste lijst van startvoorwaarden"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "onbekend voorschrift"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "nakomende context twee keer gebruikt"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "onjuiste iteratiewaarden"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "iteratiewaarde moet positief zijn"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr ""
"het tekenbereik [%c-%c] is niet eenduidig in een hoofdletterongevoelige "
"scanner"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "negatief bereik in tekenklasse"
-#: src/parse.y:916
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr "[:^lower:] is niet eenduidig in een hoofdletterongevoelige scanner"
-#: src/parse.y:922
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr "[:^upper:] is niet eenduidig in een hoofdletterongevoelige scanner"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "Invoerregel is te lang\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "verkeerde opbouw van '%top'-commando"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "onbekend '%'-commando"
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr "Definitienaam is te lang\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "Ongepaarde '{'"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr "Definitiewaarde voor {%s} is te lang\n"
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "onvolledige naamsdefinitie"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr "Optiesregel is te lang\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "onbekende %%option: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "onjuiste tekenklasse"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "ongedefinieerde definitie {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "onjuiste <startvoorwaarde>: %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "ontbrekend aanhalingsteken"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "onjuiste expressie '%s' in tekenklasse"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "onjuist teken tussen {}'s"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "ontbrekende }"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "EOF werd bereikt tijdens een actie"
-#: src/scan.l:951
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
msgstr "EOF werd bereikt binnen een patroon"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "onjuist teken: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "kan %s niet openen"
@@ -945,16 +967,16 @@ msgstr "naam is twee keer gedefinieerd"
msgid "start condition %s declared twice"
msgstr "startvoorwaarde %s is twee keer vermeld"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "voortijdig einde van bestand"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Eindmarkering\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*Iets Raars* - token: %d waarde:%d\n"
diff --git a/po/pl.po b/po/pl.po
index bb8eed2..ec1264d 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -1,13 +1,28 @@
-# Polish translation for flex.
-# Copyright (C) 2007, 2012 The Flex Project (msgids)
-# This file is distributed under the same license as the flex package.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
-# Jakub Bogusz <qboosh@pld-linux.org>, 2003-2012.
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex 2.5.36\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:42-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Polish translation for flex.
+#~ # Copyright (C) 2007, 2012 The Flex Project (msgids)
+#~ # This file is distributed under the same license as the flex package.
+#~ #
+#~ # Jakub Bogusz <qboosh@pld-linux.org>, 2003-2012.
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex 2.5.36\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2012-08-02 18:15+0200\n"
"Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
"Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
@@ -15,6 +30,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO-8859-2\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Bugs: Report translation errors to the Language-Team address.\n"
#: src/buf.c:79
msgid "Allocation of buffer to print string failed"
@@ -76,24 +92,24 @@ msgstr ""
"Zrzut DFA:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "nie mo¿na utworzyæ unikalnego stanu koñca bufora"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "stan # %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "Nie mo¿na zapisaæ yynxt_tbl[][]"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "wykryto b³êdny znak przej¶cia w sympartition()"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -105,29 +121,29 @@ msgstr ""
"Klasy równowa¿no¶ci:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "stan # %d akceptuje: [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "stan # %d akceptuje: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "Nie mo¿na zapisaæ yyacclist_tbl"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "Nie mo¿na zapisaæ yyacc_tbl"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "Nie mo¿na zapisaæ ecstbl"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -137,344 +153,348 @@ msgstr ""
"\n"
"Klasy meta-równowa¿no¶ci:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "Nie mo¿na zapisaæ yymeta_tbl"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "Nie mo¿na zapisaæ yybase_tbl"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "Nie mo¿na zapisaæ yydef_tbl"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "Nie mo¿na zapisaæ yynxt_tbl"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "Nie mo¿na zapisaæ yychk_tbl"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "Nie mo¿na zapisaæ ftbl"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "Nie mo¿na zapisaæ ssltbl"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "Nie mo¿na zapisaæ eoltbl"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "Nie mo¿na zapisaæ yynultrans_tbl"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "nie mo¿na dopasowaæ regu³y"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr "podano opcjê -s, ale domy¶lna regu³a mo¿e byæ dopasowana"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "Nie mo¿na u¿yæ -+ z opcj± -l"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "Nie mo¿na u¿yæ -f ani -F z opcj± -l"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr "Nie mo¿na u¿yæ --reentrant ani --bison-bridge z opcj± -l"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "-Cf/-CF i -Cm razem nie maj± sensu"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "-Cf/-CF i -I s± niekompatybilne"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "-Cf/-CF s± niekompatybilne z trybem kompatybilno¶ci z leksem"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "-Cf i -CF wykluczaj± siê wzajemnie"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "Nie mo¿na u¿yæ -+ z opcj± -CF"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "%array jest niekompatybilne z opcj± -+"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "Opcje -+ i --reentrant wykluczaj± siê wzajemnie."
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "pomost dla bisona nie jest obs³ugiwany dla skanera C++."
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "nie mo¿na utworzyæ %s"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "nie mo¿na zapisaæ nag³ówka tablic"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "nie mo¿na otworzyæ pliku szablonu %s"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr "przydzielenie pamiêci dla definicji makra nie powiod³o siê"
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "b³±d wej¶cia podczas odczytu pliku szablonu %s"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "b³±d podczas zamykania pliku szablonu %s"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "b³±d podczas tworzenia pliku nag³ówkowego %s"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "b³±d podczas zapisu pliku wyj¶ciowego %s"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "b³±d podczas zamykania pliku wyj¶ciowego %s"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "b³±d podczas usuwania pliku wyj¶ciowego %s"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "Bez zapamiêtywania.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d zapamiêtywanych stanów (nie akceptuj±cych).\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Skompresowane tablice zawsze zapamiêtuj±.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "b³±d podczas zapisu pliku raportu z zapamiêtywania %s"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "b³±d podczas zamykania pliku raportu z zapamiêtywania %s"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "%s w wersji %s - statystyka u¿ycia:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " opcje skanera: -"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d stanów NFA\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d stanów DFA (%d s³ów)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d regu³\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " Bez zapamiêtywania\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d zapamiêtywanych stanów (nie akceptuj±cych)\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Skompresowane tablice zawsze zapamiêtuj±\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " U¿ytych wzorców pocz±tek-linii\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d warunków pocz±tkowych\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d stanów epsilonowych, %d stanów podwójnie epsilonowych\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " bez klas znaków\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr ""
" %d/%d klas znaków potrzebuje %d/%d s³ów pamiêci, %d ponownie u¿ytych\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d utworzonych par stan/nastêpny-stan\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d przej¶æ unikalny/duplikat\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d elementów tablicy\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d utworzonych elementów base-def\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (maksymalnie %d) utworzonych elementów nxt-chk\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " %d/%d (maksymalnie %d) utworzonych szablonowych elementów nxt-chk\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d pustych elementów tablicy\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d utworzonych prototypów\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d utworzonych szablonów, %d u¿yæ\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d utworzonych klas równowa¿no¶ci\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d utworzonych klas meta-równowa¿no¶ci\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d zachowanych) kolizji haszy, %d jednakowych DFA\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " %d potrzebnych zbiorów realokacji\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " %d potrzebnych ogó³em elementów tablicy\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "B³±d wewnêtrzny. ¬le sformu³owane flexopts.\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "`%s --help' poda wiêcej informacji.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "nieznana opcja -C '%c'"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "krytyczny b³±d analizy sk³adni"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "nie mo¿na utworzyæ pliku informacji o zapamiêtywaniu %s"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr "opcja -l zgodno¶ci z leksem AT&T powoduje du¿± stratê wydajno¶ci\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr " i mo¿e byæ przyczyn± innych zg³aszanych strat wydajno¶ci\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
@@ -483,51 +503,51 @@ msgstr ""
"%%option yylineno powoduje straty wydajno¶ci TYLKO dla regu³ dopasowuj±cych "
"znak koñca linii\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "-I (interaktywny) powoduje ma³± stratê wydajno¶ci\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() powoduje ma³± stratê wydajno¶ci\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT powoduje du¿± stratê wydajno¶ci\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr ""
"Regu³y ze zmiennym koñcowym kontekstem powoduj± du¿± stratê wydajno¶ci\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT nie mo¿e byæ u¿yte z -f ani -F"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "%option yylineno nie mo¿e byæ u¿yte z REJECT"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr "regu³y ze zmiennym koñcowym kontekstem nie mog± byæ u¿yte z -f ani -F"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%option yyclass ma znaczenie tylko dla skanerów C++"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Sk³adnia: %s [OPCJE] [PLIK]...\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -582,8 +602,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -663,48 +681,48 @@ msgstr ""
" -h, --help wy¶wietlenie tego pomocnego opisu\n"
" -V, --version podanie wersji programu %s\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr "przydzielenie sko_stack nie powiod³o siê"
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "nazwa \"%s\" jest ¶miesznie d³uga"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "nie uda³o siê przydzieliæ pamiêci w allocate_array()"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "b³êdny znak '%s' usuniêty w check_char()"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "skaner wymaga flagi -8 aby u¿yæ znaku %s"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "nie uda³o siê przydzieliæ pamiêci w allocate_array()"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: krytyczny b³±d wewnêtrzny: %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "próba zwiêkszenia rozmiaru tablicy nie powiod³a siê"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "b³êdna linia w pliku szablonu"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "nie uda³o siê przydzieliæ pamiêci w yy_flex_xmalloc()"
@@ -738,20 +756,20 @@ msgstr "pusty automat w dupmachine()"
msgid "Variable trailing context rule at line %d\n"
msgstr "Regu³a ze zmiennym koñcowym kontekstem w linii %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "b³êdny typ stanu w mark_beginning_as_normal()"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "regu³y wej¶ciowe s± zbyt skomplikowane (>= %d stanów NFA)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "znaleziono zbyt du¿o przej¶æ w mkxtion()"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "zbyt du¿o regu³ (> %d)!"
@@ -760,138 +778,142 @@ msgstr "zbyt du¿o regu³ (> %d)!"
msgid "unknown error processing section 1"
msgstr "nieznany b³±d podczas przetwarzania sekcji 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "b³êdna lista warunków pocz±tkowych"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "nierozpoznana regu³a"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "koñcowy kontekst u¿yty dwukrotnie"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "b³êdne warto¶ci iteracji"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "warto¶æ iteracji musi byæ dodatnia"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr ""
"przedzia³ znaków [%c-%c] jest niejednoznaczny w skanerze ignoruj±cym "
"wielko¶æ liter"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "ujemny przedzia³ w klasie znaków"
-#: src/parse.y:916
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr ""
"[:^lower:] jest niejednoznaczne w przypadku skanera ignoruj±cego wielko¶æ "
"liter"
-#: src/parse.y:922
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr ""
"[:^upper:] jest niejednoznaczne w przypadku skanera ignoruj±cego wielko¶æ "
"liter"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "Linia wej¶ciowa zbyt d³uga\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "¼le sformu³owana dyrektywa '%top'"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "nierozpoznana dyrektywa '%'"
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr "Nazwa definizji zbyt d³uga\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "Niesparowany '{'"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr "Definicja warto¶ci dla {%s} zbyt d³uga\n"
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "niekompletna definicja nazwy"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr "Linia opcji zbyt d³uga\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "nierozpoznane %%option: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "b³êdna klasa znaków"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "niezdefiniowana definicja {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "b³êdny <warunek pocz±tkowy>: %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "brak cudzys³owu"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "b³êdne wyra¿enie klasy znaków: %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "b³êdny znak wewn±trz {}"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "brak }"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "EOF napotkany wewn±trz akcji"
-#: src/scan.l:951
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
msgstr "EOF napotkany wewn±trz wzorca"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "b³êdny znak: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "nie mo¿na otworzyæ %s"
@@ -939,16 +961,16 @@ msgstr "nazwa zdefiniowana dwukrotnie"
msgid "start condition %s declared twice"
msgstr "warunek pocz±tkowy %s zadeklarowany dwukrotnie"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "przedwczesny EOF"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Znacznik koñca\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*Co¶ dziwnego* - tok: %d val: %d\n"
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 3abdb39..089e950 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -1,14 +1,29 @@
-# Translation to Brazilian Portuguese of flex.
-# Copyright (C) 2013 The Flex Project (msgids)
-# This file is distributed under the same license as the flex package.
-# Alexandre Folle de Menezes <afmenez@terra.com.br>, 2003, 2004.
-# Rafael Ferreira <rafael.f.f1@gmail.com>, 2013.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex 2.5.37\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:44-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Translation to Brazilian Portuguese of flex.
+#~ # Copyright (C) 2013 The Flex Project (msgids)
+#~ # This file is distributed under the same license as the flex package.
+#~ # Alexandre Folle de Menezes <afmenez@terra.com.br>, 2003, 2004.
+#~ # Rafael Ferreira <rafael.f.f1@gmail.com>, 2013.
+#~ #
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex 2.5.37\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2013-11-27 08:09-0300\n"
"Last-Translator: Rafael Ferreira <rafael.f.f1@gmail.com>\n"
"Language-Team: Brazilian Portuguese <ldpbr-translation@lists.sourceforge."
@@ -17,6 +32,7 @@ msgstr ""
"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"
"X-Generator: Poedit 1.5.7\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
@@ -80,24 +96,24 @@ msgstr ""
"Despejo DFA:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "não foi possível criar um estado único de final de buffer"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "estado # %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "Não foi possível escrever yynxt_tbl[][]"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "caractere de transição inválido detectado em sympartition()"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -109,29 +125,29 @@ msgstr ""
"Classes de Equivalência:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "estado # %d aceita: [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "estado # %d aceita: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "Não foi possível escrever yyacclist_tbl"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "Não foi possível escrever yyacc_tbl"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "Não foi possível escrever ecstbl"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -141,349 +157,353 @@ msgstr ""
"\n"
"Classes de Meta-Equivalência:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "Não foi possível escrever yymeta_tbl"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "Não foi possível escrever yybase_tbl"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "Não foi possível escrever yydef_tbl"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "Não foi possível escrever yynxt_tbl"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "Não foi possível escrever yychk_tbl"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "Não foi possível escrever ftbl"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "Não foi possível escrever ssltbl"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "Não foi possível escrever eoltbl"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "Não foi possível escrever yynultrans_tbl"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "aplicação da regra não gerou nenhum resultado"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr "a opção -s foi fornecida, mas a regra padrão pode ser aplicada"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "Não é possível usar -+ com a opção -l"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "Não é possível usar -f ou -F com a opção -l"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr "Não é possível usar --reentrant ou --bison-bridge com a opção -l"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "-Cf/-CF e -Cm não fazem sentido juntos"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "-Cf/-CF e -I são incompatíveis"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "-Cf/-CF são incompatíveis com o modo de compatibilidade lex"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "-Cf e -CF são mutuamente exclusivos"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "Não é possível usar -+ com a opção -CF"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "%array é incompatível com a opção -+"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "As opções -+ e --reentrant são mutuamente exclusivas."
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "sem suporte à ponte bison pelo scanner de C++."
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "não foi possível criar %s"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "não foi possível escrever o cabeçalho das tabelas"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "não é possível abrir o arquivo esqueleto %s"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr "a alocação de definição de macro falhou"
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "erro lendo o arquivo esqueleto %s"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "erro fechando o arquivo esqueleto %s"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "erro ao criar o arquivo cabeçalho %s"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "erro ao gravar o arquivo de saída %s"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "erro ao fechar o arquivo de saída %s"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "erro ao remover o arquivo de saída %s"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "Impossível restaurar.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d fazendo cópia de segurança de estados (não-aceita).\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Tabelas compactadas sempre têm cópias de segurança.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "erro ao gravar a cópia de segurança %s"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "erro ao fechar a cópia de segurança %s"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "%s versão %s estatísticas de uso:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " opções de scanner: -"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d estados NFA\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d estados DFA (%d palavras)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d regras\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " Sem cópia de segurança\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d fazendo cópia de segurança de estados (não-aceita)\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Tabelas compactadas sempre têm cópias de segurança\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " Padrões de início-de-linha usados\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d condições de início\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d estados epsilon, %d estados epsilon duplo\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " nenhuma classe de caracteres\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr ""
" %d/%d classes de caracteres precisaram de %d/%d palavras de armazenamento, "
"%d reusadas\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d pares estado/próximoestado criados\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d transições únicas/duplicadas\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d entradas de tabela\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d entradas base-def criadas\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (pico %d) entradas nxt-chk criadas\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " %d/%d (pico %d) modelos de entradas nxt-chk criadas\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d entradas vazias na tabela\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d protos criados\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d modelos criados, %d usos\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d classes de equivalência criadas\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d classes de meta-equivalência criadas\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d salvas) colisões de hash, %d DFAs iguais\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " %d conjuntos de realocação necessários\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " %d total de entradas de tabela necessárias\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "Erro interno. flexopts estão malformados.\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Tente \"%s --help\" para maiores informações.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "opção -C \"%c\" desconhecida"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "erro fatal de análise"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr ""
"não foi possível criar arquivo de cópia de segurança das informações %s"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr ""
"a opção de compatibilidade com lex da AT&T \"-l\" acarreta em uma grande "
"penalidade na performance\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr ""
" e pode ser a fonte real de outras penalidades de performance reportadas\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
@@ -492,53 +512,53 @@ msgstr ""
"%%option yylineno acarreta em uma penalidade na performance APENAS em regras "
"que podem bater caracteres de nova linha\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "-I (interativo) acarreta em uma pequena penalidade na performance\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() acarreta em uma pequena penalidade na performance\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT acarreta em uma grande penalidade na performance\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr ""
"Variável seguindo regras de contexto implicam em grande perda de "
"performance\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT não pode ser usado com -f ou -F"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "%option yylineno não pode ser usada com REJECT"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr ""
"variáveis seguindo regras de contexto não podem ser usadas com -f ou -F"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%option yyclass só tem sentido para scanners C++"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Uso: %s [OPÇÕES] [ARQUIVO]...\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -593,8 +613,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -672,48 +690,48 @@ msgstr ""
" -h, --help produz esta mensagem de ajuda\n"
" -V, --version informa a versão do %s\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr "alocação de sko_stack falhou"
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "nome \"%s\" ridiculamente longo"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "alocação de memória falhou em allocate_array()"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "caractere inválido \"%s\" detectado em check_char()"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "o scanner precisa da opção -8 para usar o caractere %s"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "alocação de memória falhou em allocate_array()"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: erro interno fatal, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "tentativa de aumentar o tamanho do vetor falhou"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "linha inválida no arquivo de esqueleto"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "alocação de memória falhou em yy_flex_xmalloc()"
@@ -747,20 +765,20 @@ msgstr "máquina vazia em dupmachine()"
msgid "Variable trailing context rule at line %d\n"
msgstr "Regra de final de contexto variável na linha %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "estado de tipo inválido em mark_beginning_as_normal()"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "regras de entrada são muito complicadas (>= %d estados NFA)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "muitas transições em mkxtion()"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "muitas regras (> %d)!"
@@ -769,133 +787,137 @@ msgstr "muitas regras (> %d)!"
msgid "unknown error processing section 1"
msgstr "erro desconhecido processando a seção 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "lista de condições de início inválida"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "regra não reconhecida"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "contexto final usado duas vezes"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "valores de iteração inválidos"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "valor de iteração deve ser positivo"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr ""
"a faixa de caracteres [%c-%c] é ambígua em um scanner \"case-insensitive\""
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "faixa negativa na classe de caracteres"
-#: src/parse.y:916
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr "[:^lower:] é ambígua em um scanner \"case-insensitive\""
-#: src/parse.y:922
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr "[:^upper:] é ambígua em um scanner \"case-insensitive\""
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "Linha de entrada muito longa\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "diretiva \"%top\" malformada"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "diretiva \"%\" não reconhecida"
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr "Nome de definição muito longo\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "'{' sem fechamento"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr "Valor de definição para {%s} muito longo\n"
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "definição de nome incompleta"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr "Linha de opção muito longa\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "%%option não reconhecida: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "classe de caractere inválida"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "definição indefinida {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "<condição de início> inválida: %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "faltou aspa"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "expressão de classe de caractere inválida: %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "caracatere inválido entre {}'s"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "faltou }"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "Fim de Arquivo encontrado dentro de uma ação"
-#: src/scan.l:951
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
msgstr "Fim de Arquivo encontrado dentro do padrão"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "caracter inválido: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "não foi possível abrir %s"
@@ -943,16 +965,16 @@ msgstr "nome definido duas vezes"
msgid "start condition %s declared twice"
msgstr "condição de início %s declarada duas vezes"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "Fim-de-Arquivo prematuro"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Marca de Fim\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*Algo Estranho* - tok: %d val: %d\n"
diff --git a/po/ro.po b/po/ro.po
index 214e86b..802de7a 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -1,12 +1,27 @@
-# Mesajele în limba românã pentru pachetul flex.
-# Copyright (C) 2003 The Flex Project
-# Eugen Hoanca <eugenh@urban-grafx.ro>, 2003.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex 2.5.31\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:50-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Mesajele în limba românã pentru pachetul flex.
+#~ # Copyright (C) 2003 The Flex Project
+#~ # Eugen Hoanca <eugenh@urban-grafx.ro>, 2003.
+#~ #
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex 2.5.31\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2003-11-22 11:07+0200\n"
"Last-Translator: Eugen Hoanca <eugenh@urban-grafx.ro>\n"
"Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
@@ -14,6 +29,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO-8859-2\n"
"Content-Transfer-Encoding: 8bit\n"
+"X-Bugs: Report translation errors to the Language-Team address.\n"
#: src/buf.c:79
msgid "Allocation of buffer to print string failed"
@@ -75,24 +91,24 @@ msgstr ""
"Rezultat(dump) DFA:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "nu am putut crea sfârºit unic pentru starea buffer-ului"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "stare # %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "Nu am putut scrie yynxt_tbl[][]"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "caracter greºit de tranziþie detectat în sympartition()"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -104,29 +120,29 @@ msgstr ""
"Clase de Echivalenþã:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "starea # %d acceptã: [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "starea # %d acceptã: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "Nu am putut scrie yyacclist_tbl"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "Nu am putut scrie yyacc_tbl"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "Nu am putut scrie ecstbl"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -136,346 +152,350 @@ msgstr ""
"\n"
"Clase de Meta-Echivalenþã:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "Nu am putut scrie yymeta_tbl"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "Nu am putut scrie yybase_tbl"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "Nu am putut scrie yydef_tbl"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "Nu am putut scrie yynxt_tbl"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "Nu am putut scrie yychk_tbl"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "Nu am putut scrie ftbl"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "Nu am putut scrie ssltbl"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "Nu am putut scrie eoltbl"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "Nu am putut scrie yynultrans_tbl"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "regula nu se potriveºte cu nimic"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr "a fost datã opþiunea -s dar regula implicitã se poate potrivi"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "Nu se poate folosi -+ cu opþiunea -l"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "Nu se poate folosi -f sau -F cu opþiunea -l"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr "Nu se poate folosi --reentrant sau --bison-bridge cu opþiunea -l"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "-Cf/-CF ºi -Cm nu au sens folosite împreunã"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "-Cf/-CF ºi -I sunt incompatibile"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "-Cf/-CF sunt incompatibile cu module de compatibilitate lex"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "-Cf ºi -CF se exclud reciproc"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "Nu se poate folosi -+ cu opþiunea -CF"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "%array incompatibil cu opþiunea -+"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "Opþiunile -+ and --reentrant se exclud reciproc"
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "bridge bison nu este suportat pentru scannerul C++."
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "nu am putut crea %s"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "Nu am putut scrie capul de tabel"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "nu am putut deschide fiºierul schelet %s"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr ""
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "eroare de intrare(input) în timpul citirii fiºierului schelet %s"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "eroare în închiderea fiºierului schelet %s"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "eroare în crearea fiºierului de header %s"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "eroare în scrierea fiºierului de output %s"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "eroare în închiderea fiºierului de output %s"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "eroare în ºtergerea fiºierului de output %s"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "Nu se revine (backing-up).\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d salvare de (inacceptabile) stãri.\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Tabelele compresate întotdeauna au back-up.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "eroare în scrierea fiºierului de backup %s"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "eroare în închiderea fiºierului de backup %s"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "%s versiunea %s statistici de folosire:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " opþiuni de scanner: -"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d stãri NFA\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d stãri DFA (%d cuvinte)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d reguli\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " Nu se face backup\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d salvare de (inacceptabile) stãri\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Tabelele compresate întotdeauna au back-up\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " Tipare de începuturi de linie folosite\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d condiþii de start\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d stãri epsilon, %d stãri dublu epsilon\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " nici o clasã de caractere\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr ""
" %d/%d clase de caractere necesare %d/%d cuvinte de stocare, %d refolosite\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d perechi de stare/stareurmãtoare create\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d tranziþii unice/duplicate\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d intrãri în tabele\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d base-def intrãri create\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (maxim %d) nxt-chk intrãri create\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " %d/%d (maxim %d) model nxt-chk intrãri create\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d intrãri în tabel goale\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d prototipuri create\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d modele create, %d folosiri\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d clase de echivalenþã create\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d clase de meta-echivalenþã create\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d salvate) coliziuni disipate(hash), %d egaluri de DFA-uril\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " %d seturi de realocãri necesare\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " %d intrãri totale în tabel necesare\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "Eroare internã. Opþiunile flex(flexopts) sunt malformate.\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Încercaþi `%s --help' pentru mai multe informaþii.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "opþiune -C necunoscutã `%c'"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "eroare fatalã de analizã(parse)"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "nu s-a putut crea fiºierul de informaþii de back-up %s"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr ""
"-l opþiunea de compatibilitate AT&T lex determinã o scãdere drasticã a "
"performanþei\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr "ºi poate fi sursa realã a altor scãderi de performanþã raportate\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
@@ -484,53 +504,53 @@ msgstr ""
"%%opþiunea yylineno determinã o scãdere drasticã a performanþei DOAR în "
"regulile care se potrivesc caracterelor linie_nouã(newline)\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "-I (interactiãe) determinã o scãdere minorã a performanþei\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() determinã o scãdere minorã a performanþei\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT determinã o scãdere drasticã a performanþei\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr ""
"Contextul de sfârºit(trailing) variabil determinã o scãdere drasticã a "
"performanþei\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT nu poate fi folosit cu -f sau -F"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "%opþiunea yylineno nu poate fi folositã cu REJECT"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr ""
"contextul de sfârºit(trailing) variabil nu poate fi folosit cu -f sau -F"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%opþunea yyclass este folositoare doar pentru scannerele C++"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Folosire: %s [OPÞIUNI] [FIªIER]...\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -585,8 +605,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -664,48 +682,48 @@ msgstr ""
" -h, --help produce acest mesaj de ajutor\n"
" -V, --version raporteazã versiunea %s\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr ""
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "numele \"%s\" este ridicol de lung"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "alocare de memorie eºuatã în allocate_array()"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "caracter greºit `%s' detectat în check_char()"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "scannerul necesitã parametrul(flag) -8 pentru a folosi caracterul %s"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "alocare de memorie eºuatã în allocate_array()"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: eroare internã fatalã, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "încercare de a mãri dimensiunea domeniului eºuatã"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "linie greºitã în fiºierul schelet"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "alocare de memorie eºuatã în yy_flex_xmalloc()"
@@ -739,20 +757,20 @@ msgstr "maºinã vidã în dupmachine()"
msgid "Variable trailing context rule at line %d\n"
msgstr "Regulã de context de sfârºit variabil la linia %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "tip de stare greºitã în mark_beginning_as_normal()"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "regulile de intrare(input) sunt prea complicate (>= %d stãri NFA)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "s-au gãsit prea multe tranziþii în mkxtion()"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "prea multe reguli (> %d)!"
@@ -761,143 +779,147 @@ msgstr "prea multe reguli (> %d)!"
msgid "unknown error processing section 1"
msgstr "eroare necunoscutã în procesarea secþiunii 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "listã de stãri în condiþie proastã"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "regulã necunoscutã"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "context de sfârºit(trailing) utilizat de douã ori"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "valori de iteraþie greºite"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "valoarea iteraþiei trebuie sã fie pozitivã"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr ""
"intervalul(range) de caracter [%c %c] este ambiguu într-un scanner caz-"
"insenzitiv"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "domeniu negativ în clasa de caractere"
-#: src/parse.y:916
+#: src/parse.y:918
#, fuzzy
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr ""
"intervalul(range) de caracter [%c %c] este ambiguu într-un scanner caz-"
"insenzitiv"
-#: src/parse.y:922
+#: src/parse.y:924
#, fuzzy
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr ""
"intervalul(range) de caracter [%c %c] este ambiguu într-un scanner caz-"
"insenzitiv"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "Linie de intrare(input) prea lungã\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "directivã '%top' malformatã"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "directivã '%' necunoscutã"
-#: src/scan.l:192
+#: src/scan.l:214
#, fuzzy
msgid "Definition name too long\n"
msgstr "Linie de intrare(input) prea lungã\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "'{' fãrã corespondent"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr ""
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "definire de nume incompletã"
-#: src/scan.l:444
+#: src/scan.l:467
#, fuzzy
msgid "Option line too long\n"
msgstr "Linie de intrare(input) prea lungã\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "%%opþiune necunoscutã: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "clasã de caractere greºitã"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "definiþie nedefinitã {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "<condiþie de start> greºitã: %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "menþionare(quote) lipsã"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "expresie clasã caracter greºitã: %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "caracter eronat între {}"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "lipseºte }"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "EOF întâlnit în mijlocul acþiunii"
-#: src/scan.l:951
+#: src/scan.l:977
#, fuzzy
msgid "EOF encountered inside pattern"
msgstr "EOF întâlnit în mijlocul acþiunii"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "caracter eronat: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "nu pot deschide %s"
@@ -945,16 +967,16 @@ msgstr "nume definit de douã ori"
msgid "start condition %s declared twice"
msgstr "condiþie de start %s definitã de douã ori"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "EOF prematur"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Marcaj de sfârºit\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*Ceva Ciudat* - tok: %d val: %d\n"
diff --git a/po/ru.po b/po/ru.po
index 76c6585..420bf96 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -1,14 +1,29 @@
-# Russian translation for flex.
-# Copyright (C) 2013 The Flex Project (msgids)
-# This file is distributed under the same license as the flex package.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
-# Dmitry S. Sivachenko <dima@Chg.RU>, 1999, 2000, 2001, 2002.
-# Yuri Kozlov <yuray@komyakino.ru>, 2014.
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex 2.5.38\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:52-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Russian translation for flex.
+#~ # Copyright (C) 2013 The Flex Project (msgids)
+#~ # This file is distributed under the same license as the flex package.
+#~ #
+#~ # Dmitry S. Sivachenko <dima@Chg.RU>, 1999, 2000, 2001, 2002.
+#~ # Yuri Kozlov <yuray@komyakino.ru>, 2014.
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex 2.5.38\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2014-02-16 10:00+0400\n"
"Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n"
"Language-Team: Russian <gnu@mx.ru>\n"
@@ -16,6 +31,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
+"X-Bugs: Report translation errors to the Language-Team address.\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Lokalize 1.4\n"
@@ -80,24 +96,24 @@ msgstr ""
"Дамп ДКÐ:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "невозможно Ñоздать уникальное ÑоÑтоÑние конца буфера"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "ÑоÑтоÑние # %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "Ðевозможно запиÑать yynxt_tbl[][]"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "обнаружен неверный переходный Ñимвол в sympartition()"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -109,29 +125,29 @@ msgstr ""
"КлаÑÑÑ‹ ÑквивалентноÑти:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "ÑоÑтоÑние # %d допуÑкает: [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "ÑоÑтоÑние # %d допуÑкает: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "Ðевозможно запиÑать yyacclist_tbl"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "Ðевозможно запиÑать yyacc_tbl"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "Ðевозможно запиÑать ecstbl"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -141,348 +157,352 @@ msgstr ""
"\n"
"Мета-Ñквивалентные КлаÑÑÑ‹:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "Ðевозможно запиÑать yymeta_tbl"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "Ðевозможно запиÑать yybase_tbl"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "Ðевозможно запиÑать yydef_tbl"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "Ðевозможно запиÑать yynxt_tbl"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "Ðевозможно запиÑать yychk_tbl"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "Ðевозможно запиÑать ftbl"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "Ðевозможно запиÑать ssltbl"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "Ðевозможно запиÑать eoltbl"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "Ðевозможно запиÑать yynultrans_tbl"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "невозможно применить правило"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr "указан параметр -s, но правило по умолчанию не может быть применено"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "Ðевозможно иÑпользовать -+ Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð¼ -l"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "Ðевозможно иÑпользовать -f или -F Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð¼ -l"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr "Ðевозможно иÑпользовать --reentrant или --bison-bridge Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð¼ -l"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "Параметры -Cf/-CF и -Cm вмеÑте не имеют ÑмыÑла"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "Параметры -Cf/-CF и -I неÑовмеÑтимы"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "Параметры -Cf/-CF неÑовмеÑтимы Ñ Ñ€ÐµÐ¶Ð¸Ð¼Ð¾Ð¼ lex-ÑовмеÑтимоÑти"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "Параметры -Cf и -CF ÑвлÑÑŽÑ‚ÑÑ Ð²Ð·Ð°Ð¸Ð¼Ð¾Ð¸Ñключающими"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "Ðевозможно иÑпользовать -+ Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð¼ -CF"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "%array неÑовмеÑтим Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð¾Ð¼ -+"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "Параметры -+ и --reentrant ÑвлÑÑŽÑ‚ÑÑ Ð²Ð·Ð°Ð¸Ð¼Ð¾Ð¸Ñключающими."
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "bison bridge не поддерживаетÑÑ Ð´Ð»Ñ Ñканера C++."
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "невозможно Ñоздать %s"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "Ðевозможно запиÑать заголовок таблиц"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "Ðевозможно открыть файл-ÐºÐ°Ñ€ÐºÐ°Ñ %s"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr "Ðе удалоÑÑŒ размеÑтить определение макроÑа"
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "ошибка Ñ‡Ñ‚ÐµÐ½Ð¸Ñ Ñ„Ð°Ð¹Ð»Ð°-каркаÑа %s"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "ошибка при закрытии файла-каркаÑа %s"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "ошибка ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²Ð¾Ñ‡Ð½Ð¾Ð³Ð¾ файла %s"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "ошибка запиÑи в выходной файл %s"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "ошибка Ð·Ð°ÐºÑ€Ñ‹Ñ‚Ð¸Ñ Ð²Ñ‹Ñ…Ð¾Ð´Ð½Ð¾Ð³Ð¾ файла %s"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "ошибка ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ñ Ð²Ñ‹Ñ…Ð¾Ð´Ð½Ð¾Ð³Ð¾ файла %s"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "Резервное копирование отключено.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "резервное копирование %d (недопуÑтимых) ÑоÑтоÑний.\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Резервное копирование Ñжатых таблиц выполнÑетÑÑ Ð²Ñегда.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "ошибка запиÑи резервной копии файла %s"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "ошибка Ð·Ð°ÐºÑ€Ñ‹Ñ‚Ð¸Ñ Ñ€ÐµÐ·ÐµÑ€Ð²Ð½Ð¾Ð¹ копии файла %s"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "ÑтатиÑтика иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ %s верÑии %s:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " параметры Ñканера: -"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d ÑоÑтоÑний ÐКÐ\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d ÑоÑтоÑний ДКР(%d Ñлов)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d правил\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " Резервное копирование отключено\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " резервное копирование %d (недопуÑтимых) ÑоÑтоÑний\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Резервное копирование Ñжатых таблиц выполнÑетÑÑ Ð²Ñегда\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " ИÑпользуютÑÑ ÑˆÐ°Ð±Ð»Ð¾Ð½Ñ‹ начала Ñтроки\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d начальных уÑловий\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d ÑпÑилон-ÑоÑтоÑний, %d двойных ÑпÑилон-ÑоÑтоÑний\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " отÑутÑтвуют клаÑÑÑ‹ Ñимволов\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr ""
" %d/%d клаÑÑов Ñимволов требуют %d/%d Ñлов Ð´Ð»Ñ Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ, %d повторно "
"иÑпользовано\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " Ñоздано %d пар ÑоÑтоÑние/Ñлед_ÑоÑтоÑние\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d уникальных/повторÑющихÑÑ Ð¿ÐµÑ€ÐµÑ…Ð¾Ð´Ð¾Ð²\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d Ñлементов таблицы\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " Ñоздано %d/%d base-def Ñлементов\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " Ñоздано %d/%d (пик %d) nxt-chk Ñлементов\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " Ñоздано %d/%d (пик %d) шаблонных nxt-chk Ñлементов\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d пуÑÑ‚Ñ‹Ñ… Ñлементов таблицы\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " Ñоздано %d прототипов\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " Ñоздано %d шаблонов, %d иÑпользуютÑÑ\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " Ñозданы клаÑÑÑ‹ ÑквивалентноÑти %d/%d\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d мета-Ñквивалентных клаÑÑов Ñоздано\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d запиÑано) коллизий Ñ…Ñш-таблицы, %d Ñквивалентных ДКÐ\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " требуетÑÑ %d наборов повторных размещений\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " вÑего требуетÑÑ %d Ñлементов таблицы\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "ВнутреннÑÑ Ð¾ÑˆÐ¸Ð±ÐºÐ°. Ðеправильное значение flexopts.\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Попробуйте «%s --help» Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð±Ð¾Ð»ÐµÐµ подробного опиÑаниÑ.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "неизвеÑтное значение «%c» Ð´Ð»Ñ -C"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "Ñ„Ð°Ñ‚Ð°Ð»ÑŒÐ½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° разбора"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "невозможно Ñоздать резервную копию информационного файла %s"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr ""
"Параметр -l ÑовмеÑтимоÑти Ñ AT&T lex влечёт значительное Ñнижение "
"производительноÑти\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr ""
" и также может быть иÑтинным иÑточником проблем Ñ Ð¿Ñ€Ð¾Ð¸Ð·Ð²Ð¾Ð´Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð¾Ñтью\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
@@ -491,54 +511,54 @@ msgstr ""
"%%option yylineno влечёт значительное Ñнижение производительноÑти ТОЛЬКО Ð´Ð»Ñ "
"правил, которые могут Ñовпадать Ñ Ñимволами новой Ñтроки\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "-I (интерактивный) влечёт незначительное Ñнижение производительноÑти\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() приводит к небольшому Ñнижению производительноÑти\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT влечёт значительное Ñнижение производительноÑти\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr ""
"Правила Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ñ‹Ð¼ замыкающим контекÑтом приводÑÑ‚ к значительному Ñнижению "
"производительноÑти\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT не может быть иÑпользован вмеÑте Ñ -f или -F"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "%option yylineno не может быть иÑпользован Ñ REJECT"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr ""
"правила Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ñ‹Ð¼ замыкающим контекÑтом не могут быть иÑпользованы Ñ -f "
"или -F"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%option yyclass имеет ÑмыÑл только Ð´Ð»Ñ Ñканеров C++"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "ИÑпользование: %s [ПÐРÐМЕТРЫ] [ФÐЙЛ]…\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -593,8 +613,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -674,48 +692,48 @@ msgstr ""
" -h, --help показать Ñту Ñправку\n"
" -V, --version показать верÑию %s\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr "не удалоÑÑŒ размеÑтить sko_stack"
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "Ð¸Ð¼Ñ Â«%s» нелепо длинное"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "ошибка Ð²Ñ‹Ð´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¿Ð°Ð¼Ñти в allocate_array()"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "найден неверный Ñимвол «%s» в check_char()"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "Ð´Ð»Ñ Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ñимвола %s Ñканеру требуетÑÑ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€ -8"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "ошибка Ð²Ñ‹Ð´ÐµÐ»ÐµÐ½Ð¸Ñ Ð¿Ð°Ð¼Ñти в allocate_array()"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: Ñ„Ð°Ñ‚Ð°Ð»ÑŒÐ½Ð°Ñ Ð²Ð½ÑƒÑ‚Ñ€ÐµÐ½Ð½ÑÑ Ð¾ÑˆÐ¸Ð±ÐºÐ°, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "ошибка при попытке увеличить размер маÑÑива"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "Ð½ÐµÐ²ÐµÑ€Ð½Ð°Ñ Ñтрока в файле-каркаÑе"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "ошибка при выделении памÑти в yy_flex_xmalloc()"
@@ -749,20 +767,20 @@ msgstr "пуÑтой автомат в dupmachine()"
msgid "Variable trailing context rule at line %d\n"
msgstr "Правило Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÐ½Ð½Ñ‹Ð¼ замыкающим контекÑтом в Ñтроке %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "неверный тип ÑоÑтоÑÐ½Ð¸Ñ Ð² mark_beginning_as_normal()"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "входные правила Ñлишком Ñложные (>= %d ÑоÑтоÑний ÐКÐ)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "найдено Ñлишком много переходов в mkxtion()"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "Ñлишком много правил (> %d)!"
@@ -771,138 +789,142 @@ msgstr "Ñлишком много правил (> %d)!"
msgid "unknown error processing section 1"
msgstr "неизвеÑÑ‚Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° при обработке раздела 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "неверный ÑпиÑок начальных уÑловий"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "нераÑпознанное правило"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "замыкающий контекÑÑ‚ иÑпользуетÑÑ Ð´Ð²Ð°Ð¶Ð´Ñ‹"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "неверные Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¸Ñ‚ÐµÑ€Ð°Ñ†Ð¸Ð¹"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "значение итераций должно быть положительным"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr ""
"иÑпользование Ñимвольного диапазона [%c-%c] Ñомнительно в Ñканере, не "
"чувÑтвительном к региÑтру"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "отрицательный диапазон в клаÑÑе Ñимволов"
-#: src/parse.y:916
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr ""
"иÑпользование [:^lower:] Ñомнительно Ð´Ð»Ñ Ñканера, не чувÑтвительного к "
"региÑтру"
-#: src/parse.y:922
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr ""
"иÑпользование [:^upper:] Ñомнительно Ð´Ð»Ñ Ñканера, не чувÑтвительного к "
"региÑтру"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "Слишком Ð´Ð»Ð¸Ð½Ð½Ð°Ñ Ð²Ñ…Ð¾Ð´Ð½Ð°Ñ Ñтрока\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "нераÑÐ¿Ð¾Ð·Ð½Ð°Ð½Ð½Ð°Ñ Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¸Ð²Ð° «%top»"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "нераÑÐ¿Ð¾Ð·Ð½Ð°Ð½Ð½Ð°Ñ Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¸Ð²Ð° «%»"
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr "Слишком длинное определение имени\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "ÐÐµÐ¿Ð°Ñ€Ð½Ð°Ñ Â«{»"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr "Слишком длинное определение Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð´Ð»Ñ {%s}\n"
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "неполное определение имени"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr "Слишком длинный параметр\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "нераÑпознанный %%option: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "неверный клаÑÑ Ñимвола"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "неопределенное определение {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "неверное <начальное уÑловие>: %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "отÑутÑтвуют кавычки"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "неверное выражение клаÑÑа Ñимвола: %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "неверный Ñимвол внутри {}"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "отÑутÑтвует }"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "вÑтречен EOF внутри дейÑтвиÑ"
-#: src/scan.l:951
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
msgstr "вÑтречен EOF внутри шаблона"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "неверный Ñимвол: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "невозможно открыть %s"
@@ -950,16 +972,16 @@ msgstr "Ð¸Ð¼Ñ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»ÐµÐ½Ð¾ дважды"
msgid "start condition %s declared twice"
msgstr "начальное уÑловие %s опиÑано дважды"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "неожиданный EOF"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Метка конца\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*Что-то не так* — tok: %d val: %d\n"
diff --git a/po/sr.po b/po/sr.po
index f07cd53..580fd3e 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -1,12 +1,27 @@
-# Serbian translation for flex
-# Copyright (C) 2013 The Flex Project (msgids)
-# This file is distributed under the same license as the flex package.
-# МироÑлав Ðиколић <miroslavnikolic@rocketmail.com>, 2013.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex-2.5.37\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:55-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Serbian translation for flex
+#~ # Copyright (C) 2013 The Flex Project (msgids)
+#~ # This file is distributed under the same license as the flex package.
+#~ # МироÑлав Ðиколић <miroslavnikolic@rocketmail.com>, 2013.
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex-2.5.37\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2013-10-30 18:20+0200\n"
"Last-Translator: МироÑлав Ðиколић <miroslavnikolic@rocketmail.com>\n"
"Language-Team: Serbian <(nothing)>\n"
@@ -14,6 +29,7 @@ msgstr ""
"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=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
@@ -77,24 +93,24 @@ msgstr ""
"ДФРиÑпиÑ:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "не могу да направим јединÑтвено Ñтање краја међумеморије"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "Ñтање # %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "Ðе могу да запишем „yynxt_tbl[][]“"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "откривен је лош знак прелаза у „sympartition()“"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -106,29 +122,29 @@ msgstr ""
"Разреди једнакоÑти:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "Ñтање # %d прихвата: [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "Ñтање # %d прихвата: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "Ðе могу да запишем „yyacclist_tbl“"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "Ðе могу да запишем „yyacc_tbl“"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "Ðе могу да запишем „ecstbl“"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -138,345 +154,349 @@ msgstr ""
"\n"
"Разреди мета-једнакоÑти:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "Ðе могу да запишем „yymeta_tbl“"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "Ðе могу да запишем „yybase_tbl“"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "Ðе могу да запишем „yydef_tbl“"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "Ðе могу да запишем „yynxt_tbl“"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "Ðе могу да запишем „ychk_tbl“"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "Ðе могу да запишем „ftbl“"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "Ðе могу да запишем „ssltbl“"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "Ðе могу да запишем „eoltbl“"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "Ðе могу да запишем „yynultrans_tbl“"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "правило не може бити поклопљено"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr "дата је опција „-s“ али оÑновно правило може бити поклопљено"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "Ðе могу да кориÑтим -+ Ñа опцијом „-l“"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "Ðе могу да кориÑтим „-f“ или „-F“ Ñа опцијом „-l“"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr "Ðе могу да кориÑтим „--reentrant“ или „--bison-bridge“ Ñа опцијом „-l“"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "„-Cf/-CF“ и „-Cm“ немају ÑмиÑла заједно"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "„-Cf/-CF“ и „-I“ Ñу неÑаглаÑне"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "„-Cf/-CF“ Ñу неÑаглаÑни Ñа режимом лекÑ-ÑаглаÑноÑти"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "„-Cf“ и „-CF“ Ñе међуÑобно иÑкључују"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "Ðе могу да кориÑтим -+ Ñа опцијом „-CF“"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "%aниз није ÑаглаÑан Ñа опцијом -+"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "Опције -+ и „--reentrant“ Ñе међуÑобно иÑкључују."
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "бизонов моÑÑ‚ није подржан за Ц++ Ñкенер."
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "не могу да направим %s"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "не могу да запшем беÑтаблично заглавље"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "Ðе могу да отворим датотеку окоÑнице „%s“"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr "није уÑпело додељивање одреднице макроа"
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "грешка улаза читања датотеке окоÑнице „%s“"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "грешка затварања датотеке окоÑнице „%s“"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "грешка Ñтварања датотеке заглавља „%s“"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "грешка запиÑивања излазне датотеке „%s“"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "грешка затварања излазне датотеке „%s“"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "грешка бриÑања излазне датотеке „%s“"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "Ðе правим резерву.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d Ñтварам резерве (не-прихватам) Ñтања.\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Сжете табеле увек Ñтварају резерву.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "грешка запиÑивања датотеке резерве „%s“"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "грешка затварања датотеке резерве „%s“"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "СтатиÑтика коришћења %s издања%s:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " опције прегледача: -"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d ÐФРÑтања\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d ДФРÑтања (%d речи)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d правила\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " Ðе правим резерву\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d Ñтварам резерве (не-прихватам) Ñтања\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Сжете табеле увек Ñтварају резерву\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " Коришћени Ñу шаблони почетка-реда\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d уÑлови покретања\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d Ñтања ипÑилона, %d Ñтања двоÑтруког ипÑилона\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " нема разреда знака\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr ""
" %d/%d разредима знака беху потребне %d/%d речи Ñкладишта, %d поново "
"коришћених\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d пара Ñтања/Ñледећег_Ñтања је направљено\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d јединÑтвена/удвоÑтручена прелаза\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d уноÑа табеле\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " направљено је %d/%d уноÑа оÑновне одреднице\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " направљено је %d/%d (врх %d) „nxt-chk“ уноÑа\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " направљено је %d/%d (врх %d)шаблона „nxt-chk“ уноÑа\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d празна уноÑа табеле\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " направљених узорака — %d\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " направљених шаблона - %d, кориÑтим %d\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " направљено је %d/%d разреда једнакоÑти\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " направљено је %d/%d разреда мета-једнакоÑти\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (Ñачуваних %d) Ñукоба хеша, %d једнак ДФÐ-Ñу\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " потребна Ñу %d Ñкупа поновног додељивања\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " потребна Ñу укупно %d уноÑа табеле\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "Унутрашња грешка. „flexopts“ је лоше обликован.\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Пробајте „%s --help“ за више података.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "непозната опција -C „%c“"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "кобна грешка обраде"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "не могу да направим резерву датотеке података „%s“"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr "-l опција ÑаглаÑноÑти ÐТ&Т лекÑа изазива велико Ñмањење учинка\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr " и може бити Ñтваран извор других извешених ограничења учинка\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
@@ -485,51 +505,51 @@ msgstr ""
"%%опција „yylineno“ изазива Ñмањење учинка СÐМО на правилима која могу да "
"поклопе знакове новог реда\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "-I (међудејÑтвено) изазива мање Ñмањење учинка\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "„yymore()“ изазива мање Ñмањење учинка\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "„REJECT“ изазива веће Ñмањење учинка\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr "Променљива правила пратећег контекÑа изазивају веће Ñмањење учинка\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "„REJECT“ не може да Ñе кориÑти Ñа „-f“ или „-F“"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "%oпција „yylineno“ не може да Ñе кориÑти Ñа „REJECT“"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr ""
"променљива правила пратећег контекÑта не могу бити коришћена Ñа „-f“ или „-F“"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%oпција „yyclass“ има ÑмиÑла Ñамо за Ц++ Ñкенере"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Употреба: %s [ОПЦИЈЕ] [ДÐТОТЕКÐ]...\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -584,8 +604,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -668,48 +686,48 @@ msgstr ""
" -h, --help иÑпиÑује ову помоћ\n"
" -V, --version извештава о издању %s-а\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr "није уÑпело додељивање „sko_stack“-а"
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "назив „%s“ је Ñмешно дуг"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "није уÑпело додељивање меморије у „allocate_array()“"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "лош знак „%s“ је откривен у „check_char()“"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "Ñкенер захтева -8 обележја да би кориÑтио знак „%s“"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "није уÑпело додељивање меморије у „allocate_array()“"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: кобна унутрашња грешка, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "није уÑпео покушај повећања величине низа"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "лош ред у датотеци окоÑнице"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "није уÑпело додељивање меморије у „yy_flex_xmalloc()“"
@@ -743,20 +761,20 @@ msgstr "празна машина у „dupmachine()“"
msgid "Variable trailing context rule at line %d\n"
msgstr "Променљиво правило пратећег контекÑта на %d. реду\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "лоша врÑта Ñтања у „mark_beginning_as_normal()“"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "улазна правила Ñу превише Ñложена (>= %d ÐФРÑтања)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "пронађох превише прелаза у „mkxtion()“"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "превише правила (> %d)!"
@@ -765,132 +783,136 @@ msgstr "превише правила (> %d)!"
msgid "unknown error processing section 1"
msgstr "непозната грешка обраде одељка 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "лош ÑпиÑак почетног уÑлова"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "непознато правило"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "пратећи контекÑÑ‚ је коришћен два пута"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "лоша вредноÑÑ‚ опетовања"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "вредноÑÑ‚ опетовања мора бити позитивна"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr "опÑег знака [%c-%c] је нејаÑан у Ñкенеру неоÑетљивом на величину Ñлова"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "негативан опÑег у разреду знака"
-#: src/parse.y:916
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr "[:^lower:] је нејаÑно у Ñкенеру неоÑетљивом на величину Ñлова"
-#: src/parse.y:922
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr "[:^upper:] је нејаÑно у Ñкенеру неоÑетљивом на величину Ñлова"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "Улазни ред је предуг\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "лоша одредница „%top“"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "непозната "
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr "Ðазив одреднице је предуг\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "Ðеупарена „{“"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr "ВредноÑÑ‚ одреднице за {%s} је предуга\n"
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "непотпуна одредница назива"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr "Ред опције је предуг\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "непозната %%опција: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "лош разред знака"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "неодређена одредница {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "лош [почетни уÑлов]: %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "недоÑтају наводници"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "лош израз разреда знака: %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "лош знак унутар {}"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "недоÑтаје }"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "наишао Ñам на крај датотеке унутар радње"
-#: src/scan.l:951
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
msgstr "наишао Ñам на крај датотеке унутар шаблона"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "лош знак: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "не могу да отворим „%s“"
@@ -938,16 +960,16 @@ msgstr "назив је одређен два пута"
msgid "start condition %s declared twice"
msgstr "почетни уÑлов „%s“ је објављен два пута"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "прерани крај датотеке"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Завршни означавач\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*Ðешто је чудно* — ток: %d вред: %d\n"
diff --git a/po/sv.po b/po/sv.po
index 4a3582d..10f8fea 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -1,55 +1,75 @@
-# Swedish messages for flex.
-# Copyright (C) 2003 The Flex Project
-# Johan Linde <jl@theophys.kth.se>, 1996.
-# Christian Rose <menthos@menthos.com>, 2002, 2004.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex 2.5.31\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 10:58-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Swedish messages for flex.
+#~ # Copyright (C) 2014 The Flex Project (msgids)
+#~ # This file is distributed under the same license as the flex package.
+#~ #
+#~ # Johan Linde <jl@theophys.kth.se>, 1996.
+#~ # Christian Rose <menthos@menthos.com>, 2002, 2004.
+#~ # Göran Uddeborg <goeran@uddeborg.se>, 2016
+#~ #
+#~ # $Revision: 1.5 $
+#~ msgid ""
+#~ msgstr ""
+"Project-Id-Version: flex 2.5.38\n"
"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
-"PO-Revision-Date: 2004-03-21 22:51+0100\n"
-"Last-Translator: Christian Rose <menthos@menthos.com>\n"
-"Language-Team: Swedish <sv@li.org>\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
+"PO-Revision-Date: 2016-06-06 19:10+0200\n"
+"Last-Translator: Göran Uddeborg <goeran@uddeborg.se>\n"
+"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
"Language: sv\n"
"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=iso-8859-1\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"
#: src/buf.c:79
msgid "Allocation of buffer to print string failed"
-msgstr ""
+msgstr "Allokeringen av buffert för utskriftssträng misslyckades"
#: src/buf.c:107
msgid "Allocation of buffer for line directive failed"
-msgstr ""
+msgstr "Allokeringen av buffert för raddirektiv misslyckades"
#: src/buf.c:177
msgid "Allocation of buffer for m4 def failed"
-msgstr ""
+msgstr "Allokeringen av buffert för m4-def misslyckades"
#: src/buf.c:198
msgid "Allocation of buffer for m4 undef failed"
-msgstr ""
+msgstr "Allokering av buffert för m4-undef misslyckades"
#: src/dfa.c:59
#, c-format
msgid "State #%d is non-accepting -\n"
-msgstr "Tillstånd %d är icke-accepterande -\n"
+msgstr "Tillstånd %d är icke-accepterande -\n"
#: src/dfa.c:119
msgid "dangerous trailing context"
-msgstr "farligt efterföljande sammanhang"
+msgstr "farlig efterföljande kontext"
#: src/dfa.c:159
#, c-format
msgid " associated rule line numbers:"
-msgstr " radnummer för associerad regel:"
+msgstr " radnummer för associerad regel:"
#: src/dfa.c:193
#, c-format
msgid " out-transitions: "
-msgstr " utövergångar: "
+msgstr " utövergångar: "
#: src/dfa.c:201
#, c-format
@@ -58,7 +78,7 @@ msgid ""
" jam-transitions: EOF "
msgstr ""
"\n"
-" stoppövergångar: filslut "
+" stoppövergångar: filslut "
#: src/dfa.c:331
msgid "consistency check failed in epsclosure()"
@@ -76,26 +96,26 @@ msgstr ""
"DFA-utskrift:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
-msgstr "kunde inte skapa ett unikt buffertsluttillstånd"
+msgstr "kunde inte skapa ett unikt buffertsluttillstånd"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
-msgstr "tillstånd %d:\n"
+msgstr "tillstånd %d:\n"
-# Det här är ju helt sjukt. Har buggrapporterat detta att det bör
-# ersättas med %s
-#: src/dfa.c:773
+# Det här är ju helt sjukt. Har buggrapporterat detta att det bör
+# ersättas med %s
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "Kunde inte skriva yynxt_tbl[][]"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
-msgstr "otillåtet övergångstecken funnet i sympartition()"
+msgstr "otillåtet övergångstecken funnet i sympartition()"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -107,29 +127,29 @@ msgstr ""
"Ekvivalensklasser:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
-msgstr "tillstånd %d accepterar: [%d]\n"
+msgstr "tillstånd %d accepterar: [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
-msgstr "tillstånd %d accepterar: "
+msgstr "tillstånd %d accepterar: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "Kunde inte skriva yyacclist_tbl"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "Kunde inte skriva yyacc_tbl"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "Kunde inte skriva ecstbl"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -139,402 +159,406 @@ msgstr ""
"\n"
"Metaekvivalensklasser:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "Kunde inte skriva yymeta_tbl"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "Kunde inte skriva yybase_tbl"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "Kunde inte skriva yydef_tbl"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "Kunde inte skriva yynxt_tbl"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "Kunde inte skriva yychk_tbl"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "Kunde inte skriva ftbl"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "Kunde inte skriva ssltbl"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "Kunde inte skriva eoltbl"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "Kunde inte skriva yynultrans_tbl"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "regeln kan inte matchas"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
-msgstr "flaggan -s angiven men standardregeln kan följas"
+msgstr "flaggan -s angiven men standardregeln kan följas"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
-msgstr "-+ kan inte användas tillsammans med flaggan -l"
+msgstr "-+ kan inte användas tillsammans med flaggan -l"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
-msgstr "-f eller -F kan inte användas tillsammans med flaggan -l"
+msgstr "-f eller -F kan inte användas tillsammans med flaggan -l"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr ""
-"--reentrant eller --bison-bridge kan inte användas tillsammans med flaggan -l"
+"--reentrant eller --bison-bridge kan inte användas tillsammans med flaggan -l"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
-msgstr "-Cf/-CF och -Cm kan inte användas tillsammans"
+msgstr "-Cf/-CF och -Cm kan inte användas tillsammans"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
-msgstr "-Cf/-CF och -I kan inte användas tillsammans"
+msgstr "-Cf/-CF och -I kan inte användas tillsammans"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
-msgstr "-Cf/-CF kan inte användas i lex-kompatibilitetsläge"
+msgstr "-Cf/-CF kan inte användas i lex-kompatibilitetsläge"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
-msgstr "-Cf och -CF är ömsesidigt uteslutande"
+msgstr "-Cf och -CF är ömsesidigt uteslutande"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
-msgstr "-+ kan inte användas tillsammans med flaggan -CF"
+msgstr "-+ kan inte användas tillsammans med flaggan -CF"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
-msgstr "%array kan inte användas tillsammans med flaggan -+"
+msgstr "%array kan inte användas tillsammans med flaggan -+"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
-msgstr "Flaggorna -+ och --reentrant är ömsesidigt uteslutande."
+msgstr "Flaggorna -+ och --reentrant är ömsesidigt uteslutande."
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
-msgstr "bisonbrygga stöds inte för C++-inläsaren."
+msgstr "bisonbrygga stöds inte för C++-inläsaren."
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "kunde inte skapa %s"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "kunde inte skriva tabellhuvud"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
-msgstr "kan inte öppna mallfilen %s"
+msgstr "kan inte öppna mallfilen %s"
-#: src/main.c:480
-msgid "allocation of macro definition failed"
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
msgstr ""
-#: src/main.c:527
+#: src/main.c:474
+msgid "allocation of macro definition failed"
+msgstr "allokering av makrodefinitioner misslyckades"
+
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
-msgstr "indatafel vid läsande av mallfilen %s"
+msgstr "indatafel vid läsande av mallfilen %s"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
-msgstr "fel vid stängande av mallfilen %s"
+msgstr "fel vid stängande av mallfilen %s"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "fel vid skapande av huvudfilen %s"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "fel vid skrivande av utfilen %s"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
-msgstr "fel vid stängande av utfilen %s"
+msgstr "fel vid stängande av utfilen %s"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "fel vid borttagning av utfilen %s"
-# "Back up" i det här sammanhanget handlar om att flexmaskinen backar.
-#: src/main.c:738
+# "Back up" i det här sammanhanget handlar om att flexmaskinen backar.
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "Backar inte.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
-msgstr "%d säkerhetskopierande (icke-accepterande) tillstånd.\n"
+msgstr "%d backar (icke-accepterande) tillstånd.\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
-msgstr "Komprimerade tabeller säkerhetskopierar alltid.\n"
+msgstr "Komprimerade tabeller backar alltid.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
-msgstr "fel när säkerhetskopian %s skulle skrivas"
+msgstr "fel när backningsfilen %s skrevs"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
-msgstr "fel när säkerhetskopian %s skulle stängas"
+msgstr "fel när backningsfilen %s stängdes"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
-msgstr "Statistik över användning av %s version %s:\n"
+msgstr "Statistik över användning av %s version %s:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
-msgstr " inläsarflaggor: -"
+msgstr " inläsarflaggor: -"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
-msgstr " %d/%d NFA-tillstånd\n"
+msgstr " %d/%d NFA-tillstånd\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
-msgstr " %d/%d DFA-tillstånd (%d ord)\n"
+msgstr " %d/%d DFA-tillstånd (%d ord)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d regler\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
-msgstr " Inget säkerhetskopierande\n"
+msgstr " Inget backande\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
-msgstr " %d (icke-accepterande) tillstånd för säkerhetskopiering\n"
+msgstr " %d backande (icke-accepterande) tillstånd\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
-msgstr " Komprimerade tabeller säkerhetskopierar alltid\n"
+msgstr " Komprimerade tabeller backar alltid\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
-msgstr " Början-av-rad-mönster använda\n"
+msgstr " Början-av-rad-mönster använda\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d startvillkor\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
-msgstr " %d epsilontillstånd, %d dubbla epsilontillstånd\n"
+msgstr " %d epsilontillstånd, %d dubbla epsilontillstånd\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " inga teckenklasser\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
-msgstr " %d/%d teckenklasser behövde %d/%d ord för lagring, %d återanvända\n"
+msgstr " %d/%d teckenklasser behövde %d/%d ord för lagring, %d återanvända\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
-msgstr " %d par med tillstånd/nästa-tillstånd skapade\n"
+msgstr " %d par med tillstånd/nästa-tillstånd skapade\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
-msgstr " %d/%d unika/duplicerade övergångar\n"
+msgstr " %d/%d unika/duplicerade övergångar\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d tabellposter\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d basstandardposter skapade\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
-msgstr " %d/%d (max %d) poster för nästa kontroll skapade\n"
+msgstr " %d/%d (max %d) poster för nästa kontroll skapade\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
-msgstr " %d/%d (max %d) mallposter för nästa kontroll skapade\n"
+msgstr " %d/%d (max %d) mallposter för nästa kontroll skapade\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d tomma tabellposter\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d prototyper skapade\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
-msgstr " %d mallar skapade, %d användningar\n"
+msgstr " %d mallar skapade, %d användningar\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d ekvivalensklasser skapade\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d metaekvivalensklasser skapade\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d sparade) hashkollisioner, %d DFA lika\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
-msgstr " %d uppsättningar med omallokeringar krävdes\n"
+msgstr " %d uppsättningar med omallokeringar krävdes\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
-msgstr " %d tabellposter krävs totalt\n"
+msgstr " %d tabellposter krävs totalt\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
-msgstr "Internt fel. flexopts är felaktiga.\n"
+msgstr "Internt fel. flexopts är felaktiga.\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
-msgstr "Prova \"%s --help\" för mer information.\n"
+msgstr "Prova \"%s --help\" för mer information.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
-msgstr "okänd flagga till -C \"%c\""
+msgstr "okänd flagga till -C \"%c\""
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "allvarligt fel vid tolkningen"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
-msgstr "kunde inte skapa filen %s med säkerhetskopieringsinformation"
+msgstr "kunde inte skapa filen %s med backningsinformation"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr ""
-"flaggan -l för beteende som AT&T:s lex medför en väsentlig prestandaförlust\n"
+"flaggan -l för beteende som AT&T:s lex medför en väsentlig prestandaförlust\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr " och kan vara den egentliga orsaken till andra rapporter om detta\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
"newline characters\n"
msgstr ""
-"%%option yylineno medför en prestandaförlust ENDAST på regler som kan matcha "
+"%%option yylineno medför en prestandaförlust ENDAST på regler som kan matcha "
"nyradstecken\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
-msgstr "-I (interaktiv) medför en mindre prestandaförlust\n"
+msgstr "-I (interaktiv) medför en mindre prestandaförlust\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
-msgstr "yymore() medför en mindre prestandaförlust\n"
+msgstr "yymore() medför en mindre prestandaförlust\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
-msgstr "REJECT medför en väsentlig prestandaförlust\n"
+msgstr "REJECT medför en väsentlig prestandaförlust\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr ""
-"Regler för varierbar efterföljande sammanhang medför en väsentlig "
-"prestandaförlust\n"
+"Regler för varierbar efterföljande kontext medför en väsentlig "
+"prestandaförlust\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
-msgstr "REJECT kan inte användas tillsammans med -f eller -F"
+msgstr "REJECT kan inte användas tillsammans med -f eller -F"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
-msgstr "%option yylineno kan inte användas tillsammans med REJECT"
+msgstr "%option yylineno kan inte användas tillsammans med REJECT"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr ""
-"regler för varierbar efterföljande kontext kan inte användas\n"
+"regler för varierbar efterföljande kontext kan inte användas\n"
"tillsammans med -f eller -F"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
-msgstr "%option yyclass är bara meningsfull för C++-inläsare"
+msgstr "%option yyclass är bara meningsfull för C++-inläsare"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
-msgstr "Användning: %s [FLAGGOR] [FIL]...\n"
+msgstr "Användning: %s [FLAGGOR] [FIL]...\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -589,8 +613,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -601,56 +623,56 @@ msgid ""
" -h, --help produce this help message\n"
" -V, --version report %s version\n"
msgstr ""
-"Genererar program som utför mönstermatchning på text.\n"
+"Genererar program som utför mönstermatchning på text.\n"
"\n"
"Tabellkomprimering:\n"
-" -Ca, --align bättre minnesjustering till priset av större tabeller\n"
+" -Ca, --align bättre minnesjustering till priset av större tabeller\n"
" -Ce, --ecs konstruera ekvivalensklasser\n"
-" -Cf komprimera inte tabeller; använd -f-representation\n"
-" -CF komprimera inte tabeller; använd -F-representation\n"
+" -Cf komprimera inte tabeller; använd -f-representation\n"
+" -CF komprimera inte tabeller; använd -F-representation\n"
" -Cm, --meta-ecs konstruera metaekvivalensklasser\n"
-" -Cr, --read använd read() istället för stdio för inläsarindata\n"
-" -f, --full generera snabb, stor inläsare. Samma som -Cfr\n"
-" -F, --fast använd alternativ tabellrepresentation. Samma som -CFr\n"
+" -Cr, --read använd read() istället för stdio för inläsarindata\n"
+" -f, --full generera snabb, stor inläsare. Samma som -Cfr\n"
+" -F, --fast använd alternativ tabellrepresentation. Samma som -CFr\n"
" -Cem standardkomprimering (samma som --ecs --meta-ecs)\n"
"\n"
-"Felsökning:\n"
-" -d, --debug aktivera felsökningsläge i inläsare\n"
-" -b, --backup skriv säkerhetskopieringsinformation till %s\n"
+"Felsökning:\n"
+" -d, --debug aktivera felsökningsläge i inläsare\n"
+" -b, --backup skriv backningsinformation till %s\n"
" -p, --perf-report skriv prestandarapport till standard fel\n"
-" -s, --nodefault undertryck standardregel att använda \"ECHO\" på\n"
+" -s, --nodefault undertryck standardregel att använda \"ECHO\" på\n"
" omatchad text\n"
-" -T, --trace %s ska köra i spårningsläge\n"
+" -T, --trace %s ska köra i spårningsläge\n"
" -w, --nowarn generera inte varningar\n"
-" -v, --verbose skriv sammanfattning av inläsarstatistik till\n"
+" -v, --verbose skriv sammanfattning av inläsarstatistik till\n"
" standard ut\n"
"\n"
"Filer:\n"
-" -o, --outfile=FIL ange namn på utfil\n"
+" -o, --outfile=FIL ange namn på utfil\n"
" -S, --skel=FIL ange mallfil\n"
-" -t, --stdout skriv inläsare på standard ut istället för %s\n"
-" --yyclass=NAMN namn på C++-klass\n"
-" --header-file=FIL skapa en C-huvudfil förutom inläsaren\n"
+" -t, --stdout skriv inläsare på standard ut istället för %s\n"
+" --yyclass=NAMN namn på C++-klass\n"
+" --header-file=FIL skapa en C-huvudfil förutom inläsaren\n"
" --tables-file[=FIL] skriv tabeller till FIL\n"
"\n"
-"Beteende för inläsare:\n"
-" -7, --7bit generera 7-bitarsinläsare\n"
-" -8, --8bit generera 8-bitarsinläsare\n"
-" -B, --batch generera batchinläsare (motsats till -I)\n"
-" -i, --case-insensitive ignorera skiftläge i mönster\n"
+"Beteende för inläsare:\n"
+" -7, --7bit generera 7-bitarsinläsare\n"
+" -8, --8bit generera 8-bitarsinläsare\n"
+" -B, --batch generera batchinläsare (motsats till -I)\n"
+" -i, --case-insensitive ignorera skiftläge i mönster\n"
" -l, --lex-compat maximal kompatibilitet med ursprungliga lex\n"
" -X, --posix-compat maximal kompatibilitet med POSIX lex\n"
-" -I, --interactive generera interaktiv inläsare (motsats till -B)\n"
-" --yylineno spåra radantal i yylineno\n"
+" -I, --interactive generera interaktiv inläsare (motsats till -B)\n"
+" --yylineno spåra radantal i yylineno\n"
"\n"
"Genererad kod:\n"
-" -+, --c++ generera C++-inläsarklass\n"
-" -Dmacro[=defn] definiera makrodefinition (standardefn är \"1\")\n"
-" -L, --noline undertryck #line-direktiv i inläsaren\n"
-" -P, --prefix=STRÄNG använd STRÄNG som prefix istället för \"yy\"\n"
-" -R, --reentrant generera en återanropbar C-inläsare\n"
-" --bison-bridge inläsare för ren bisontolk.\n"
-" --bison-locations inkludera stöd för yylloc.\n"
+" -+, --c++ generera C++-inläsarklass\n"
+" -Dmacro[=defn] definiera makrodefinition (standardefn är \"1\")\n"
+" -L, --noline undertryck #line-direktiv i inläsaren\n"
+" -P, --prefix=STRÄNG använd STRÄNG som prefix istället för \"yy\"\n"
+" -R, --reentrant generera en återanropbar C-inläsare\n"
+" --bison-bridge inläsare för ren bisontolk.\n"
+" --bison-locations inkludera stöd för yylloc.\n"
" --stdinit initiera yyin/yyout till standard in/ut\n"
" --noansi-definitions funktionsdefinitioner i gammal stil\n"
" --noansi-prototypes tom parameterlista i prototyper\n"
@@ -658,54 +680,54 @@ msgstr ""
" --noFUNKTION generera inte en speciell FUNKTION\n"
"\n"
"Diverse:\n"
-" -c POSIX-flagga som inte gör något\n"
-" -n POSIX-flagga som inte gör något\n"
+" -c POSIX-flagga som inte gör något\n"
+" -n POSIX-flagga som inte gör något\n"
" -?\n"
-" -h, --help visa detta hjälpmeddelande\n"
-" -V, --version visa versionsinformation för %s\n"
+" -h, --help visa detta hjälpmeddelande\n"
+" -V, --version visa versionsinformation för %s\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
-msgstr ""
+msgstr "allokering av sko_stack misslyckades"
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
-msgstr "namnet \"%s\" är löjligt långt"
+msgstr "namnet \"%s\" är löjligt långt"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "minnesallokeringen misslyckades i allocate_array()"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
-msgstr "otillåtet tecken \"%s\" funnet i check_char()"
+msgstr "otillåtet tecken \"%s\" funnet i check_char()"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
-msgstr "inläsaren kräver flaggan -8 för att kunna använda tecknet %s"
+msgstr "inläsaren kräver flaggan -8 för att kunna använda tecknet %s"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "minnesallokeringen misslyckades i allocate_array()"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: allvarligt internt fel, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
-msgstr "försök att öka arraystorlek misslyckades"
+msgstr "försök att öka arraystorlek misslyckades"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
-msgstr "otillåten rad i mallfilen"
+msgstr "otillåten rad i mallfilen"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "minnesallokeringen misslyckades i yy_flex_xmalloc()"
@@ -718,17 +740,17 @@ msgid ""
msgstr ""
"\n"
"\n"
-"********** början av utskrift av nfa med starttillstånd %d\n"
+"********** början av utskrift av nfa med starttillstånd %d\n"
#: src/nfa.c:111
#, c-format
msgid "state # %4d\t"
-msgstr "tillstånd %4d\t"
+msgstr "tillstånd %4d\t"
#: src/nfa.c:126
#, c-format
msgid "********** end of dump\n"
-msgstr "********** slut på utskrift\n"
+msgstr "********** slut på utskrift\n"
#: src/nfa.c:169
msgid "empty machine in dupmachine()"
@@ -737,172 +759,169 @@ msgstr "tom maskin i dupmachine()"
#: src/nfa.c:234
#, c-format
msgid "Variable trailing context rule at line %d\n"
-msgstr "Regel för varierbar efterföljande kontext på rad %d\n"
+msgstr "Regel för varierbar efterföljande kontext på rad %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
-msgstr "otillåten tillståndstyp i mark_beginning_as_normal()"
+msgstr "otillåten tillståndstyp i mark_beginning_as_normal()"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
-msgstr "indatareglerna är för komplicerade (>= %d NFA-tillstånd)"
+msgstr "indatareglerna är för komplicerade (>= %d NFA-tillstånd)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
-msgstr "fann för många övergångar i mkxtion()"
+msgstr "fann för många övergångar i mkxtion()"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
-msgstr "för många regler (> %d)!"
+msgstr "för många regler (> %d)!"
#: src/parse.y:159
msgid "unknown error processing section 1"
-msgstr "okänt fel vid tolkning av avsnitt 1"
+msgstr "okänt fel vid tolkning av avsnitt 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "felaktig lista med startvillkor"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
-msgstr "okänd regel"
+msgstr "okänd regel"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
-msgstr "efterföljande kontext används två gånger"
+msgstr "efterföljande kontext används två gånger"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
-msgstr "felaktiga iterationsvärden"
+msgstr "felaktiga iterationsvärden"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
-msgstr "iterationsvärde måste vara positivt"
+msgstr "iterationsvärde måste vara positivt"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr ""
-"teckenintervallet [%c-%c] är tvetydigt i en skiftlägesokänslig inläsare"
+"teckenintervallet [%c-%c] är tvetydigt i en skiftlägesokänslig inläsare"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "negativt intervall i teckenklass"
-#: src/parse.y:916
-#, fuzzy
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
-msgstr ""
-"teckenintervallet [%c-%c] är tvetydigt i en skiftlägesokänslig inläsare"
+msgstr "[:^lower:] är tvetydigt i en skiftlägesokänslig inläsare"
-#: src/parse.y:922
-#, fuzzy
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
-msgstr ""
-"teckenintervallet [%c-%c] är tvetydigt i en skiftlägesokänslig inläsare"
+msgstr "[:^upper:] är tvetydigt i en skiftlägesokänslig inläsare"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
-msgstr "För lång indatarad\n"
+msgstr "För lång indatarad\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "felaktigt \"%top\"-direktiv"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
-msgstr "okänt \"%\"-direktiv"
+msgstr "okänt \"%\"-direktiv"
-#: src/scan.l:192
-#, fuzzy
+#: src/scan.l:214
msgid "Definition name too long\n"
-msgstr "För lång indatarad\n"
+msgstr "För långt definitionsnamn\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "Ensamt \"{\""
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
-msgstr ""
+msgstr "Definitionsvärdet för {%s} är för långt\n"
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
-msgstr "ofullständig namndefinition"
+msgstr "ofullständig namndefinition"
-#: src/scan.l:444
-#, fuzzy
+#: src/scan.l:467
msgid "Option line too long\n"
-msgstr "För lång indatarad\n"
+msgstr "För lång alternativrad\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
-msgstr "okänd %%option: %s"
+msgstr "okänd %%option: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
-msgstr "otillåten teckenklass"
+msgstr "otillåten teckenklass"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "odefinierad definition {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
-msgstr "otillåtet <startvillkor>: %s"
+msgstr "otillåtet <startvillkor>: %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "citationstecken saknas"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
-msgstr "otillåtet uttryck för teckenklass: %s"
+msgstr "otillåtet uttryck för teckenklass: %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
-msgstr "otillåtet tecken inom {}"
+msgstr "otillåtet tecken inom {}"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "} saknas"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
-msgstr "filslut påträffat inuti en handling"
+msgstr "filslut påträffat inuti en handling"
-#: src/scan.l:951
-#, fuzzy
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
-msgstr "filslut påträffat inuti en handling"
+msgstr "filslut påträffat inuti ett mönster"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
-msgstr "otillåtet tecken: %s"
+msgstr "otillåtet tecken: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
-msgstr "kan inte öppna %s"
+msgstr "kan inte öppna %s"
#: src/scanopt.c:259
#, c-format
msgid "Usage: %s [OPTIONS]...\n"
-msgstr "Användning: %s [FLAGGOR]...\n"
+msgstr "Användning: %s [FLAGGOR]...\n"
#: src/scanopt.c:524
#, c-format
@@ -912,204 +931,49 @@ msgstr "flaggan \"%s\" tar inget argument\n"
#: src/scanopt.c:529
#, c-format
msgid "option `%s' requires an argument\n"
-msgstr "flaggan \"%s\" kräver ett argument\n"
+msgstr "flaggan \"%s\" kräver ett argument\n"
#: src/scanopt.c:533
#, c-format
msgid "option `%s' is ambiguous\n"
-msgstr "flaggan \"%s\" är tvetydig\n"
+msgstr "flaggan \"%s\" är tvetydig\n"
#: src/scanopt.c:537
#, c-format
msgid "Unrecognized option `%s'\n"
-msgstr "Okänd flagga \"%s\"\n"
+msgstr "Okänd flagga \"%s\"\n"
#: src/scanopt.c:541
#, c-format
msgid "Unknown error=(%d)\n"
-msgstr "Okänt fel=(%d)\n"
+msgstr "Okänt fel=(%d)\n"
#: src/sym.c:92
msgid "symbol table memory allocation failed"
-msgstr "minnesallokering för symboltabell misslyckades"
+msgstr "minnesallokering för symboltabell misslyckades"
#: src/sym.c:183
msgid "name defined twice"
-msgstr "namnet definierat två gånger"
+msgstr "namnet definierat två gånger"
#: src/sym.c:231
#, c-format
msgid "start condition %s declared twice"
-msgstr "startvillkoret %s deklarerat två gånger"
+msgstr "startvillkoret %s deklarerat två gånger"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
-msgstr "för tidigt filslut"
+msgstr "för tidigt filslut"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Slutmarkering\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
-msgstr "*Något märkligt* - tecken: %d värde: %d\n"
-
-#~ msgid "consistency check failed in symfollowset"
-#~ msgstr "konsekvenskontrollen misslyckades i symfollowset"
+msgstr "*Något märkligt* - tecken: %d värde: %d\n"
#~ msgid "dynamic memory failure in copy_string()"
#~ msgstr "dynamiskt minnesfel i copy_string()"
-
-#~ msgid "Can't specify header option if writing to stdout."
-#~ msgstr "Kan inte ange huvudflagga då utskrift sker till standard ut."
-
-#~ msgid "unknown -R option '%c'"
-#~ msgstr "okänd flagga till -R \"%c\""
-
-#~ msgid "Could not write %s"
-#~ msgstr "Kunde inte skriva %s"
-
-#~ msgid "-Cf/-CF and %option yylineno are incompatible"
-#~ msgstr "-Cf/-CF och %option yylineno kan inte användas tillsammans"
-
-#~ msgid ""
-#~ "For usage, try\n"
-#~ "\t%s --help\n"
-#~ msgstr ""
-#~ "Prova\n"
-#~ "\t%s --help\n"
-#~ "för användning\n"
-
-#~ msgid "-P flag must be given separately"
-#~ msgstr "flaggan -P måste anges separat"
-
-#~ msgid "-o flag must be given separately"
-#~ msgstr "flaggan -o måste anges separat"
-
-#~ msgid "-S flag must be given separately"
-#~ msgstr "flaggan -S måste anges separat"
-
-#~ msgid "-C flag must be given separately"
-#~ msgstr "flaggan -C måste anges separat"
-
-#~ msgid ""
-#~ "%s [-bcdfhilnpstvwBFILTV78+? -C[aefFmr] -ooutput -Pprefix -Sskeleton]\n"
-#~ msgstr ""
-#~ "%s [-bcdfhilnpstvwBFILTV78+? -C[aefFmr] -outfil -Pprefix -Smallfil]\n"
-
-#~ msgid "\t[--help --version] [file ...]\n"
-#~ msgstr "\t[--help --version] [fil ...]\n"
-
-#~ msgid "\t-b generate backing-up information to %s\n"
-#~ msgstr "\t-b skriv information om backande till %s\n"
-
-#~ msgid "\t-c do-nothing POSIX option\n"
-#~ msgstr "\t-c POSIX-flaggan gör ingenting\n"
-
-#~ msgid "\t-d turn on debug mode in generated scanner\n"
-#~ msgstr "\t-d ställ den skapade inläsaren i felsökningsläge\n"
-
-#~ msgid "\t-f generate fast, large scanner\n"
-#~ msgstr "\t-f skapa en snabb, stor inläsare\n"
-
-#~ msgid "\t-h produce this help message\n"
-#~ msgstr "\t-h visa denna hjälptext\n"
-
-#~ msgid "\t-i generate case-insensitive scanner\n"
-#~ msgstr "\t-i skapa en skiftlägesokänslig inläsare\n"
-
-#~ msgid "\t-l maximal compatibility with original lex\n"
-#~ msgstr "\t-l maximal kompatibilitet med ursprungliga lex\n"
-
-#~ msgid "\t-n do-nothing POSIX option\n"
-#~ msgstr "\t-n POSIX-flaggan gör ingenting\n"
-
-#~ msgid "\t-p generate performance report to stderr\n"
-#~ msgstr "\t-p skicka rapport om utförandet till standard fel\n"
-
-#~ msgid "\t-s suppress default rule to ECHO unmatched text\n"
-#~ msgstr ""
-#~ "\t-s undertryck standardregeln att skriva ut text som ej kunde matchas\n"
-
-#~ msgid "\t-t write generated scanner on stdout instead of %s\n"
-#~ msgstr ""
-#~ "\t-t skriv den skapade inläsaren till standard ut i stället för %s\n"
-
-#~ msgid "\t-v write summary of scanner statistics to f\n"
-#~ msgstr "\t-v skriv en sammanställning av inläsarstatistik till f\n"
-
-#~ msgid "\t-w do not generate warnings\n"
-#~ msgstr "\t-w visa inga varningar\n"
-
-#~ msgid "\t-B generate batch scanner (opposite of -I)\n"
-#~ msgstr "\t-B skapa en icke interaktiv inläsare (motsatsen till -I)\n"
-
-#~ msgid "\t-F use alternative fast scanner representation\n"
-#~ msgstr "\t-F använd en alternativ snabb inläsarrepresentation\n"
-
-#~ msgid "\t-I generate interactive scanner (opposite of -B)\n"
-#~ msgstr "\t-I skapa en interaktiv inläsare (motsatsen till -B)\n"
-
-#~ msgid "\t-L suppress #line directives in scanner\n"
-#~ msgstr "\t-L undertryck #line-direktiv i inläsaren\n"
-
-#~ msgid "\t-T %s should run in trace mode\n"
-#~ msgstr "\t-T %s ska köras i spårningsläge\n"
-
-#~ msgid "\t-V report %s version\n"
-#~ msgstr "\t-V visa %s version\n"
-
-#~ msgid "\t-7 generate 7-bit scanner\n"
-#~ msgstr "\t-7 skapa en 7-bitars inläsare\n"
-
-#~ msgid "\t-8 generate 8-bit scanner\n"
-#~ msgstr "\t-8 skapa en 8-bitars inläsare\n"
-
-#~ msgid "\t-+ generate C++ scanner class\n"
-#~ msgstr "\t-+ skapa en C++-inläsarklass\n"
-
-#~ msgid "\t-? produce this help message\n"
-#~ msgstr "\t-? visa denna hjälptext\n"
-
-#~ msgid "\t-C specify degree of table compression (default is -Cem):\n"
-#~ msgstr "\t-C ange graden av tabellkompression (standard -Cem):\n"
-
-#~ msgid "\t\t-Ca trade off larger tables for better memory alignment\n"
-#~ msgstr ""
-#~ "\t\t-Ca byt ut stora tabeller för att förbättra minneshanteringen\n"
-
-#~ msgid "\t\t-Ce construct equivalence classes\n"
-#~ msgstr "\t\t-Ce skapa ekvivalensklasser\n"
-
-#~ msgid "\t\t-Cf do not compress scanner tables; use -f representation\n"
-#~ msgstr ""
-#~ "\t\t-Cf komprimera inte inläsartabellerna; använd representationen -f\n"
-
-#~ msgid "\t\t-CF do not compress scanner tables; use -F representation\n"
-#~ msgstr ""
-#~ "\t\t-CF komprimera inte inläsartabellerna; använd representationen -F\n"
-
-#~ msgid "\t\t-Cm construct meta-equivalence classes\n"
-#~ msgstr "\t\t-Cm skapa meta-ekvivalensklasser\n"
-
-#~ msgid "\t\t-Cr use read() instead of stdio for scanner input\n"
-#~ msgstr ""
-#~ "\t\t-Cr använd read() i stället för standard in som indata till "
-#~ "inläsaren\n"
-
-#~ msgid "\t-o specify output filename\n"
-#~ msgstr "\t-o ange namnet på utfilen\n"
-
-#~ msgid "\t-P specify scanner prefix other than \"yy\"\n"
-#~ msgstr "\t-P ange annat scannerprefix än \"yy\"\n"
-
-#~ msgid "\t-S specify skeleton file\n"
-#~ msgstr "\t-S ange mallfil\n"
-
-#~ msgid "\t--help produce this help message\n"
-#~ msgstr "\t--help visa denna hjälptext\n"
-
-#~ msgid "\t--version report %s version\n"
-#~ msgstr "\t--version visa %s version\n"
diff --git a/po/tr.po b/po/tr.po
index e62255f..67296bb 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -1,12 +1,27 @@
-# Translation of 'flex' messages to Turkish
-# Copyright (C) 2004 The Flex Project
-# Deniz Akkus Kanca <deniz@arayan.com>, 2004.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex 2.5.31\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 11:00-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Translation of 'flex' messages to Turkish
+#~ # Copyright (C) 2004 The Flex Project
+#~ # Deniz Akkus Kanca <deniz@arayan.com>, 2004.
+#~ #
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex 2.5.31\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2004-05-16 18:36+0300\n"
"Last-Translator: Deniz Akkus Kanca <deniz@arayan.com>\n"
"Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
@@ -14,6 +29,7 @@ msgstr ""
"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"
"X-Generator: KBabel 1.0.2\n"
#: src/buf.c:79
@@ -76,24 +92,24 @@ msgstr ""
"DFA Dökümü:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "tekil tampon sonu durumu yaratılamadı"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "durum # %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "yynxt_tbl[][] yazılamadı"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "sympartition() içinde hatalı geçiş karakterleri saptandı"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -105,29 +121,29 @@ msgstr ""
"Denklik Sınıfları:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "durum # %d kabul eder: [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "durum # %d kabul eder: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "yyacclist_tbl yazılamadı"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "yyacc_tbl yazılamadı"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "ecstbl yazılamadı"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -137,346 +153,350 @@ msgstr ""
"\n"
"Ara-Denklik Sınıfları:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "yymeta_tbl yazılamadı"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "yybase_tbl yazılamadı"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "yydef_tbl yazılamadı"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "yynxt_tbl yazılamadı"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "yychk_tbl yazılamadı"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "ftbl yazılamadı"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "ssltbl yazılamadı"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "eoltbl yazılamadı"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "yynultrans_tbl yazılamadı"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "kural eÅŸlenemedi"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr "-s seçeneği verilmiş fakat öntanımlı kural eşlenebiliyor"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "-+'yi -l seçeneği ile kullanma"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "-f veya -F'yi -l seçeneği ile kullanma"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr "-l seçeneği ile --reentrant veya --bison-bridge bir arada kullanılamaz"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "-Cf/-CF ve -Cm birlikte anlam ifade etmiyor"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "-Cf/-CF ve -I uyumsuz"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "-Cf/-CF lex-uyumluluk kipi ile uyumsuz"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "-Cf ve -CF bir arada kullanılamaz"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "-+, -CF seçeneği ile kullanılamaz"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "%array, -+ seçeneği ile uyumsuz"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "-+ ve --reentrant seçenekleri bir arada kullanılamaz"
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "bison bridge, C++ tarayıcısı için desteklenmiyor."
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "%s oluşturulamadı"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "tablo başlığı yazılamadı"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "iskelet dosyası %s açılamadı"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr ""
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "iskelet dosyası %s okunurken girdi hatası"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "iskelet dosyası %s kapatılırken hata"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "başlık dosyası %s oluşturulurken hata"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "çıktı dosyası %s yazılırken hata"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "çıktı dosyası %s kapatılırken hata"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "çıktı dosyası %s silinirken hata"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "Yedekleme yok.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d yedeklenen (kabul-etmeyen) durumlar.\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Sıkıştırılmış tablolar daima yedeklidir.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "yedek dosyası %s yazılırken hata"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "yedek dosyası %s kapatılırken hata"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "%s sürüm %s kullanım istatistikleri:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " tarayıcı seçenekleri: -"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d NFA durumu\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d DFA durumu (%d sözcük)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d kural\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " Yedekleme yok\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d yedeklenmiÅŸ (kabul-edilmeyen) durum\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Sıkıştırılmış tablolar daima yedeklenir\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " Başlangıç-satırı kalıpları kullanıldı\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d başlangıç şartları\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d epsilon durumu, %d çift epsilon durumu\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " karakter sınıfı yok\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr ""
" %d/%d ihtiyaç duyulan karakter sınıfı %d/%d depolanan sözcük, %d yeniden "
"kullanıldı\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d durumu/sonrakidurum çifti yaratıldı\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d tekil/çift geçişler\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d tablo girdileri\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d temel-tanım girdileri yaratıldı\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (en yüksek %d) nxt-chk girdileri yaratıldı\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " %d/%d (en yüksek %d) şablon nxt-chk girdileri yaratıldı\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d boÅŸ tablo girdileri\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d prototip yaratıldı\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d şablon yaratıldı, %d kullanıldı\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d denklik sınıfı yaratıldı\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d ara-denklik sınıfı yaratıldı\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d kaydedildi) saçılma çarpışması, %d DFA denk\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " %d tekrar ayırım kümesine ihtiyaç var\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " %d toplam tablo girdisine ihtiyaç var\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "İç hata. flexopt'lar bozuk.\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Daha fazla bilgi için `%s --help' yazın.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "bilinmeyen -C seçeneği '%c'"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "ölümcül ayrıştırma hatası"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "yedekleme bilgi dosyası %s oluşturulamadı"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr "-l AT&T lex uyumluluğu seçeneği önemli ölçüde yavaşlamaya yol açar\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr ""
" ve belki bildirilen başka performans kayıplarının da kaynağı olabilir\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
@@ -485,51 +505,51 @@ msgstr ""
"yylineno %%seçeneği YALNIZCA yenisatır karakterlerini de eşleyen satırlarda "
"yavaÅŸlar.\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "-I (etkileşimli) küçük ölçekli bir yavaşlamaya neden olur\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() küçük ölçekli bir yavaşlamaya neden olur\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT büyük ölçekli bir yavaşlamaya neden olur\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr ""
"Değişken izleyen bağlam kuralları, büyük ölçekli yavaşlamaya neden olur\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT, -f veya -F ile kullanılamaz"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "%option yylineno, REJECT ile birlikte kullanılamaz"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr "değişken izleme ortamı kuralları, -f veya -F ile birlikte kullanılamaz"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%option yyclass, sadece C++ tarayıcıları için anlamlıdır"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Kullanım: %s [SEÇENEKLER...] [DOSYA...]\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -584,8 +604,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -658,48 +676,48 @@ msgstr ""
" -h, --help bu yardım bilgisini gösterir\n"
" -V, --version %s sürümünü bildirir\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr ""
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "\"%s\" ismi gülünç derecede uzun"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "allocate_array() içinde bellek ayırımı başarısız"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "check_char() içinde hatalı karakter '%s' saptandı"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "tarayıcı %s karakterini kullanmak için -8 bayrağına ihtiyaç duyar"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "allocate_array() içinde bellek ayırımı başarısız"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: ölümcül iç hata, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "dizi boyutunu artırma denemesi başarısız"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "iskelet dosya içinde hatalı satır"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "yy_flex_xmalloc() içinde bellek ayırımı başarısız"
@@ -733,20 +751,20 @@ msgstr "dupmachine() içinde boş makine"
msgid "Variable trailing context rule at line %d\n"
msgstr "%d satırında değişken izleyen bağlam kuralı\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "mark_beginning_as_normal() içinde hatalı durum türü"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "girdi kuralları fazla karışık (>= %d NFA durumu)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "mkxtion() içinde çok fazla geçiş bulundu"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "çok fazla kural (> %d)!"
@@ -755,143 +773,147 @@ msgstr "çok fazla kural (> %d)!"
msgid "unknown error processing section 1"
msgstr "1. bölüm işlenirken bilinmeyen hata oluştu"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "hatalı başlangıç şart listesi"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "bilinmeyen kural"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "izleyen bağlam iki defa kullanılmış"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "hatalı yineleme değerleri"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "yineleme değeri pozitif olmalı"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr ""
"[%c-%c] karakter aralığı, büyük/küçük harf farkı gözetmeyen bir tarayıcıda\n"
"belirsiz anlamlı"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "karakter sınıflarında negatif aralık"
-#: src/parse.y:916
+#: src/parse.y:918
#, fuzzy
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr ""
"[%c-%c] karakter aralığı, büyük/küçük harf farkı gözetmeyen bir tarayıcıda\n"
"belirsiz anlamlı"
-#: src/parse.y:922
+#: src/parse.y:924
#, fuzzy
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr ""
"[%c-%c] karakter aralığı, büyük/küçük harf farkı gözetmeyen bir tarayıcıda\n"
"belirsiz anlamlı"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "Girdi satırı fazla uzun\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "hatalı `%top' yönergesi"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "'%' yönergesi bilinmiyor"
-#: src/scan.l:192
+#: src/scan.l:214
#, fuzzy
msgid "Definition name too long\n"
msgstr "Girdi satırı fazla uzun\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "'{' eÅŸleÅŸmiyor"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr ""
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "eksik isim tanımlaması"
-#: src/scan.l:444
+#: src/scan.l:467
#, fuzzy
msgid "Option line too long\n"
msgstr "Girdi satırı fazla uzun\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "geçersiz %%seçenek: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "hatalı karakter sınıfı"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "belirsiz tanım {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "hatalı <başlangıç şartı>: %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "eksik çift tırnak"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "bozuk karakter sınıfı ifadesi: %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "{}'ler içinde hatalı karakter"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "eksik }"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "bir eylem içinde EOF ile karşılaşıldı"
-#: src/scan.l:951
+#: src/scan.l:977
#, fuzzy
msgid "EOF encountered inside pattern"
msgstr "bir eylem içinde EOF ile karşılaşıldı"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "hatalı karakter: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "%s açılamıyor"
@@ -939,16 +961,16 @@ msgstr "isim iki defa tanımlandı"
msgid "start condition %s declared twice"
msgstr "başlangıç şartı %s iki defa bildirildi"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "erken EOF"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Bitiş İşaretçisi\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*Garip Bir Şey* -andaç: %d değer: %d\n"
diff --git a/po/update_linguas.sh b/po/update_linguas.sh
new file mode 100755
index 0000000..a1be4d8
--- /dev/null
+++ b/po/update_linguas.sh
@@ -0,0 +1,26 @@
+#!/bin/sh
+# shell for updating the translations before a release
+
+# Let this be executed in the po/ subdir.
+cd "$(dirname "$0")" || exit
+
+echo "Updating translations via TP"
+rsync -Lrtvz translationproject.org::tp/latest/flex/ . # || exit
+
+# Are there now PO files that are not in svn yet?
+NEWSTUFF=$(git status --porcelain *.po | grep "^??")
+
+if [ -n "${NEWSTUFF}" ]; then
+ echo "New languages found; updating LINGUAS"
+ echo "# List of available languages." >LINGUAS
+ echo $(printf '%s\n' *.po | LC_ALL=C sort | sed 's/\.po//g') >>LINGUAS
+fi
+
+echo "Regenerating POT file and remerging and recompiling PO files..."
+make update-po
+
+# Ensure that the PO files are newer than the POT.
+touch *.po
+
+# Compile PO files
+make
diff --git a/po/vi.po b/po/vi.po
index 788103e..3babd3e 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -1,16 +1,31 @@
-# Vietnamese translation for Flex.
-# Bản dịch tiếng Việt dành cho flex.
-# Copyright (C) 2014 The Flex Project (msgids)
-# Copyright (C) 2014 Free Software Foundation, Inc.
-# This file is distributed under the same license as the flex package.
-# Clytie Siddall <clytie@riverland.net.au>, 2005-2008.
-# Trần Ngá»c Quân <vnwildman@gmail.com>, 2012-2014.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex-2.5.38\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 11:01-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Vietnamese translation for Flex.
+#~ # Bản dịch tiếng Việt dành cho flex.
+#~ # Copyright (C) 2014 The Flex Project (msgids)
+#~ # Copyright (C) 2014 Free Software Foundation, Inc.
+#~ # This file is distributed under the same license as the flex package.
+#~ # Clytie Siddall <clytie@riverland.net.au>, 2005-2008.
+#~ # Trần Ngá»c Quân <vnwildman@gmail.com>, 2012-2014.
+#~ #
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex-2.5.38\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2014-02-14 08:17+0700\n"
"Last-Translator: Trần Ngá»c Quân <vnwildman@gmail.com>\n"
"Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
@@ -18,6 +33,7 @@ msgstr ""
"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=1; plural=0;\n"
"X-Generator: Poedit 1.5.5\n"
"X-Poedit-SourceCharset: utf-8\n"
@@ -82,24 +98,24 @@ msgstr ""
"Äổ DFA:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "không thể tạo trạng thái kết-thúc-bộ-đệm duy nhất"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "trạng thái# %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "Không thể ghi \"yynxt_tbl[][]\""
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "phát hiện ký tự chuyển tiếp sai trong sympartition()"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -111,29 +127,29 @@ msgstr ""
"Lá»›p tÆ°Æ¡ng Ä‘Æ°Æ¡ng:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "trạng thái # %d chấp nhận: [%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "trạng thái # %d chấp nhận: "
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "Không thể ghi \"yyacclist_tbl\""
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "Không thể ghi \"yyacc_tbl\""
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "Không thể ghi \"ecstbl\""
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -143,349 +159,353 @@ msgstr ""
"\n"
"Lá»›p tÆ°Æ¡ng-Ä‘Æ°Æ¡ng-meta:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "Không thể ghi \"yymeta_tbl\""
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "Không thể ghi \"yybase_tbl\""
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "Không thể ghi \"yydef_tbl\""
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "Không thể ghi \"yynxt_tbl\""
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "Không thể ghi \"yychk_tbl\""
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "Không thể ghi \"ftbl\""
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "Không thể ghi \"ssltbl\""
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "Không thể ghi \"eoltbl\""
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "Không thể ghi \"yynultrans_tbl\""
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "quy tắc không thể được khớp"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr "Ä‘Æ°a ra tùy chá»n \"-s\" còn quy tắc mặc định có thể được khá»›p"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "Không thể dùng ký tá»± \"-+\" vá»›i tùy chá»n \"-l\""
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "Không thể dùng cá» \"-f\" hoặc \"-F\" vá»›i tùy chá»n \"-l\""
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr ""
"Không thể dùng đối số \"--reentrant\" (Ä‘iá»u vào lại) hoặc \"--bison-bridge"
"\" (chiếc cầu bison) vá»›i tùy chá»n \"-l\""
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "Hai tùy chá»n \"-Cf/-CF\" và \"-Cm\" vá»›i nhau thì không có ý nghÄ©a"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "Hai tùy chá»n \"-Cf/-CF\" và \"-I\" không tÆ°Æ¡ng thích vá»›i nhau"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr ""
"Tùy chá»n \"-Cf/-CF\" không tÆ°Æ¡ng thích vá»›i chế Ä‘á»™ \"lex-compatibility"
"\" (tương thích với lex)"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "Hai tùy chá»n \"-Cf\" and \"-CF\" loại từ lẫn nhau"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "Không thể dùng ký tá»± \"-+\" vá»›i tùy chá»n \"-CF\""
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "\"%array\" (mảng) không tÆ°Æ¡ng thích vá»›i tùy chá»n \"-+\""
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "Hai tùy chá»n \"- +\" và \"--reentrant\" xung Ä‘á»™t vá»›i nhau."
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "bison bridge (chiếc cầu bison) không được hỗ trợ với bộ quét C++."
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "không thể tạo %s"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "không thể ghi phần đầu bảng"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "không thể mở tập tin khung sÆ°á»n %s"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr "việc phân bổ cho định nghĩa macro gặp lỗi"
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "gặp lá»—i nhập vào khi Ä‘á»c tập tin khung sÆ°á»n %s"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "gặp lá»—i khi đóng tập tin khung sÆ°á»n %s"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "gặp lỗi khi tạo tập tin phần đầu %s"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "gặp lỗi khi ghi tập tin xuất %s"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "gặp lỗi khi đóng tập tin xuất %s"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "gặp lỗi khi xoá bỠtập tin xuất %s"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "Không sao lưu.\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d đang sao lưu các trạng thái (kiểu không chấp nhận).\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Bảng đã nén lúc nào cũng sao lưu.\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "găp lỗi khi ghi tập tin sao lưu %s"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "gặp lỗi khi đóng tập tin sao lưu %s"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "%s phiên bản %s thống kê sử dụng:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " tùy chá»n bá»™ quét: —"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d trạng thái NFA\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d trạng thái DFA (%d từ)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d quy tắc\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " Không sao lưu\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d đang sao lưu các trạng thái (kiểu không chấp nhận)\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Bảng đã nén lúc nào cũng sao lưu\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " Dùng mẫu kiểu đầu dòng\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d Ä‘iá»u kiện bắt đầu\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d trạng thái épxilông (ε), %d trạng thái épxilông đôi\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " không có lớp ký tự\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr " %d/%d lớp ký tự cần %d/%d từ bộ nhớ, %d được dùng lại\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d cặp trạng_thái/trạng_thái_kế đã được tạo\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d việc chuyển tiếp duy nhất/trùng\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d mục tin bảng\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d mục tin base-def (định nghĩa cơ bản) đã được tạo\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (tối đa %d) mục tin nxt-chk (kiểm tra kế tiếp) đã được tạo\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr ""
" %d/%d (tối đa %d) mục tin biểu mẫu nxt-chk (kiểm tra kế tiếp) đã được tạo\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d mục tin bảng trống\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d proto (khai báo nguyên mẫu) đã được tạo\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d mẫu đã được tạo, %d lần dùng\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d lớp kiểu tương đương đã được tạo\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d lớp tương-đương-meta đã được tạo\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d được lưu) lần va chạm mã băm, %d DFA bằng nhau\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " cần %d tập hợp tái cấp phát\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " cần tổng %d mục tin bảng\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "Gặp lỗi nội bộ vì những flexopts sai dạng.\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Hãy thử lệnh \"%s --help\" (trợ giúp) để xem thêm thông tin.\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "không hiểu tùy chá»n \"-C\" là \"%c\""
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "gặp lá»—i phân tích nghiêm trá»ng"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "không thể tạo tập tin thông tin sao lưu %s"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr ""
"Tùy chá»n kiểu tÆ°Æ¡ng thích lex AT&T \"-l\" làm giảm hiệu suất rất nhiá»u\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr " thì có lẽ thật gây ra trÆ°á»ng hợp giảm hiệu suất khác\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
@@ -494,53 +514,53 @@ msgstr ""
"%%tùy chá»n \"yylineno\" giảm hiệu suất CHỈ vá»›i quy tắc khá»›p vá»›i ký tá»± dòng "
"má»›i\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "Tùy chá»n \"-I\" (tÆ°Æ¡ng tác) giảm hiệu suất má»™t ít\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() giảm hiệu suất một ít\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT (đẩy ra) làm suy giảm hiệu suất nghiêm trá»ng\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr "Quy tắc ngữ cảnh theo sau biến rất giảm hiệu suất\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "Không cho phép dùng REJECT (đẩy ra) vá»›i tùy chá»n \"-f\" hay \"-F\""
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr ""
"Không cho phép dùng %option (tùy chá»n) \"yylineno\" vá»›i REJECT (đẩy ra)"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr ""
"không cho phép dùng quy tắc ngữ cảnh theo sau biến vá»›i tùy chá»n \"-f\" hay "
"\"-F\""
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%option (tùy chá»n) \"yyclass\" chỉ có ý nghÄ©a vá»›i bá»™ quét C++"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Cách dùng: %s [TÙY_CHỌN] [TẬP_TIN]...\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -595,8 +615,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -679,48 +697,48 @@ msgstr ""
" -h, --help hiển thị _trợ giúp_ này\n"
" -V, --version thông báo phiên bản %s\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr "việc phân bổ cho sko_stack gặp lỗi"
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "tên \"%s\" là dài nhố nhăng"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "việc phân chia bộ nhớ bị lỗi trong allocate_array() (phân bổ mảng)"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "phát hiện ký tự sai \"%s\" trong check_char() (kiểm tra ký tự)"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "bộ quét cần thiết cỠ\"-8\" để dùng ký tự %s"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "việc phân chia bộ nhớ bị lỗi trong allocate_array() (phân bổ mảng)"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: gặp lá»—i nôi bá»™ nghiêm trá»ng, %s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "việc thử tăng kích cỡ mảng đã thất bại"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "gặp dòng sai trong tập tin khung sÆ°á»n"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "việc phân bổ bộ nhớ bị lỗi trong yy_flex_xmalloc()"
@@ -754,21 +772,21 @@ msgstr "máy trống trong dupmachine() (nhân đôi máy)"
msgid "Variable trailing context rule at line %d\n"
msgstr "Gặp quy tắc ngữ cảnh theo sau biến tại dòng %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr ""
"kiểu trạng thái sai trong mark_beginning_as_normal() (đánh dấu đầu là thÆ°á»ng)"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "các quy tắc đầu vào là quá phức tạp (≥ %d trạng thái NFA)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "gặp quá nhiá»u chuyển tiếp trong mkxtion()"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "quá nhiá»u quy tắc (> %d) !"
@@ -777,134 +795,138 @@ msgstr "quá nhiá»u quy tắc (> %d) !"
msgid "unknown error processing section 1"
msgstr "gặp lỗi không rõ khi xử lý phần 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "danh sách Ä‘iá»u kiện bắt đầu là sai"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "gặp quy tắc không được thừa nhận"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "ngữ cảnh theo sau được dùng hai lần"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "gặp giá trị lặp lại sai"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "giá trị lặp lại phải là số dương"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr ""
"phạm vi ký tá»± [%c-%c] là chÆ°a rõ ràng trong trÆ°á»ng hợp quét bá» qua chữ HOA/"
"thÆ°á»ng"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "gặp phạm vi âm trong lớp ký tự"
-#: src/parse.y:916
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr "[:^lower:] là chÆ°a rõ ràng trong trÆ°á»ng hợp quét bá» qua chữ HOA/thÆ°á»ng"
-#: src/parse.y:922
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr "[:^upper:] là chÆ°a rõ ràng trong trÆ°á»ng hợp quét bá» qua chữ HOA/thÆ°á»ng"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "dòng nhập quá dài\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "chỉ thị kiểu \"%top\" (đầu) dạng sai"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "gặp chỉ thị kiểu \"%\" không được nhận dạng"
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr "Tên định nghĩa quá dài\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "ChÆ°a khá»›p \"{\""
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr "Giá trị định nghĩa cho {%s} quá dài\n"
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "lá»i Ä‘inh nghÄ©a tên chÆ°a hoàn tất"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr "dòng tùy chá»n quá dài\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "gặp tùy chá»n %% không được nhận dạng: %s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "lớp ký tự sai"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "chưa định nghĩa định danh {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "<start condition> (điệu kiện bắt đầu) sai: %s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "thiếu dấu trích dẫn"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "biểu thức lớp ký tự sai: %s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "có ký tự sai ở trong hai dấu ngoặc móc {}"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "thiếu }"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "gặp kết thúc tập tin ở trong một hành động"
-#: src/scan.l:951
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
msgstr "gặp kết thúc tập tin ở trong mẫu"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "ký tự sai: %s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "không thể mở %s"
@@ -952,16 +974,16 @@ msgstr "tên đã được định nghĩa hai lần"
msgid "start condition %s declared twice"
msgstr "Ä‘iá»u kiện bắt đầu %s đã được khai báo hai lần"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "gặp kết thúc tập tin quá sớm"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "Dấu kết thúc\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "* Äiá»u lạ * — thẻ bài: %d giá trị: %d\n"
diff --git a/po/zh_CN.po b/po/zh_CN.po
index feac102..3f1c728 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -1,14 +1,29 @@
-# Chinese translations for flex.
-# Copyright (C) 2014 The Flex Project (msgids)
-# This file is distributed under the same license as the flex package.
-# Wang Li <charles@linux.net.cn>, 2002.
-# Wei-Lun Chao <bluebat@member.fsf.org>, 2009, 2013.
-# Mingye Wang <arthur200126@gmail.com>, 2015.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex 2.5.38\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 11:03-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Chinese translations for flex.
+#~ # Copyright (C) 2014 The Flex Project (msgids)
+#~ # This file is distributed under the same license as the flex package.
+#~ # Wang Li <charles@linux.net.cn>, 2002.
+#~ # Wei-Lun Chao <bluebat@member.fsf.org>, 2009, 2013.
+#~ # Mingye Wang <arthur200126@gmail.com>, 2015.
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex 2.5.38\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2015-08-27 16:54+0800\n"
"Last-Translator: Mingye Wang <arthur200126@gmail.com>\n"
"Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
@@ -16,6 +31,7 @@ msgstr ""
"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"
"X-Generator: Poedit 1.8.4\n"
#: src/buf.c:79
@@ -78,24 +94,24 @@ msgstr ""
"DFA 转储:\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "无法创建独立的 end-of-buffer 状æ€"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "çŠ¶æ€ # %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "无法写入 yynxt_tbl[][]"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "在 sympartition() 检测到错误的å˜æ¢å­—符"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -107,29 +123,29 @@ msgstr ""
"等价类:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "çŠ¶æ€ # %d 接å—:[%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "çŠ¶æ€ # %d 接å—:"
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "无法写入 yyacclist_tbl"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "无法写入 yyacc_tbl"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "无法写入 ecstbl"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -139,394 +155,398 @@ msgstr ""
"\n"
"元等价类:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "无法写入 yymeta_tbl"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "无法写入 yybase_tbl"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "无法写入 yydef_tbl"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "无法写入 yynxt_tbl"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "无法写入 yychk_tbl"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "无法写入 ftbl"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "无法写入 ssltbl"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "无法写入 eoltbl"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "无法写入 yynultrans_tbl"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "无法匹é…规则"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr "-s 选项已给定但是å¯ä»¥å»åˆç¼ºçœè§„则"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "无法将 -+ 与 -l 选项共åŒä½¿ç”¨"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "无法将 -f 或 -F 与 -l 选项共åŒä½¿ç”¨"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr "无法将 --reentrant 或 --bison-bridge 与 -l 选项共åŒä½¿ç”¨"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "-Cf/-CF å’Œ -Cm 共用时ä¸å…·ä»»ä½•æ„义"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "-Cf/-CF å’Œ -I 是ä¸å…¼å®¹çš„"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "-Cf/-CF 与 lex 兼容模å¼æ˜¯ä¸å…¼å®¹çš„"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "-Cf 和 -CF 是互斥的"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "无法将 -+ 与 -CF 选项共åŒä½¿ç”¨"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "%array 与 -+ 选项ä¸å…¼å®¹"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "选项 -+ 和 --reentrant 是互斥的。"
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "bison 桥接器ä¸å— C++ 扫æ程åºæ”¯æŒã€‚"
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "无法创建 %s"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "无法写入表头"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "无法打开骨架文件 %s"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr "给予å®å®šä¹‰é…é¢æ—¶å¤±è´¥"
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "读å–骨架文件 %s 时输入错误"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "关闭骨架文件 %s 出错"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "创建头文件 %s 出错"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "写入输出文件 %s 出错"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "关闭输出文件 %s 出错"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "删除输出文件 %s 出错"
# See Concept Index. fr translation is wrong for that 'archive'.
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "没有回溯。\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d 回溯 (éžæŽ¥å—) 状æ€ã€‚\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "压缩过的表格总会自动回溯。\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "写入回溯文件 %s 出错"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "关闭回溯文件 %s 出错"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "%s 版本 %s 用法统计:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " 扫æ器选项:-"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d NFA 状æ€\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d DFA çŠ¶æ€ (%d 个字è¯)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d æ¡è§„则\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " 没有回溯\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d 回溯 (éžæŽ¥å—) 状æ€\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " 压缩过的表格总会自动回溯\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " 列首å¼æ ·å·²ä½¿ç”¨\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d 起始æ¡ä»¶\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d ε状æ€ï¼Œ%d åŒå€ÎµçŠ¶æ€\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " 无字符类别\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr " %d/%d 字符类别所需 %d/%d å­—è¯çš„ä¿å­˜ä½“,%d é‡æ–°ä½¿ç”¨\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d 状æ€/下一状æ€å¯¹å·²åˆ›å»º\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d 独一/é‡å¤è½¬æ¢\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d 表格项目\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d base-def 项目已创建\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (峰值 %d) nxt-chk 项目已创建\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " %d/%d (峰值 %d) æ¨¡æ¿ nxt-chk 项目已创建\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d 清空表格项目\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d 原型已创建\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d 范本已创建,%d 使用\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d 等价类别已创建\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d åŽè®¾ç­‰ä»·ç±»åˆ«å·²åˆ›å»º\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d å·²ä¿å­˜) 哈希碰撞,%d DFAs 相等\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " éœ€è¦ %d 组é‡æ–°é…ç½®\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " æ€»è®¡éœ€è¦ %d 表格项目\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "内部错误。flexopts 功能异常。\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "å°è¯•ã€Œ%s --helpã€ä»¥èŽ·å¾—更多信æ¯ã€‚\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "未知的 -C 选项“%câ€"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "致命的解æžé”™è¯¯"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "无法创建回溯信æ¯æ–‡ä»¶ %s"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr "-l AT&T lex 兼容性选项会导致大幅性能å‡é€€\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr " åŒæ—¶ä¹Ÿè®¸æ˜¯å…¶ä»–回报性能å‡é€€çš„实际æ¥æº\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
"newline characters\n"
msgstr "%%option yylineno 导致性能å‡é€€ï¼Œåªæœ‰å½“该规则该å»åˆæ–°åˆ—字符时æ‰ä¼š\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "-I (交互å¼) 导致å°å¹…性能å‡é€€\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() 导致å°å¹…性能å‡é€€\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT 导致大幅性能å‡é€€\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr "å˜é‡æœ«å°¾ä¸Šä¸‹æ–‡è§„则导致大幅性能å‡é€€\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT 无法与 -f 或 -F å…±åŒä½¿ç”¨"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "%option yylineno 无法与 REJECT å…±åŒä½¿ç”¨"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr "å˜é‡æœ«å°¾ä¸Šä¸‹æ–‡è§„则无法与 -f 或 -F å…±åŒä½¿ç”¨"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%option yyclass åªå¯¹äºŽ C++ 扫æ程åºæœ‰æ„义"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "用法:%s [选项] [文件]...\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -581,8 +601,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -654,48 +672,48 @@ msgstr ""
" -h, --help 产生这个说明消æ¯\n"
" -V, --version 报告 %s 版本\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr "给予 sko_stack é…é¢æ—¶å¤±è´¥"
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "å称「%sã€æœ‰è’谬的长度"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "在 allocatearray() 中内存é…置失败"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "在 checkchar() 中侦测到ä¸å½“的字符「%sã€"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "扫æ程åºéœ€è¦ -8 旗标以使用字符 %s"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "在 allocatearray() 中内存é…置失败"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s:严é‡å†…部错误,%s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "试图增加数组大å°æ—¶å¤±è´¥"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "骨架文件中错误的行"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "在 yy_flex_xmalloc() 中的内存分é…失败"
@@ -729,20 +747,20 @@ msgstr "在 dupmachine() 中清空机器"
msgid "Variable trailing context rule at line %d\n"
msgstr "å˜é‡æœ«å°¾ä¸Šä¸‹æ–‡è§„则于列 %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "在 mark_beginning_as_normal() 中有ä¸å½“的状æ€è¾“å…¥"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "输入规则太å¤æ‚ (>= %d NFA 状æ€)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "在 mkxtion() 中找到太多转æ¢"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "规则过多 (> %d)ï¼"
@@ -751,132 +769,136 @@ msgstr "规则过多 (> %d)ï¼"
msgid "unknown error processing section 1"
msgstr "未知的错误处ç†èŠ‚ 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "错误的起始状æ€åˆ—表"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "ä¸èƒ½è¯†åˆ«çš„规则"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "末尾上下文已使用两次"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "ä¸å½“的迭代值"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "迭代值必须是正值"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr "在大å°å†™ä¸é¡»ç›¸ç¬¦çš„扫æ程åºä¸­ï¼Œå­—符范围 [%c-%c] 是模棱两å¯çš„"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "在字符类别中有负值范围"
-#: src/parse.y:916
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr "在大å°å†™ä¸é¡»ç›¸ç¬¦çš„扫æ程åºä¸­ï¼Œ[:^lower:] 是模棱两å¯çš„"
-#: src/parse.y:922
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr "在大å°å†™ä¸é¡»ç›¸ç¬¦çš„扫æ程åºä¸­ï¼Œ[:^upper:] 是模棱两å¯çš„"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "输入列太长\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "异常的「%topã€æŒ‡ä»¤"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "无法辨识的「%ã€æŒ‡ä»¤"
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr "定义å称太长\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "ä¸æˆå¯¹çš„「{ã€"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr "{%s} 的定义值太长\n"
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "ä¸å®Œæ•´çš„å称定义"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr "选项列太长\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "ä¸èƒ½è¯†åˆ«çš„ %%选项:%s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "错误的字符类别"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "未定义的定义 {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "错误 <起始æ¡ä»¶>:%s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "é—æ¼å¼•å·"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "错误的字符类别表达å¼ï¼š%s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "ä¸å½“字符于 {} 内部"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "é—æ¼ }"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "在动作中文件结æŸ"
-#: src/scan.l:951
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
msgstr "在å¼æ ·ä¹‹å†…é‡åˆ°æ–‡ä»¶ç»“æŸ"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "错误的字符:%s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "无法打开 %s"
@@ -924,16 +946,16 @@ msgstr "å称定义了两次"
msgid "start condition %s declared twice"
msgstr "起始æ¡ä»¶ %s 声明了两次"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "过早出现文件结尾"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "结æŸæ ‡å¿—\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*情况很怪异* - tok:%d val:%d\n"
diff --git a/po/zh_TW.po b/po/zh_TW.po
index e033222..340860a 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -1,14 +1,29 @@
-# Traditional Chinese Messages for flex.
-# Copyright (C) 2002 The Flex Project (msgids)
-# This file is distributed under the same license as the flex package.
-# Wang Li <charles@linux.net.cn>, 2002.
-# Wei-Lun Chao <bluebat@member.fsf.org>, 2009, 2013.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR Free Software Foundation, Inc.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
+#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: flex 2.5.37\n"
-"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2016-03-01 19:54-0500\n"
+"Project-Id-Version: PACKAGE VERSION\n"
+"PO-Revision-Date: 2018-02-08 11:05-0800\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#~ # Traditional Chinese Messages for flex.
+#~ # Copyright (C) 2002 The Flex Project (msgids)
+#~ # This file is distributed under the same license as the flex package.
+#~ # Wang Li <charles@linux.net.cn>, 2002.
+#~ # Wei-Lun Chao <bluebat@member.fsf.org>, 2009, 2013.
+#~ #
+#~ msgid ""
+#~ msgstr ""
+#~ "Project-Id-Version: flex 2.5.37\n"
+#~ "Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
+"POT-Creation-Date: 2017-05-06 10:49-0400\n"
"PO-Revision-Date: 2013-02-12 23:23+0800\n"
"Last-Translator: Wei-Lun Chao <bluebat@member.fsf.org>\n"
"Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"
@@ -16,6 +31,7 @@ msgstr ""
"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=1; plural=0;\n"
#: src/buf.c:79
@@ -78,24 +94,24 @@ msgstr ""
" DFA 傾å°ï¼š\n"
"\n"
-#: src/dfa.c:592
+#: src/dfa.c:587
msgid "could not create unique end-of-buffer state"
msgstr "無法建立ç¨ä¸€çš„ç·©è¡å€çµå°¾ç‹€æ…‹"
-#: src/dfa.c:613
+#: src/dfa.c:608
#, c-format
msgid "state # %d:\n"
msgstr "狀態 # %d:\n"
-#: src/dfa.c:773
+#: src/dfa.c:768
msgid "Could not write yynxt_tbl[][]"
msgstr "無法寫入 yynxt_tbl[][]"
-#: src/dfa.c:1033
+#: src/dfa.c:1028
msgid "bad transition character detected in sympartition()"
msgstr "在 sympartition() åµæ¸¬åˆ°ä¸ç•¶çš„轉æ›å­—å…ƒ"
-#: src/gen.c:494
+#: src/gen.c:480
msgid ""
"\n"
"\n"
@@ -107,29 +123,29 @@ msgstr ""
"等價類別:\n"
"\n"
-#: src/gen.c:679 src/gen.c:708 src/gen.c:1228
+#: src/gen.c:669 src/gen.c:698 src/gen.c:1218
#, c-format
msgid "state # %d accepts: [%d]\n"
msgstr "狀態 # %d 接å—:[%d]\n"
-#: src/gen.c:1125
+#: src/gen.c:1115
#, c-format
msgid "state # %d accepts: "
msgstr "狀態 # %d 接å—:"
-#: src/gen.c:1172
+#: src/gen.c:1162
msgid "Could not write yyacclist_tbl"
msgstr "無法寫入 yyacclist_tbl"
-#: src/gen.c:1246
+#: src/gen.c:1236
msgid "Could not write yyacc_tbl"
msgstr "無法寫入 yyacc_tbl"
-#: src/gen.c:1261 src/gen.c:1633 src/gen.c:1656
+#: src/gen.c:1251 src/gen.c:1623 src/gen.c:1646
msgid "Could not write ecstbl"
msgstr "無法寫入 ecstbl"
-#: src/gen.c:1281
+#: src/gen.c:1271
msgid ""
"\n"
"\n"
@@ -139,393 +155,397 @@ msgstr ""
"\n"
" 後設等價類別:\n"
-#: src/gen.c:1303
+#: src/gen.c:1293
msgid "Could not write yymeta_tbl"
msgstr "無法寫入 yymeta_tbl"
-#: src/gen.c:1362
+#: src/gen.c:1352
msgid "Could not write yybase_tbl"
msgstr "無法寫入 yybase_tbl"
-#: src/gen.c:1394
+#: src/gen.c:1384
msgid "Could not write yydef_tbl"
msgstr "無法寫入 yydef_tbl"
-#: src/gen.c:1432
+#: src/gen.c:1422
msgid "Could not write yynxt_tbl"
msgstr "無法寫入 yynxt_tbl"
-#: src/gen.c:1466
+#: src/gen.c:1456
msgid "Could not write yychk_tbl"
msgstr "無法寫入 yychk_tbl"
-#: src/gen.c:1618 src/gen.c:1647
+#: src/gen.c:1608 src/gen.c:1637
msgid "Could not write ftbl"
msgstr "無法寫入 ftbl"
-#: src/gen.c:1624
+#: src/gen.c:1614
msgid "Could not write ssltbl"
msgstr "無法寫入 ssltbl"
-#: src/gen.c:1675
+#: src/gen.c:1665
msgid "Could not write eoltbl"
msgstr "無法寫入 eoltbl"
-#: src/gen.c:1732
+#: src/gen.c:1722
msgid "Could not write yynultrans_tbl"
msgstr "無法寫入 yynultrans_tbl"
-#: src/main.c:179
+#: src/main.c:178
msgid "rule cannot be matched"
msgstr "è¦å‰‡ç„¡æ³•å»åˆ"
-#: src/main.c:184
+#: src/main.c:183
msgid "-s option given but default rule can be matched"
msgstr "-s é¸é …已給定但是å¯ä»¥å»åˆé è¨­è¦å‰‡"
-#: src/main.c:222
+#: src/main.c:221
msgid "Can't use -+ with -l option"
msgstr "無法將 -+ 與 -l é¸é …å…±åŒä½¿ç”¨"
-#: src/main.c:225
+#: src/main.c:224
msgid "Can't use -f or -F with -l option"
msgstr "無法將 -f 或 -F 與 -l é¸é …å…±åŒä½¿ç”¨"
-#: src/main.c:229
+#: src/main.c:228
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr "無法將 --reentrant 或 --bison-bridge 與 -l é¸é …å…±åŒä½¿ç”¨"
-#: src/main.c:261
+#: src/main.c:260
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "-Cf/-CF å’Œ -Cm 共用時ä¸å…·ä»»ä½•æ„義"
-#: src/main.c:264
+#: src/main.c:263
msgid "-Cf/-CF and -I are incompatible"
msgstr "-Cf/-CF å’Œ -I 是ä¸ç›¸å®¹çš„"
-#: src/main.c:268
+#: src/main.c:267
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "-Cf/-CF 與 lex 相容模å¼æ˜¯ä¸ç›¸å®¹çš„"
-#: src/main.c:273
+#: src/main.c:272
msgid "-Cf and -CF are mutually exclusive"
msgstr "-Cf 和 -CF 是互斥的"
-#: src/main.c:277
+#: src/main.c:276
msgid "Can't use -+ with -CF option"
msgstr "無法將 -+ 與 -CF é¸é …å…±åŒä½¿ç”¨"
-#: src/main.c:280
+#: src/main.c:279
#, c-format
msgid "%array incompatible with -+ option"
msgstr "%array 與 -+ é¸é …ä¸ç›¸å®¹"
-#: src/main.c:285
+#: src/main.c:284
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "é¸é … -+ å’Œ --reentrant 是互斥的。"
-#: src/main.c:288
+#: src/main.c:287
msgid "bison bridge not supported for the C++ scanner."
msgstr "bison 橋接器ä¸å— C++ 掃æ程å¼æ”¯æ´ã€‚"
-#: src/main.c:343 src/main.c:427
+#: src/main.c:336 src/main.c:419
#, c-format
msgid "could not create %s"
msgstr "無法建立 %s"
-#: src/main.c:439
+#: src/main.c:431
msgid "could not write tables header"
msgstr "無法寫入表頭"
-#: src/main.c:443
+#: src/main.c:435
#, c-format
msgid "can't open skeleton file %s"
msgstr "無法開啟架構檔案 %s"
-#: src/main.c:480
+#: src/main.c:450
+msgid "Prefix cannot include '[' or ']'"
+msgstr ""
+
+#: src/main.c:474
msgid "allocation of macro definition failed"
msgstr "給予巨集定義é…é¡æ™‚失敗"
-#: src/main.c:527
+#: src/main.c:521
#, c-format
msgid "input error reading skeleton file %s"
msgstr "讀å–架構檔案 %s 時輸入錯誤"
-#: src/main.c:531
+#: src/main.c:525
#, c-format
msgid "error closing skeleton file %s"
msgstr "關閉架構檔案 %s 時發生錯誤"
-#: src/main.c:715
+#: src/main.c:709
#, c-format
msgid "error creating header file %s"
msgstr "建立標頭檔案 %s 時發生錯誤"
-#: src/main.c:723
+#: src/main.c:717
#, c-format
msgid "error writing output file %s"
msgstr "寫入輸出檔案 %s 時發生錯誤"
-#: src/main.c:727
+#: src/main.c:721
#, c-format
msgid "error closing output file %s"
msgstr "關閉輸出檔案 %s 時發生錯誤"
-#: src/main.c:731
+#: src/main.c:725
#, c-format
msgid "error deleting output file %s"
msgstr "刪除輸出檔案 %s 時發生錯誤"
-#: src/main.c:738
+#: src/main.c:732
#, c-format
msgid "No backing up.\n"
msgstr "沒有備份。\n"
-#: src/main.c:742
+#: src/main.c:736
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d 備份 (éžæŽ¥å—) 狀態。\n"
-#: src/main.c:746
+#: src/main.c:740
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "壓縮éŽçš„表格自動備份。\n"
-#: src/main.c:749
+#: src/main.c:743
#, c-format
msgid "error writing backup file %s"
msgstr "寫入備份檔案 %s 時發生錯誤"
-#: src/main.c:753
+#: src/main.c:747
#, c-format
msgid "error closing backup file %s"
msgstr "關閉備份檔案 %s 時發生錯誤"
-#: src/main.c:758
+#: src/main.c:752
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "%s 版本 %s 用法統計:\n"
-#: src/main.c:761
+#: src/main.c:755
#, c-format
msgid " scanner options: -"
msgstr " 掃æ程å¼é¸é …:-"
-#: src/main.c:840
+#: src/main.c:834
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d NFA 狀態\n"
-#: src/main.c:842
+#: src/main.c:836
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d DFA 狀態 (%d 個字詞)\n"
-#: src/main.c:844
+#: src/main.c:838
#, c-format
msgid " %d rules\n"
msgstr " %d æ¢è¦å‰‡\n"
-#: src/main.c:849
+#: src/main.c:843
#, c-format
msgid " No backing up\n"
msgstr " 沒有備份\n"
-#: src/main.c:853
+#: src/main.c:847
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d 備份 (éžæŽ¥å—) 狀態\n"
-#: src/main.c:858
+#: src/main.c:852
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " 壓縮éŽçš„表格自動備份\n"
-#: src/main.c:862
+#: src/main.c:856
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " 列首å¼æ¨£å·²ä½¿ç”¨\n"
-#: src/main.c:864
+#: src/main.c:858
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d 起始æ¢ä»¶\n"
-#: src/main.c:868
+#: src/main.c:862
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d ε狀態,%d é›™å€Îµç‹€æ…‹\n"
-#: src/main.c:872
+#: src/main.c:866
#, c-format
msgid " no character classes\n"
msgstr " 無字元類別\n"
-#: src/main.c:876
+#: src/main.c:870
#, c-format
msgid " %d/%d character classes needed %d/%d words of storage, %d reused\n"
msgstr " %d/%d 字元類別所需 %d/%d 字詞的儲存體,%d é‡æ–°ä½¿ç”¨\n"
-#: src/main.c:881
+#: src/main.c:875
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d 狀態/下一狀態å°å·²å»ºç«‹\n"
-#: src/main.c:884
+#: src/main.c:878
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d ç¨ä¸€/é‡è¤‡è½‰æ›\n"
-#: src/main.c:889
+#: src/main.c:883
#, c-format
msgid " %d table entries\n"
msgstr " %d 表格項目\n"
-#: src/main.c:897
+#: src/main.c:891
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d base-def 項目已建立\n"
-#: src/main.c:901
+#: src/main.c:895
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (尖峰 %d) nxt-chk 項目已建立\n"
-#: src/main.c:905
+#: src/main.c:899
#, c-format
msgid " %d/%d (peak %d) template nxt-chk entries created\n"
msgstr " %d/%d (å°–å³° %d) æ¨¡æ¿ nxt-chk 項目已建立\n"
-#: src/main.c:909
+#: src/main.c:903
#, c-format
msgid " %d empty table entries\n"
msgstr " %d 清空表格項目\n"
-#: src/main.c:911
+#: src/main.c:905
#, c-format
msgid " %d protos created\n"
msgstr " %d 原型已建立\n"
-#: src/main.c:914
+#: src/main.c:908
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d 範本已建立,%d 使用\n"
-#: src/main.c:922
+#: src/main.c:916
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d 等價類別已建立\n"
-#: src/main.c:930
+#: src/main.c:924
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d 後設等價類別已建立\n"
-#: src/main.c:936
+#: src/main.c:930
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d 已儲存) 雜湊碰撞,%d DFAs 相等\n"
-#: src/main.c:938
+#: src/main.c:932
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " éœ€è¦ %d 組é‡æ–°é…ç½®\n"
-#: src/main.c:940
+#: src/main.c:934
#, c-format
msgid " %d total table entries needed\n"
msgstr " ç¸½è¨ˆéœ€è¦ %d 表格項目\n"
-#: src/main.c:1015
+#: src/main.c:1008
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "內部錯誤。flexopts 功能異常。\n"
-#: src/main.c:1025
+#: src/main.c:1018
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "嘗試「%s --helpã€ä»¥ç²å¾—更多資訊。\n"
-#: src/main.c:1082
+#: src/main.c:1075
#, c-format
msgid "unknown -C option '%c'"
msgstr "ä¸æ˜Ž -C é¸é …「%cã€"
-#: src/main.c:1211
+#: src/main.c:1204
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
-#: src/main.c:1487
+#: src/main.c:1476
msgid "fatal parse error"
msgstr "åš´é‡çš„解æžéŒ¯èª¤"
-#: src/main.c:1519
+#: src/main.c:1508
#, c-format
msgid "could not create backing-up info file %s"
msgstr "無法建立備份資訊檔案 %s"
-#: src/main.c:1540
+#: src/main.c:1529
#, c-format
msgid "-l AT&T lex compatibility option entails a large performance penalty\n"
msgstr "-l AT&T lex 相容性é¸é …會導致大幅效能減退\n"
-#: src/main.c:1543
+#: src/main.c:1532
#, c-format
msgid " and may be the actual source of other reported performance penalties\n"
msgstr " åŒæ™‚也許是其他回報效能減退的實際來æº\n"
-#: src/main.c:1549
+#: src/main.c:1538
#, c-format
msgid ""
"%%option yylineno entails a performance penalty ONLY on rules that can match "
"newline characters\n"
msgstr "%%option yylineno 導致效能減退,åªæœ‰ç•¶è©²è¦å‰‡è©²å»åˆæ–°åˆ—字元時æ‰æœƒ\n"
-#: src/main.c:1556
+#: src/main.c:1545
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "-I (互動å¼) 導致å°å¹…效能減退\n"
-#: src/main.c:1561
+#: src/main.c:1550
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() 導致å°å¹…效能減退\n"
-#: src/main.c:1567
+#: src/main.c:1556
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT 導致大幅效能減退\n"
-#: src/main.c:1572
+#: src/main.c:1561
#, c-format
msgid "Variable trailing context rules entail a large performance penalty\n"
msgstr "變數末尾內文è¦å‰‡å°Žè‡´å¤§å¹…效能減退\n"
-#: src/main.c:1584
+#: src/main.c:1573
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT 無法與 -f 或 -F å…±åŒä½¿ç”¨"
-#: src/main.c:1587
+#: src/main.c:1576
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "%option yylineno 無法與 REJECT å…±åŒä½¿ç”¨"
-#: src/main.c:1590
+#: src/main.c:1579
msgid "variable trailing context rules cannot be used with -f or -F"
msgstr "變數末尾內文è¦å‰‡ç„¡æ³•èˆ‡ -f 或 -F å…±åŒä½¿ç”¨"
-#: src/main.c:1718
+#: src/main.c:1704
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%option yyclass åªå°æ–¼ C++ 掃æ程å¼æœ‰æ„義"
-#: src/main.c:1805
+#: src/main.c:1791
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "用法:%s [é¸é …] [檔案]…\n"
-#: src/main.c:1808
+#: src/main.c:1794
#, fuzzy, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -580,8 +600,6 @@ msgid ""
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
-" --noansi-definitions old-style function definitions\n"
-" --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n"
@@ -653,48 +671,48 @@ msgstr ""
" -h, --help 產生這個說明訊æ¯\n"
" -V, --version 報告 %s 版本\n"
-#: src/misc.c:65
+#: src/misc.c:64
msgid "allocation of sko_stack failed"
msgstr "給予 sko_stack é…é¡æ™‚失敗"
-#: src/misc.c:101 src/misc.c:128
+#: src/misc.c:100
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "å稱「%sã€æœ‰è’謬的長度"
-#: src/misc.c:175
+#: src/misc.c:155
msgid "memory allocation failed in allocate_array()"
msgstr "在 allocatearray() 中記憶體é…置失敗"
-#: src/misc.c:225
+#: src/misc.c:205
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "在 checkchar() 中åµæ¸¬åˆ°ä¸ç•¶çš„字元「%sã€"
-#: src/misc.c:230
+#: src/misc.c:210
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "掃æ程å¼éœ€è¦ -8 旗標以使用字元 %s"
-#: src/misc.c:249
+#: src/misc.c:229
#, fuzzy
msgid "memory allocation failure in xstrdup()"
msgstr "在 allocatearray() 中記憶體é…置失敗"
-#: src/misc.c:323
+#: src/misc.c:303
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s:嚴é‡å…§éƒ¨éŒ¯èª¤ï¼Œ%s\n"
-#: src/misc.c:712
+#: src/misc.c:671
msgid "attempt to increase array size failed"
msgstr "試圖增加陣列大å°æ™‚失敗"
-#: src/misc.c:839
+#: src/misc.c:795
msgid "bad line in skeleton file"
msgstr "架構檔案中ä¸ç•¶çš„列"
-#: src/misc.c:889
+#: src/misc.c:845
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "在 yy_flex_xmalloc() 中的記憶體é…置失敗"
@@ -728,20 +746,20 @@ msgstr "在 dupmachine() 中清空機器"
msgid "Variable trailing context rule at line %d\n"
msgstr "變數末尾內文è¦å‰‡æ–¼åˆ— %d\n"
-#: src/nfa.c:356
+#: src/nfa.c:357
msgid "bad state type in mark_beginning_as_normal()"
msgstr "在 mark_beginning_as_normal() 中有ä¸ç•¶çš„狀態輸入"
-#: src/nfa.c:594
+#: src/nfa.c:595
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "輸入è¦å‰‡å¤ªè¤‡é›œ (>= %d NFA 狀態)"
-#: src/nfa.c:672
+#: src/nfa.c:673
msgid "found too many transitions in mkxtion()"
msgstr "在 mkxtion() 中找到太多轉æ›"
-#: src/nfa.c:698
+#: src/nfa.c:699
#, c-format
msgid "too many rules (> %d)!"
msgstr "太多è¦å‰‡ (> %d)ï¼"
@@ -750,132 +768,136 @@ msgstr "太多è¦å‰‡ (> %d)ï¼"
msgid "unknown error processing section 1"
msgstr "ä¸æ˜Žçš„錯誤處ç†å€æ®µ 1"
-#: src/parse.y:184 src/parse.y:351
+#: src/parse.y:184 src/parse.y:353
msgid "bad start condition list"
msgstr "ä¸ç•¶çš„起始æ¢ä»¶æ¸…å–®"
-#: src/parse.y:315
+#: src/parse.y:204
+msgid "Prefix must not contain [ or ]"
+msgstr ""
+
+#: src/parse.y:317
msgid "unrecognized rule"
msgstr "無法辨識的è¦å‰‡"
-#: src/parse.y:434 src/parse.y:447 src/parse.y:516
+#: src/parse.y:436 src/parse.y:449 src/parse.y:518
msgid "trailing context used twice"
msgstr "末尾內文已使用兩次"
-#: src/parse.y:552 src/parse.y:562 src/parse.y:635 src/parse.y:645
+#: src/parse.y:554 src/parse.y:564 src/parse.y:637 src/parse.y:647
msgid "bad iteration values"
msgstr "ä¸ç•¶çš„迭代值"
-#: src/parse.y:580 src/parse.y:598 src/parse.y:663 src/parse.y:681
+#: src/parse.y:582 src/parse.y:600 src/parse.y:665 src/parse.y:683
msgid "iteration value must be positive"
msgstr "迭代值必須是正值"
-#: src/parse.y:804 src/parse.y:814
+#: src/parse.y:806 src/parse.y:816
#, c-format
msgid "the character range [%c-%c] is ambiguous in a case-insensitive scanner"
msgstr "在大å°å¯«ä¸é ˆç›¸ç¬¦çš„掃æ程å¼ä¸­ï¼Œå­—å…ƒç¯„åœ [%c-%c] 是模稜兩å¯çš„"
-#: src/parse.y:819
+#: src/parse.y:821
msgid "negative range in character class"
msgstr "在字元類別中有負值範åœ"
-#: src/parse.y:916
+#: src/parse.y:918
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr "在大å°å¯«ä¸é ˆç›¸ç¬¦çš„掃æ程å¼ä¸­ï¼Œ[:^lower:] 是模稜兩å¯çš„"
-#: src/parse.y:922
+#: src/parse.y:924
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr "在大å°å¯«ä¸é ˆç›¸ç¬¦çš„掃æ程å¼ä¸­ï¼Œ[:^upper:] 是模稜兩å¯çš„"
-#: src/scan.l:75 src/scan.l:618 src/scan.l:676
+#: src/scan.l:82 src/scan.l:644 src/scan.l:702
msgid "Input line too long\n"
msgstr "輸入列太長\n"
-#: src/scan.l:161
+#: src/scan.l:183
#, c-format
msgid "malformed '%top' directive"
msgstr "異常的「%topã€æŒ‡ä»¤"
-#: src/scan.l:183
+#: src/scan.l:205
#, no-c-format
msgid "unrecognized '%' directive"
msgstr "無法辨識的「%ã€æŒ‡ä»¤"
-#: src/scan.l:192
+#: src/scan.l:214
msgid "Definition name too long\n"
msgstr "定義å稱太長\n"
-#: src/scan.l:284
+#: src/scan.l:309
msgid "Unmatched '{'"
msgstr "ä¸æˆå°çš„「{ã€"
-#: src/scan.l:300
+#: src/scan.l:325
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr "{%s} 的定義值太長\n"
-#: src/scan.l:317
+#: src/scan.l:342
msgid "incomplete name definition"
msgstr "ä¸å®Œæ•´çš„å稱定義"
-#: src/scan.l:444
+#: src/scan.l:467
msgid "Option line too long\n"
msgstr "é¸é …列太長\n"
-#: src/scan.l:452
+#: src/scan.l:475
#, c-format
msgid "unrecognized %%option: %s"
msgstr "無法辨識的 %%option:%s"
-#: src/scan.l:633 src/scan.l:806
+#: src/scan.l:659 src/scan.l:832
msgid "bad character class"
msgstr "ä¸ç•¶çš„字元類別"
-#: src/scan.l:683
+#: src/scan.l:709
#, c-format
msgid "undefined definition {%s}"
msgstr "未定義的定義 {%s}"
-#: src/scan.l:746
+#: src/scan.l:772
msgid "unbalanced parenthesis"
msgstr ""
-#: src/scan.l:761
+#: src/scan.l:787
#, c-format
msgid "bad <start condition>: %s"
msgstr "ä¸ç•¶çš„ <起始æ¢ä»¶>:%s"
-#: src/scan.l:774
+#: src/scan.l:800
msgid "missing quote"
msgstr "缺少引號"
-#: src/scan.l:840
+#: src/scan.l:866
#, c-format
msgid "bad character class expression: %s"
msgstr "ä¸ç•¶çš„字元類別é‹ç®—å¼ï¼š%s"
-#: src/scan.l:862
+#: src/scan.l:888
msgid "bad character inside {}'s"
msgstr "ä¸ç•¶å­—元於 {} 內部"
-#: src/scan.l:868
+#: src/scan.l:894
msgid "missing }"
msgstr "缺少 }"
-#: src/scan.l:946
+#: src/scan.l:972
msgid "EOF encountered inside an action"
msgstr "在動作之內é‡åˆ°æª”案çµæŸ"
-#: src/scan.l:951
+#: src/scan.l:977
msgid "EOF encountered inside pattern"
msgstr "在å¼æ¨£ä¹‹å…§é‡åˆ°æª”案çµæŸ"
-#: src/scan.l:973
+#: src/scan.l:1010
#, c-format
msgid "bad character: %s"
msgstr "ä¸ç•¶çš„字元:%s"
-#: src/scan.l:1001
+#: src/scan.l:1038
#, c-format
msgid "can't open %s"
msgstr "無法開啟 %s"
@@ -923,16 +945,16 @@ msgstr "å稱定義了兩次"
msgid "start condition %s declared twice"
msgstr "起始æ¢ä»¶ %s 宣告了兩次"
-#: src/yylex.c:56
+#: src/yylex.c:57
msgid "premature EOF"
msgstr "éŽæ—©å‡ºç¾æª”案çµå°¾"
-#: src/yylex.c:199
+#: src/yylex.c:200
#, c-format
msgid "End Marker\n"
msgstr "çµæŸæ¨™èªŒ\n"
-#: src/yylex.c:205
+#: src/yylex.c:206
#, c-format
msgid "*Something Weird* - tok: %d val: %d\n"
msgstr "*情æ³å¾ˆæ€ªç•°* - tok:%d val:%d\n"
diff --git a/src/Makefile.am b/src/Makefile.am
index 416995e..e379692 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,68 +1,83 @@
AM_YFLAGS = -d
-localedir = $(datadir)/locale
-AM_CPPFLAGS = -DLOCALEDIR=\"$(localedir)\" -I$(top_srcdir)/intl
+AM_CPPFLAGS = -DLOCALEDIR=\"$(localedir)\"
LIBS = @LIBS@
m4 = @M4@
bin_PROGRAMS = flex
+if ENABLE_BOOTSTRAP
noinst_PROGRAMS = stage1flex
-lib_LTLIBRARIES = \
- libfl.la \
- libfl_pic.la
+endif
+
+if ENABLE_LIBFL
+lib_LTLIBRARIES = libfl.la
+endif
+libfl_la_SOURCES = \
+ libmain.c \
+ libyywrap.c
+libfl_la_LDFLAGS = -version-info @SHARED_VERSION_INFO@
stage1flex_SOURCES = \
scan.l \
$(COMMON_SOURCES)
+if CROSS
+stage1flex_LDADD =
+stage1flex_SOURCES += \
+ ../lib/malloc.c \
+ ../lib/realloc.c
+stage1flex_LINK = $(LIBTOOL) --tag=CC --mode=link $(CC_FOR_BUILD) \
+ $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@
+
+$(stage1flex_OBJECTS): CC=$(CC_FOR_BUILD)
+$(stage1flex_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD)
+$(stage1flex_OBJECTS): CPP=$(CPP_FOR_BUILD)
+$(stage1flex_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD)
+$(stage1flex_OBJECTS): LDFLAGS=$(LDFLAGS_FOR_BUILD)
+else
+stage1flex_LDADD = $(LDADD)
+stage1flex_LINK = $(LINK)
+stage1flex_CFLAGS = $(AM_CFLAGS)
+endif
+
flex_SOURCES = \
- stage1scan.l \
$(COMMON_SOURCES)
+nodist_flex_SOURCES = \
+ stage1scan.c
+
+flex_CFLAGS = $(AM_CFLAGS) $(WARNINGFLAGS)
+
COMMON_SOURCES = \
buf.c \
ccl.c \
dfa.c \
ecs.c \
filter.c \
+ flexdef.h \
+ flexint.h \
gen.c \
main.c \
misc.c \
nfa.c \
options.c \
+ options.h \
parse.y \
regex.c \
scanflags.c \
scanopt.c \
+ scanopt.h \
skel.c \
sym.c \
tables.c \
+ tables.h \
tables_shared.c \
+ tables_shared.h \
tblcmp.c \
+ version.h \
yylex.c
-LDADD = ../lib/libcompat.la @LIBINTL@
-
-libfl_la_SOURCES = \
- libmain.c \
- libyywrap.c
-
-libfl_la_LDFLAGS = -version-info @SHARED_VERSION_INFO@
-
-libfl_pic_la_SOURCES = \
- libmain.c \
- libyywrap.c
-
-libfl_pic_la_LDFLAGS = -version-info @SHARED_VERSION_INFO@
-
-noinst_HEADERS = \
- flexdef.h \
- flexint.h \
- version.h \
- options.h \
- scanopt.h \
- tables.h \
- tables_shared.h
+LDADD = $(LIBOBJS) @LIBINTL@
include_HEADERS = \
FlexLexer.h
@@ -72,52 +87,38 @@ EXTRA_DIST = \
mkskel.sh \
gettext.h
-DISTCLEANFILES = stage1scan.c
+CLEANFILES = stage1scan.c stage1flex$(EXEEXT)
MAINTAINERCLEANFILES = skel.c
-$(srcdir)/skel.c: flex.skl mkskel.sh flexint.h tables_shared.h
- sed 's/m4_/m4postproc_/g; s/m4preproc_/m4_/g' $(srcdir)/flex.skl | \
- $(m4) -P -I $(srcdir) \
- -DFLEX_MAJOR_VERSION=` echo $(VERSION)|cut -f 1 -d .` \
- -DFLEX_MINOR_VERSION=` echo $(VERSION)|cut -f 2 -d .` \
- -DFLEX_SUBMINOR_VERSION=`echo $(VERSION)|cut -f 3 -d .` | \
- sed 's/m4postproc_/m4_/g' | \
- $(SHELL) $(srcdir)/mkskel.sh >skel.c.tmp
- mv skel.c.tmp $(srcdir)/skel.c
-
-stage1scan.l: scan.l
- cp $(srcdir)/scan.l $(srcdir)/stage1scan.l
-
-stage1scan.c: stage1scan.l stage1flex$(EXEEXT)
- $(top_builddir)/src/stage1flex$(EXEEXT) -o $@ $<
-
-# Explicitly describe dependencies.
-# You can recreate this with `gcc -I. -MM *.c'
-buf.o: buf.c flexdef.h flexint.h
-ccl.o: ccl.c flexdef.h flexint.h
-dfa.o: dfa.c flexdef.h flexint.h tables.h tables_shared.h
-ecs.o: ecs.c flexdef.h flexint.h
-scanflags.o: scanflags.c flexdef.h flexint.h
-gen.o: gen.c flexdef.h flexint.h tables.h tables_shared.h
-libmain.o: libmain.c
-libyywrap.o: libyywrap.c
-main.o: main.c flexdef.h flexint.h version.h options.h scanopt.h \
- tables.h tables_shared.h
-misc.o: misc.c flexdef.h flexint.h tables.h tables_shared.h
-nfa.o: nfa.c flexdef.h flexint.h
-options.o: options.c options.h scanopt.h flexdef.h flexint.h
-parse.o: parse.c flexdef.h flexint.h tables.h tables_shared.h
-scan.o: scan.c flexdef.h flexint.h parse.h
-scanopt.o: scanopt.c flexdef.h flexint.h scanopt.h
-skel.o: skel.c flexdef.h flexint.h
-sym.o: sym.c flexdef.h flexint.h
-tables.o: tables.c flexdef.h flexint.h tables.h tables_shared.h
-tables_shared.o: tables_shared.c flexdef.h flexint.h tables.h \
- tables_shared.h
-tblcmp.o: tblcmp.c flexdef.h flexint.h
-yylex.o: yylex.c flexdef.h flexint.h parse.h
-filter.o: filter.c flexdef.h flexint.h
+skel.c: flex.skl mkskel.sh flexint.h tables_shared.h tables_shared.c
+ $(SHELL) $(srcdir)/mkskel.sh $(srcdir) $(m4) $(VERSION) > $@.tmp
+ mv $@.tmp $@
+
+if ENABLE_BOOTSTRAP
+stage1scan.c: scan.l stage1flex$(EXEEXT)
+ ./stage1flex$(EXEEXT) $(AM_LFLAGS) $(LFLAGS) -o $@ $(srcdir)/scan.l
+else
+stage1scan.c: scan.c
+ sed 's|^\(#line .*\)"'`printf %s $< | sed 's|[][\\\\.*]|\\\\&|g'`'"|\1"$@"|g' $< > $@
+endif
+
+dist-hook: scan.l flex$(EXEEXT)
+ chmod u+w $(distdir)/scan.c && \
+ ./flex$(EXEEXT) -o scan.c $< && \
+ mv scan.c $(distdir)
+
+# make needs to be told to make parse.h so that parallelized runs will
+# not fail.
+
+stage1flex-main.$(OBJEXT): parse.h
+flex-main.$(OBJEXT): parse.h
+
+stage1flex-yylex.$(OBJEXT): parse.h
+flex-yylex.$(OBJEXT): parse.h
+
+stage1flex-scan.$(OBJEXT): parse.h
+flex-stage1scan.$(OBJEXT): parse.h
# Run GNU indent on sources. Don't run this unless all the sources compile cleanly.
#
@@ -154,11 +155,14 @@ indentfiles = \
tables_shared.h \
tblcmp.c
-indent:
- if [ -f .indent.pro ] ; then \
- for f in $(indentfiles);\
- do\
- echo indenting $$f ;\
- $(indent) < $$f >/dev/null && indent $$f || echo $$f FAILED to indent ;\
- done \
- fi
+indent: $(top_srcdir)/.indent.pro
+ cd $(top_srcdir) && \
+ for f in $(indentfiles); do \
+ f=src/$$f; \
+ echo indenting $$f; \
+ INDENT_PROFILE=.indent.pro $(INDENT) <$$f >/dev/null && \
+ INDENT_PROFILE=.indent.pro $(INDENT) $$f || \
+ echo $$f FAILED to indent; \
+ done;
+
+.PHONY: indent
diff --git a/src/Makefile.in b/src/Makefile.in
index 46b0c6c..d868c54 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2017 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -91,21 +91,26 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
bin_PROGRAMS = flex$(EXEEXT)
-noinst_PROGRAMS = stage1flex$(EXEEXT)
+@ENABLE_BOOTSTRAP_TRUE@noinst_PROGRAMS = stage1flex$(EXEEXT)
+@CROSS_TRUE@am__append_1 = \
+@CROSS_TRUE@ ../lib/malloc.c \
+@CROSS_TRUE@ ../lib/realloc.c
+
subdir = src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
- $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/intlmacosx.m4 \
- $(top_srcdir)/m4/lib-ld.m4 $(top_srcdir)/m4/lib-link.m4 \
- $(top_srcdir)/m4/lib-prefix.m4 $(top_srcdir)/m4/libtool.m4 \
- $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
- $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
- $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
- $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/ax_prog_cc_for_build.m4 \
+ $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/iconv.m4 \
+ $(top_srcdir)/m4/intlmacosx.m4 $(top_srcdir)/m4/lib-ld.m4 \
+ $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \
+ $(top_srcdir)/m4/po.m4 $(top_srcdir)/m4/progtest.m4 \
+ $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(include_HEADERS) \
- $(noinst_HEADERS) $(am__DIST_COMMON)
+ $(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES =
@@ -150,27 +155,48 @@ am__v_lt_1 =
libfl_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
$(libfl_la_LDFLAGS) $(LDFLAGS) -o $@
-libfl_pic_la_LIBADD =
-am_libfl_pic_la_OBJECTS = libmain.lo libyywrap.lo
-libfl_pic_la_OBJECTS = $(am_libfl_pic_la_OBJECTS)
-libfl_pic_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
- $(libfl_pic_la_LDFLAGS) $(LDFLAGS) -o $@
+@ENABLE_LIBFL_TRUE@am_libfl_la_rpath = -rpath $(libdir)
PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS)
-am__objects_1 = buf.$(OBJEXT) ccl.$(OBJEXT) dfa.$(OBJEXT) \
- ecs.$(OBJEXT) filter.$(OBJEXT) gen.$(OBJEXT) main.$(OBJEXT) \
- misc.$(OBJEXT) nfa.$(OBJEXT) options.$(OBJEXT) parse.$(OBJEXT) \
- regex.$(OBJEXT) scanflags.$(OBJEXT) scanopt.$(OBJEXT) \
- skel.$(OBJEXT) sym.$(OBJEXT) tables.$(OBJEXT) \
- tables_shared.$(OBJEXT) tblcmp.$(OBJEXT) yylex.$(OBJEXT)
-am_flex_OBJECTS = stage1scan.$(OBJEXT) $(am__objects_1)
-flex_OBJECTS = $(am_flex_OBJECTS)
+LIBOBJDIR = ../lib/
+am__objects_1 = flex-buf.$(OBJEXT) flex-ccl.$(OBJEXT) \
+ flex-dfa.$(OBJEXT) flex-ecs.$(OBJEXT) flex-filter.$(OBJEXT) \
+ flex-gen.$(OBJEXT) flex-main.$(OBJEXT) flex-misc.$(OBJEXT) \
+ flex-nfa.$(OBJEXT) flex-options.$(OBJEXT) flex-parse.$(OBJEXT) \
+ flex-regex.$(OBJEXT) flex-scanflags.$(OBJEXT) \
+ flex-scanopt.$(OBJEXT) flex-skel.$(OBJEXT) flex-sym.$(OBJEXT) \
+ flex-tables.$(OBJEXT) flex-tables_shared.$(OBJEXT) \
+ flex-tblcmp.$(OBJEXT) flex-yylex.$(OBJEXT)
+am_flex_OBJECTS = $(am__objects_1)
+nodist_flex_OBJECTS = flex-stage1scan.$(OBJEXT)
+flex_OBJECTS = $(am_flex_OBJECTS) $(nodist_flex_OBJECTS)
flex_LDADD = $(LDADD)
-flex_DEPENDENCIES = ../lib/libcompat.la
-am_stage1flex_OBJECTS = scan.$(OBJEXT) $(am__objects_1)
+flex_DEPENDENCIES = $(LIBOBJS)
+flex_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(flex_CFLAGS) $(CFLAGS) \
+ $(AM_LDFLAGS) $(LDFLAGS) -o $@
+am__stage1flex_SOURCES_DIST = scan.l buf.c ccl.c dfa.c ecs.c filter.c \
+ flexdef.h flexint.h gen.c main.c misc.c nfa.c options.c \
+ options.h parse.y regex.c scanflags.c scanopt.c scanopt.h \
+ skel.c sym.c tables.c tables.h tables_shared.c tables_shared.h \
+ tblcmp.c version.h yylex.c ../lib/malloc.c ../lib/realloc.c
+am__objects_2 = stage1flex-buf.$(OBJEXT) stage1flex-ccl.$(OBJEXT) \
+ stage1flex-dfa.$(OBJEXT) stage1flex-ecs.$(OBJEXT) \
+ stage1flex-filter.$(OBJEXT) stage1flex-gen.$(OBJEXT) \
+ stage1flex-main.$(OBJEXT) stage1flex-misc.$(OBJEXT) \
+ stage1flex-nfa.$(OBJEXT) stage1flex-options.$(OBJEXT) \
+ stage1flex-parse.$(OBJEXT) stage1flex-regex.$(OBJEXT) \
+ stage1flex-scanflags.$(OBJEXT) stage1flex-scanopt.$(OBJEXT) \
+ stage1flex-skel.$(OBJEXT) stage1flex-sym.$(OBJEXT) \
+ stage1flex-tables.$(OBJEXT) stage1flex-tables_shared.$(OBJEXT) \
+ stage1flex-tblcmp.$(OBJEXT) stage1flex-yylex.$(OBJEXT)
+am__dirstamp = $(am__leading_dot)dirstamp
+@CROSS_TRUE@am__objects_3 = ../lib/stage1flex-malloc.$(OBJEXT) \
+@CROSS_TRUE@ ../lib/stage1flex-realloc.$(OBJEXT)
+am_stage1flex_OBJECTS = stage1flex-scan.$(OBJEXT) $(am__objects_2) \
+ $(am__objects_3)
stage1flex_OBJECTS = $(am_stage1flex_OBJECTS)
-stage1flex_LDADD = $(LDADD)
-stage1flex_DEPENDENCIES = ../lib/libcompat.la
+am__DEPENDENCIES_1 = $(LIBOBJS)
+@CROSS_FALSE@stage1flex_DEPENDENCIES = $(am__DEPENDENCIES_1)
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
@@ -222,16 +248,16 @@ AM_V_YACC = $(am__v_YACC_@AM_V@)
am__v_YACC_ = $(am__v_YACC_@AM_DEFAULT_V@)
am__v_YACC_0 = @echo " YACC " $@;
am__v_YACC_1 =
-SOURCES = $(libfl_la_SOURCES) $(libfl_pic_la_SOURCES) $(flex_SOURCES) \
+SOURCES = $(libfl_la_SOURCES) $(flex_SOURCES) $(nodist_flex_SOURCES) \
$(stage1flex_SOURCES)
-DIST_SOURCES = $(libfl_la_SOURCES) $(libfl_pic_la_SOURCES) \
- $(flex_SOURCES) $(stage1flex_SOURCES)
+DIST_SOURCES = $(libfl_la_SOURCES) $(flex_SOURCES) \
+ $(am__stage1flex_SOURCES_DIST)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
-HEADERS = $(include_HEADERS) $(noinst_HEADERS)
+HEADERS = $(include_HEADERS)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
$(LISP)config.h.in
# Read a list of newline-separated strings from the standard input,
@@ -254,7 +280,8 @@ ETAGS = etags
CTAGS = ctags
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
$(top_srcdir)/build-aux/depcomp $(top_srcdir)/build-aux/ylwrap \
- parse.c parse.h scan.c stage1scan.c
+ $(top_srcdir)/lib/malloc.c $(top_srcdir)/lib/realloc.c parse.c \
+ parse.h scan.c
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
ALLOCA = @ALLOCA@
@@ -265,12 +292,17 @@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
-BISON = @BISON@
+BUILD_EXEEXT = @BUILD_EXEEXT@
+BUILD_OBJEXT = @BUILD_OBJEXT@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
+CC_FOR_BUILD = @CC_FOR_BUILD@
CFLAGS = @CFLAGS@
+CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
+CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
+CPP_FOR_BUILD = @CPP_FOR_BUILD@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
@@ -302,12 +334,14 @@ INTLLIBS = @INTLLIBS@
INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
LD = @LD@
LDFLAGS = @LDFLAGS@
+LDFLAGS_FOR_BUILD = @LDFLAGS_FOR_BUILD@
LEX = @LEX@
LEXLIB = @LEXLIB@
LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
LIBICONV = @LIBICONV@
LIBINTL = @LIBINTL@
LIBOBJS = @LIBOBJS@
+LIBPTHREAD = @LIBPTHREAD@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
@@ -347,6 +381,7 @@ STRIP = @STRIP@
TEXI2DVI = @TEXI2DVI@
USE_NLS = @USE_NLS@
VERSION = @VERSION@
+WARNINGFLAGS = @WARNINGFLAGS@
XGETTEXT = @XGETTEXT@
XGETTEXT_015 = @XGETTEXT_015@
XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
@@ -358,6 +393,7 @@ abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
+ac_ct_CC_FOR_BUILD = @ac_ct_CC_FOR_BUILD@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
@@ -388,7 +424,7 @@ infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
-localedir = $(datadir)/locale
+localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
@@ -397,6 +433,7 @@ pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
+runstatedir = @runstatedir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
@@ -406,62 +443,59 @@ top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AM_YFLAGS = -d
-AM_CPPFLAGS = -DLOCALEDIR=\"$(localedir)\" -I$(top_srcdir)/intl
+AM_CPPFLAGS = -DLOCALEDIR=\"$(localedir)\"
m4 = @M4@
-lib_LTLIBRARIES = \
- libfl.la \
- libfl_pic.la
-
-stage1flex_SOURCES = \
- scan.l \
- $(COMMON_SOURCES)
+@ENABLE_LIBFL_TRUE@lib_LTLIBRARIES = libfl.la
+libfl_la_SOURCES = \
+ libmain.c \
+ libyywrap.c
+libfl_la_LDFLAGS = -version-info @SHARED_VERSION_INFO@
+stage1flex_SOURCES = scan.l $(COMMON_SOURCES) $(am__append_1)
+@CROSS_FALSE@stage1flex_LDADD = $(LDADD)
+@CROSS_TRUE@stage1flex_LDADD =
+@CROSS_FALSE@stage1flex_LINK = $(LINK)
+@CROSS_TRUE@stage1flex_LINK = $(LIBTOOL) --tag=CC --mode=link $(CC_FOR_BUILD) \
+@CROSS_TRUE@ $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@
+
+@CROSS_FALSE@stage1flex_CFLAGS = $(AM_CFLAGS)
flex_SOURCES = \
- stage1scan.l \
$(COMMON_SOURCES)
+nodist_flex_SOURCES = \
+ stage1scan.c
+
+flex_CFLAGS = $(AM_CFLAGS) $(WARNINGFLAGS)
COMMON_SOURCES = \
buf.c \
ccl.c \
dfa.c \
ecs.c \
filter.c \
+ flexdef.h \
+ flexint.h \
gen.c \
main.c \
misc.c \
nfa.c \
options.c \
+ options.h \
parse.y \
regex.c \
scanflags.c \
scanopt.c \
+ scanopt.h \
skel.c \
sym.c \
tables.c \
+ tables.h \
tables_shared.c \
+ tables_shared.h \
tblcmp.c \
- yylex.c
-
-LDADD = ../lib/libcompat.la @LIBINTL@
-libfl_la_SOURCES = \
- libmain.c \
- libyywrap.c
-
-libfl_la_LDFLAGS = -version-info @SHARED_VERSION_INFO@
-libfl_pic_la_SOURCES = \
- libmain.c \
- libyywrap.c
-
-libfl_pic_la_LDFLAGS = -version-info @SHARED_VERSION_INFO@
-noinst_HEADERS = \
- flexdef.h \
- flexint.h \
version.h \
- options.h \
- scanopt.h \
- tables.h \
- tables_shared.h
+ yylex.c
+LDADD = $(LIBOBJS) @LIBINTL@
include_HEADERS = \
FlexLexer.h
@@ -470,7 +504,7 @@ EXTRA_DIST = \
mkskel.sh \
gettext.h
-DISTCLEANFILES = stage1scan.c
+CLEANFILES = stage1scan.c stage1flex$(EXEEXT)
MAINTAINERCLEANFILES = skel.c
# Run GNU indent on sources. Don't run this unless all the sources compile cleanly.
@@ -522,9 +556,9 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Makefile'; \
$(am__cd) $(top_srcdir) && \
- $(AUTOMAKE) --gnu src/Makefile
+ $(AUTOMAKE) --foreign src/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -594,10 +628,7 @@ clean-libLTLIBRARIES:
}
libfl.la: $(libfl_la_OBJECTS) $(libfl_la_DEPENDENCIES) $(EXTRA_libfl_la_DEPENDENCIES)
- $(AM_V_CCLD)$(libfl_la_LINK) -rpath $(libdir) $(libfl_la_OBJECTS) $(libfl_la_LIBADD) $(LIBS)
-
-libfl_pic.la: $(libfl_pic_la_OBJECTS) $(libfl_pic_la_DEPENDENCIES) $(EXTRA_libfl_pic_la_DEPENDENCIES)
- $(AM_V_CCLD)$(libfl_pic_la_LINK) -rpath $(libdir) $(libfl_pic_la_OBJECTS) $(libfl_pic_la_LIBADD) $(LIBS)
+ $(AM_V_CCLD)$(libfl_la_LINK) $(am_libfl_la_rpath) $(libfl_la_OBJECTS) $(libfl_la_LIBADD) $(LIBS)
install-binPROGRAMS: $(bin_PROGRAMS)
@$(NORMAL_INSTALL)
@list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
@@ -678,64 +709,718 @@ parse.h: parse.c
flex$(EXEEXT): $(flex_OBJECTS) $(flex_DEPENDENCIES) $(EXTRA_flex_DEPENDENCIES)
@rm -f flex$(EXEEXT)
- $(AM_V_CCLD)$(LINK) $(flex_OBJECTS) $(flex_LDADD) $(LIBS)
+ $(AM_V_CCLD)$(flex_LINK) $(flex_OBJECTS) $(flex_LDADD) $(LIBS)
+../lib/$(am__dirstamp):
+ @$(MKDIR_P) ../lib
+ @: > ../lib/$(am__dirstamp)
+../lib/$(DEPDIR)/$(am__dirstamp):
+ @$(MKDIR_P) ../lib/$(DEPDIR)
+ @: > ../lib/$(DEPDIR)/$(am__dirstamp)
+../lib/stage1flex-malloc.$(OBJEXT): ../lib/$(am__dirstamp) \
+ ../lib/$(DEPDIR)/$(am__dirstamp)
+../lib/stage1flex-realloc.$(OBJEXT): ../lib/$(am__dirstamp) \
+ ../lib/$(DEPDIR)/$(am__dirstamp)
stage1flex$(EXEEXT): $(stage1flex_OBJECTS) $(stage1flex_DEPENDENCIES) $(EXTRA_stage1flex_DEPENDENCIES)
@rm -f stage1flex$(EXEEXT)
- $(AM_V_CCLD)$(LINK) $(stage1flex_OBJECTS) $(stage1flex_LDADD) $(LIBS)
+ $(AM_V_GEN)$(stage1flex_LINK) $(stage1flex_OBJECTS) $(stage1flex_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
+ -rm -f ../lib/*.$(OBJEXT)
distclean-compile:
-rm -f *.tab.c
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/buf.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ccl.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dfa.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ecs.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/filter.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gen.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../lib/$(DEPDIR)/malloc.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../lib/$(DEPDIR)/realloc.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../lib/$(DEPDIR)/stage1flex-malloc.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@../lib/$(DEPDIR)/stage1flex-realloc.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-buf.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-ccl.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-dfa.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-ecs.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-filter.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-gen.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-main.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-misc.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-nfa.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-options.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-parse.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-regex.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-scanflags.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-scanopt.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-skel.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-stage1scan.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-sym.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-tables.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-tables_shared.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-tblcmp.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/flex-yylex.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmain.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libyywrap.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/main.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/misc.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nfa.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/options.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/parse.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/regex.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scan.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scanflags.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scanopt.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/skel.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1scan.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sym.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tables.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tables_shared.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tblcmp.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/yylex.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-buf.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-ccl.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-dfa.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-ecs.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-filter.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-gen.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-main.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-misc.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-nfa.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-options.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-parse.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-regex.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-scan.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-scanflags.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-scanopt.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-skel.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-sym.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-tables.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-tables_shared.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-tblcmp.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stage1flex-yylex.Po@am__quote@
.c.o:
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
+@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
+@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
+@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
+@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
.c.lo:
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo
+@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
+@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
+@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
+flex-buf.o: buf.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-buf.o -MD -MP -MF $(DEPDIR)/flex-buf.Tpo -c -o flex-buf.o `test -f 'buf.c' || echo '$(srcdir)/'`buf.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-buf.Tpo $(DEPDIR)/flex-buf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='buf.c' object='flex-buf.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-buf.o `test -f 'buf.c' || echo '$(srcdir)/'`buf.c
+
+flex-buf.obj: buf.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-buf.obj -MD -MP -MF $(DEPDIR)/flex-buf.Tpo -c -o flex-buf.obj `if test -f 'buf.c'; then $(CYGPATH_W) 'buf.c'; else $(CYGPATH_W) '$(srcdir)/buf.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-buf.Tpo $(DEPDIR)/flex-buf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='buf.c' object='flex-buf.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-buf.obj `if test -f 'buf.c'; then $(CYGPATH_W) 'buf.c'; else $(CYGPATH_W) '$(srcdir)/buf.c'; fi`
+
+flex-ccl.o: ccl.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-ccl.o -MD -MP -MF $(DEPDIR)/flex-ccl.Tpo -c -o flex-ccl.o `test -f 'ccl.c' || echo '$(srcdir)/'`ccl.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-ccl.Tpo $(DEPDIR)/flex-ccl.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ccl.c' object='flex-ccl.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-ccl.o `test -f 'ccl.c' || echo '$(srcdir)/'`ccl.c
+
+flex-ccl.obj: ccl.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-ccl.obj -MD -MP -MF $(DEPDIR)/flex-ccl.Tpo -c -o flex-ccl.obj `if test -f 'ccl.c'; then $(CYGPATH_W) 'ccl.c'; else $(CYGPATH_W) '$(srcdir)/ccl.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-ccl.Tpo $(DEPDIR)/flex-ccl.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ccl.c' object='flex-ccl.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-ccl.obj `if test -f 'ccl.c'; then $(CYGPATH_W) 'ccl.c'; else $(CYGPATH_W) '$(srcdir)/ccl.c'; fi`
+
+flex-dfa.o: dfa.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-dfa.o -MD -MP -MF $(DEPDIR)/flex-dfa.Tpo -c -o flex-dfa.o `test -f 'dfa.c' || echo '$(srcdir)/'`dfa.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-dfa.Tpo $(DEPDIR)/flex-dfa.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dfa.c' object='flex-dfa.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-dfa.o `test -f 'dfa.c' || echo '$(srcdir)/'`dfa.c
+
+flex-dfa.obj: dfa.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-dfa.obj -MD -MP -MF $(DEPDIR)/flex-dfa.Tpo -c -o flex-dfa.obj `if test -f 'dfa.c'; then $(CYGPATH_W) 'dfa.c'; else $(CYGPATH_W) '$(srcdir)/dfa.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-dfa.Tpo $(DEPDIR)/flex-dfa.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dfa.c' object='flex-dfa.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-dfa.obj `if test -f 'dfa.c'; then $(CYGPATH_W) 'dfa.c'; else $(CYGPATH_W) '$(srcdir)/dfa.c'; fi`
+
+flex-ecs.o: ecs.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-ecs.o -MD -MP -MF $(DEPDIR)/flex-ecs.Tpo -c -o flex-ecs.o `test -f 'ecs.c' || echo '$(srcdir)/'`ecs.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-ecs.Tpo $(DEPDIR)/flex-ecs.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ecs.c' object='flex-ecs.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-ecs.o `test -f 'ecs.c' || echo '$(srcdir)/'`ecs.c
+
+flex-ecs.obj: ecs.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-ecs.obj -MD -MP -MF $(DEPDIR)/flex-ecs.Tpo -c -o flex-ecs.obj `if test -f 'ecs.c'; then $(CYGPATH_W) 'ecs.c'; else $(CYGPATH_W) '$(srcdir)/ecs.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-ecs.Tpo $(DEPDIR)/flex-ecs.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ecs.c' object='flex-ecs.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-ecs.obj `if test -f 'ecs.c'; then $(CYGPATH_W) 'ecs.c'; else $(CYGPATH_W) '$(srcdir)/ecs.c'; fi`
+
+flex-filter.o: filter.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-filter.o -MD -MP -MF $(DEPDIR)/flex-filter.Tpo -c -o flex-filter.o `test -f 'filter.c' || echo '$(srcdir)/'`filter.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-filter.Tpo $(DEPDIR)/flex-filter.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='filter.c' object='flex-filter.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-filter.o `test -f 'filter.c' || echo '$(srcdir)/'`filter.c
+
+flex-filter.obj: filter.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-filter.obj -MD -MP -MF $(DEPDIR)/flex-filter.Tpo -c -o flex-filter.obj `if test -f 'filter.c'; then $(CYGPATH_W) 'filter.c'; else $(CYGPATH_W) '$(srcdir)/filter.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-filter.Tpo $(DEPDIR)/flex-filter.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='filter.c' object='flex-filter.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-filter.obj `if test -f 'filter.c'; then $(CYGPATH_W) 'filter.c'; else $(CYGPATH_W) '$(srcdir)/filter.c'; fi`
+
+flex-gen.o: gen.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-gen.o -MD -MP -MF $(DEPDIR)/flex-gen.Tpo -c -o flex-gen.o `test -f 'gen.c' || echo '$(srcdir)/'`gen.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-gen.Tpo $(DEPDIR)/flex-gen.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gen.c' object='flex-gen.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-gen.o `test -f 'gen.c' || echo '$(srcdir)/'`gen.c
+
+flex-gen.obj: gen.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-gen.obj -MD -MP -MF $(DEPDIR)/flex-gen.Tpo -c -o flex-gen.obj `if test -f 'gen.c'; then $(CYGPATH_W) 'gen.c'; else $(CYGPATH_W) '$(srcdir)/gen.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-gen.Tpo $(DEPDIR)/flex-gen.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gen.c' object='flex-gen.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-gen.obj `if test -f 'gen.c'; then $(CYGPATH_W) 'gen.c'; else $(CYGPATH_W) '$(srcdir)/gen.c'; fi`
+
+flex-main.o: main.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-main.o -MD -MP -MF $(DEPDIR)/flex-main.Tpo -c -o flex-main.o `test -f 'main.c' || echo '$(srcdir)/'`main.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-main.Tpo $(DEPDIR)/flex-main.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='main.c' object='flex-main.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-main.o `test -f 'main.c' || echo '$(srcdir)/'`main.c
+
+flex-main.obj: main.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-main.obj -MD -MP -MF $(DEPDIR)/flex-main.Tpo -c -o flex-main.obj `if test -f 'main.c'; then $(CYGPATH_W) 'main.c'; else $(CYGPATH_W) '$(srcdir)/main.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-main.Tpo $(DEPDIR)/flex-main.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='main.c' object='flex-main.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-main.obj `if test -f 'main.c'; then $(CYGPATH_W) 'main.c'; else $(CYGPATH_W) '$(srcdir)/main.c'; fi`
+
+flex-misc.o: misc.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-misc.o -MD -MP -MF $(DEPDIR)/flex-misc.Tpo -c -o flex-misc.o `test -f 'misc.c' || echo '$(srcdir)/'`misc.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-misc.Tpo $(DEPDIR)/flex-misc.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='misc.c' object='flex-misc.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-misc.o `test -f 'misc.c' || echo '$(srcdir)/'`misc.c
+
+flex-misc.obj: misc.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-misc.obj -MD -MP -MF $(DEPDIR)/flex-misc.Tpo -c -o flex-misc.obj `if test -f 'misc.c'; then $(CYGPATH_W) 'misc.c'; else $(CYGPATH_W) '$(srcdir)/misc.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-misc.Tpo $(DEPDIR)/flex-misc.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='misc.c' object='flex-misc.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-misc.obj `if test -f 'misc.c'; then $(CYGPATH_W) 'misc.c'; else $(CYGPATH_W) '$(srcdir)/misc.c'; fi`
+
+flex-nfa.o: nfa.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-nfa.o -MD -MP -MF $(DEPDIR)/flex-nfa.Tpo -c -o flex-nfa.o `test -f 'nfa.c' || echo '$(srcdir)/'`nfa.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-nfa.Tpo $(DEPDIR)/flex-nfa.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='nfa.c' object='flex-nfa.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-nfa.o `test -f 'nfa.c' || echo '$(srcdir)/'`nfa.c
+
+flex-nfa.obj: nfa.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-nfa.obj -MD -MP -MF $(DEPDIR)/flex-nfa.Tpo -c -o flex-nfa.obj `if test -f 'nfa.c'; then $(CYGPATH_W) 'nfa.c'; else $(CYGPATH_W) '$(srcdir)/nfa.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-nfa.Tpo $(DEPDIR)/flex-nfa.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='nfa.c' object='flex-nfa.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-nfa.obj `if test -f 'nfa.c'; then $(CYGPATH_W) 'nfa.c'; else $(CYGPATH_W) '$(srcdir)/nfa.c'; fi`
+
+flex-options.o: options.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-options.o -MD -MP -MF $(DEPDIR)/flex-options.Tpo -c -o flex-options.o `test -f 'options.c' || echo '$(srcdir)/'`options.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-options.Tpo $(DEPDIR)/flex-options.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='options.c' object='flex-options.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-options.o `test -f 'options.c' || echo '$(srcdir)/'`options.c
+
+flex-options.obj: options.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-options.obj -MD -MP -MF $(DEPDIR)/flex-options.Tpo -c -o flex-options.obj `if test -f 'options.c'; then $(CYGPATH_W) 'options.c'; else $(CYGPATH_W) '$(srcdir)/options.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-options.Tpo $(DEPDIR)/flex-options.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='options.c' object='flex-options.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-options.obj `if test -f 'options.c'; then $(CYGPATH_W) 'options.c'; else $(CYGPATH_W) '$(srcdir)/options.c'; fi`
+
+flex-parse.o: parse.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-parse.o -MD -MP -MF $(DEPDIR)/flex-parse.Tpo -c -o flex-parse.o `test -f 'parse.c' || echo '$(srcdir)/'`parse.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-parse.Tpo $(DEPDIR)/flex-parse.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parse.c' object='flex-parse.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-parse.o `test -f 'parse.c' || echo '$(srcdir)/'`parse.c
+
+flex-parse.obj: parse.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-parse.obj -MD -MP -MF $(DEPDIR)/flex-parse.Tpo -c -o flex-parse.obj `if test -f 'parse.c'; then $(CYGPATH_W) 'parse.c'; else $(CYGPATH_W) '$(srcdir)/parse.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-parse.Tpo $(DEPDIR)/flex-parse.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parse.c' object='flex-parse.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-parse.obj `if test -f 'parse.c'; then $(CYGPATH_W) 'parse.c'; else $(CYGPATH_W) '$(srcdir)/parse.c'; fi`
+
+flex-regex.o: regex.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-regex.o -MD -MP -MF $(DEPDIR)/flex-regex.Tpo -c -o flex-regex.o `test -f 'regex.c' || echo '$(srcdir)/'`regex.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-regex.Tpo $(DEPDIR)/flex-regex.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='regex.c' object='flex-regex.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-regex.o `test -f 'regex.c' || echo '$(srcdir)/'`regex.c
+
+flex-regex.obj: regex.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-regex.obj -MD -MP -MF $(DEPDIR)/flex-regex.Tpo -c -o flex-regex.obj `if test -f 'regex.c'; then $(CYGPATH_W) 'regex.c'; else $(CYGPATH_W) '$(srcdir)/regex.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-regex.Tpo $(DEPDIR)/flex-regex.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='regex.c' object='flex-regex.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-regex.obj `if test -f 'regex.c'; then $(CYGPATH_W) 'regex.c'; else $(CYGPATH_W) '$(srcdir)/regex.c'; fi`
+
+flex-scanflags.o: scanflags.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-scanflags.o -MD -MP -MF $(DEPDIR)/flex-scanflags.Tpo -c -o flex-scanflags.o `test -f 'scanflags.c' || echo '$(srcdir)/'`scanflags.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-scanflags.Tpo $(DEPDIR)/flex-scanflags.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='scanflags.c' object='flex-scanflags.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-scanflags.o `test -f 'scanflags.c' || echo '$(srcdir)/'`scanflags.c
+
+flex-scanflags.obj: scanflags.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-scanflags.obj -MD -MP -MF $(DEPDIR)/flex-scanflags.Tpo -c -o flex-scanflags.obj `if test -f 'scanflags.c'; then $(CYGPATH_W) 'scanflags.c'; else $(CYGPATH_W) '$(srcdir)/scanflags.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-scanflags.Tpo $(DEPDIR)/flex-scanflags.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='scanflags.c' object='flex-scanflags.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-scanflags.obj `if test -f 'scanflags.c'; then $(CYGPATH_W) 'scanflags.c'; else $(CYGPATH_W) '$(srcdir)/scanflags.c'; fi`
+
+flex-scanopt.o: scanopt.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-scanopt.o -MD -MP -MF $(DEPDIR)/flex-scanopt.Tpo -c -o flex-scanopt.o `test -f 'scanopt.c' || echo '$(srcdir)/'`scanopt.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-scanopt.Tpo $(DEPDIR)/flex-scanopt.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='scanopt.c' object='flex-scanopt.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-scanopt.o `test -f 'scanopt.c' || echo '$(srcdir)/'`scanopt.c
+
+flex-scanopt.obj: scanopt.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-scanopt.obj -MD -MP -MF $(DEPDIR)/flex-scanopt.Tpo -c -o flex-scanopt.obj `if test -f 'scanopt.c'; then $(CYGPATH_W) 'scanopt.c'; else $(CYGPATH_W) '$(srcdir)/scanopt.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-scanopt.Tpo $(DEPDIR)/flex-scanopt.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='scanopt.c' object='flex-scanopt.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-scanopt.obj `if test -f 'scanopt.c'; then $(CYGPATH_W) 'scanopt.c'; else $(CYGPATH_W) '$(srcdir)/scanopt.c'; fi`
+
+flex-skel.o: skel.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-skel.o -MD -MP -MF $(DEPDIR)/flex-skel.Tpo -c -o flex-skel.o `test -f 'skel.c' || echo '$(srcdir)/'`skel.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-skel.Tpo $(DEPDIR)/flex-skel.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='skel.c' object='flex-skel.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-skel.o `test -f 'skel.c' || echo '$(srcdir)/'`skel.c
+
+flex-skel.obj: skel.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-skel.obj -MD -MP -MF $(DEPDIR)/flex-skel.Tpo -c -o flex-skel.obj `if test -f 'skel.c'; then $(CYGPATH_W) 'skel.c'; else $(CYGPATH_W) '$(srcdir)/skel.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-skel.Tpo $(DEPDIR)/flex-skel.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='skel.c' object='flex-skel.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-skel.obj `if test -f 'skel.c'; then $(CYGPATH_W) 'skel.c'; else $(CYGPATH_W) '$(srcdir)/skel.c'; fi`
+
+flex-sym.o: sym.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-sym.o -MD -MP -MF $(DEPDIR)/flex-sym.Tpo -c -o flex-sym.o `test -f 'sym.c' || echo '$(srcdir)/'`sym.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-sym.Tpo $(DEPDIR)/flex-sym.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sym.c' object='flex-sym.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-sym.o `test -f 'sym.c' || echo '$(srcdir)/'`sym.c
+
+flex-sym.obj: sym.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-sym.obj -MD -MP -MF $(DEPDIR)/flex-sym.Tpo -c -o flex-sym.obj `if test -f 'sym.c'; then $(CYGPATH_W) 'sym.c'; else $(CYGPATH_W) '$(srcdir)/sym.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-sym.Tpo $(DEPDIR)/flex-sym.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sym.c' object='flex-sym.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-sym.obj `if test -f 'sym.c'; then $(CYGPATH_W) 'sym.c'; else $(CYGPATH_W) '$(srcdir)/sym.c'; fi`
+
+flex-tables.o: tables.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-tables.o -MD -MP -MF $(DEPDIR)/flex-tables.Tpo -c -o flex-tables.o `test -f 'tables.c' || echo '$(srcdir)/'`tables.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-tables.Tpo $(DEPDIR)/flex-tables.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tables.c' object='flex-tables.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-tables.o `test -f 'tables.c' || echo '$(srcdir)/'`tables.c
+
+flex-tables.obj: tables.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-tables.obj -MD -MP -MF $(DEPDIR)/flex-tables.Tpo -c -o flex-tables.obj `if test -f 'tables.c'; then $(CYGPATH_W) 'tables.c'; else $(CYGPATH_W) '$(srcdir)/tables.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-tables.Tpo $(DEPDIR)/flex-tables.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tables.c' object='flex-tables.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-tables.obj `if test -f 'tables.c'; then $(CYGPATH_W) 'tables.c'; else $(CYGPATH_W) '$(srcdir)/tables.c'; fi`
+
+flex-tables_shared.o: tables_shared.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-tables_shared.o -MD -MP -MF $(DEPDIR)/flex-tables_shared.Tpo -c -o flex-tables_shared.o `test -f 'tables_shared.c' || echo '$(srcdir)/'`tables_shared.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-tables_shared.Tpo $(DEPDIR)/flex-tables_shared.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tables_shared.c' object='flex-tables_shared.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-tables_shared.o `test -f 'tables_shared.c' || echo '$(srcdir)/'`tables_shared.c
+
+flex-tables_shared.obj: tables_shared.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-tables_shared.obj -MD -MP -MF $(DEPDIR)/flex-tables_shared.Tpo -c -o flex-tables_shared.obj `if test -f 'tables_shared.c'; then $(CYGPATH_W) 'tables_shared.c'; else $(CYGPATH_W) '$(srcdir)/tables_shared.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-tables_shared.Tpo $(DEPDIR)/flex-tables_shared.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tables_shared.c' object='flex-tables_shared.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-tables_shared.obj `if test -f 'tables_shared.c'; then $(CYGPATH_W) 'tables_shared.c'; else $(CYGPATH_W) '$(srcdir)/tables_shared.c'; fi`
+
+flex-tblcmp.o: tblcmp.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-tblcmp.o -MD -MP -MF $(DEPDIR)/flex-tblcmp.Tpo -c -o flex-tblcmp.o `test -f 'tblcmp.c' || echo '$(srcdir)/'`tblcmp.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-tblcmp.Tpo $(DEPDIR)/flex-tblcmp.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tblcmp.c' object='flex-tblcmp.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-tblcmp.o `test -f 'tblcmp.c' || echo '$(srcdir)/'`tblcmp.c
+
+flex-tblcmp.obj: tblcmp.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-tblcmp.obj -MD -MP -MF $(DEPDIR)/flex-tblcmp.Tpo -c -o flex-tblcmp.obj `if test -f 'tblcmp.c'; then $(CYGPATH_W) 'tblcmp.c'; else $(CYGPATH_W) '$(srcdir)/tblcmp.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-tblcmp.Tpo $(DEPDIR)/flex-tblcmp.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tblcmp.c' object='flex-tblcmp.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-tblcmp.obj `if test -f 'tblcmp.c'; then $(CYGPATH_W) 'tblcmp.c'; else $(CYGPATH_W) '$(srcdir)/tblcmp.c'; fi`
+
+flex-yylex.o: yylex.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-yylex.o -MD -MP -MF $(DEPDIR)/flex-yylex.Tpo -c -o flex-yylex.o `test -f 'yylex.c' || echo '$(srcdir)/'`yylex.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-yylex.Tpo $(DEPDIR)/flex-yylex.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='yylex.c' object='flex-yylex.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-yylex.o `test -f 'yylex.c' || echo '$(srcdir)/'`yylex.c
+
+flex-yylex.obj: yylex.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-yylex.obj -MD -MP -MF $(DEPDIR)/flex-yylex.Tpo -c -o flex-yylex.obj `if test -f 'yylex.c'; then $(CYGPATH_W) 'yylex.c'; else $(CYGPATH_W) '$(srcdir)/yylex.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-yylex.Tpo $(DEPDIR)/flex-yylex.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='yylex.c' object='flex-yylex.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-yylex.obj `if test -f 'yylex.c'; then $(CYGPATH_W) 'yylex.c'; else $(CYGPATH_W) '$(srcdir)/yylex.c'; fi`
+
+flex-stage1scan.o: stage1scan.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-stage1scan.o -MD -MP -MF $(DEPDIR)/flex-stage1scan.Tpo -c -o flex-stage1scan.o `test -f 'stage1scan.c' || echo '$(srcdir)/'`stage1scan.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-stage1scan.Tpo $(DEPDIR)/flex-stage1scan.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stage1scan.c' object='flex-stage1scan.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-stage1scan.o `test -f 'stage1scan.c' || echo '$(srcdir)/'`stage1scan.c
+
+flex-stage1scan.obj: stage1scan.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -MT flex-stage1scan.obj -MD -MP -MF $(DEPDIR)/flex-stage1scan.Tpo -c -o flex-stage1scan.obj `if test -f 'stage1scan.c'; then $(CYGPATH_W) 'stage1scan.c'; else $(CYGPATH_W) '$(srcdir)/stage1scan.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/flex-stage1scan.Tpo $(DEPDIR)/flex-stage1scan.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='stage1scan.c' object='flex-stage1scan.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(flex_CFLAGS) $(CFLAGS) -c -o flex-stage1scan.obj `if test -f 'stage1scan.c'; then $(CYGPATH_W) 'stage1scan.c'; else $(CYGPATH_W) '$(srcdir)/stage1scan.c'; fi`
+
+stage1flex-scan.o: scan.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-scan.o -MD -MP -MF $(DEPDIR)/stage1flex-scan.Tpo -c -o stage1flex-scan.o `test -f 'scan.c' || echo '$(srcdir)/'`scan.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-scan.Tpo $(DEPDIR)/stage1flex-scan.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='scan.c' object='stage1flex-scan.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-scan.o `test -f 'scan.c' || echo '$(srcdir)/'`scan.c
+
+stage1flex-scan.obj: scan.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-scan.obj -MD -MP -MF $(DEPDIR)/stage1flex-scan.Tpo -c -o stage1flex-scan.obj `if test -f 'scan.c'; then $(CYGPATH_W) 'scan.c'; else $(CYGPATH_W) '$(srcdir)/scan.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-scan.Tpo $(DEPDIR)/stage1flex-scan.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='scan.c' object='stage1flex-scan.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-scan.obj `if test -f 'scan.c'; then $(CYGPATH_W) 'scan.c'; else $(CYGPATH_W) '$(srcdir)/scan.c'; fi`
+
+stage1flex-buf.o: buf.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-buf.o -MD -MP -MF $(DEPDIR)/stage1flex-buf.Tpo -c -o stage1flex-buf.o `test -f 'buf.c' || echo '$(srcdir)/'`buf.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-buf.Tpo $(DEPDIR)/stage1flex-buf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='buf.c' object='stage1flex-buf.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-buf.o `test -f 'buf.c' || echo '$(srcdir)/'`buf.c
+
+stage1flex-buf.obj: buf.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-buf.obj -MD -MP -MF $(DEPDIR)/stage1flex-buf.Tpo -c -o stage1flex-buf.obj `if test -f 'buf.c'; then $(CYGPATH_W) 'buf.c'; else $(CYGPATH_W) '$(srcdir)/buf.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-buf.Tpo $(DEPDIR)/stage1flex-buf.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='buf.c' object='stage1flex-buf.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-buf.obj `if test -f 'buf.c'; then $(CYGPATH_W) 'buf.c'; else $(CYGPATH_W) '$(srcdir)/buf.c'; fi`
+
+stage1flex-ccl.o: ccl.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-ccl.o -MD -MP -MF $(DEPDIR)/stage1flex-ccl.Tpo -c -o stage1flex-ccl.o `test -f 'ccl.c' || echo '$(srcdir)/'`ccl.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-ccl.Tpo $(DEPDIR)/stage1flex-ccl.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ccl.c' object='stage1flex-ccl.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-ccl.o `test -f 'ccl.c' || echo '$(srcdir)/'`ccl.c
+
+stage1flex-ccl.obj: ccl.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-ccl.obj -MD -MP -MF $(DEPDIR)/stage1flex-ccl.Tpo -c -o stage1flex-ccl.obj `if test -f 'ccl.c'; then $(CYGPATH_W) 'ccl.c'; else $(CYGPATH_W) '$(srcdir)/ccl.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-ccl.Tpo $(DEPDIR)/stage1flex-ccl.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ccl.c' object='stage1flex-ccl.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-ccl.obj `if test -f 'ccl.c'; then $(CYGPATH_W) 'ccl.c'; else $(CYGPATH_W) '$(srcdir)/ccl.c'; fi`
+
+stage1flex-dfa.o: dfa.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-dfa.o -MD -MP -MF $(DEPDIR)/stage1flex-dfa.Tpo -c -o stage1flex-dfa.o `test -f 'dfa.c' || echo '$(srcdir)/'`dfa.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-dfa.Tpo $(DEPDIR)/stage1flex-dfa.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dfa.c' object='stage1flex-dfa.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-dfa.o `test -f 'dfa.c' || echo '$(srcdir)/'`dfa.c
+
+stage1flex-dfa.obj: dfa.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-dfa.obj -MD -MP -MF $(DEPDIR)/stage1flex-dfa.Tpo -c -o stage1flex-dfa.obj `if test -f 'dfa.c'; then $(CYGPATH_W) 'dfa.c'; else $(CYGPATH_W) '$(srcdir)/dfa.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-dfa.Tpo $(DEPDIR)/stage1flex-dfa.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dfa.c' object='stage1flex-dfa.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-dfa.obj `if test -f 'dfa.c'; then $(CYGPATH_W) 'dfa.c'; else $(CYGPATH_W) '$(srcdir)/dfa.c'; fi`
+
+stage1flex-ecs.o: ecs.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-ecs.o -MD -MP -MF $(DEPDIR)/stage1flex-ecs.Tpo -c -o stage1flex-ecs.o `test -f 'ecs.c' || echo '$(srcdir)/'`ecs.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-ecs.Tpo $(DEPDIR)/stage1flex-ecs.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ecs.c' object='stage1flex-ecs.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-ecs.o `test -f 'ecs.c' || echo '$(srcdir)/'`ecs.c
+
+stage1flex-ecs.obj: ecs.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-ecs.obj -MD -MP -MF $(DEPDIR)/stage1flex-ecs.Tpo -c -o stage1flex-ecs.obj `if test -f 'ecs.c'; then $(CYGPATH_W) 'ecs.c'; else $(CYGPATH_W) '$(srcdir)/ecs.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-ecs.Tpo $(DEPDIR)/stage1flex-ecs.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ecs.c' object='stage1flex-ecs.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-ecs.obj `if test -f 'ecs.c'; then $(CYGPATH_W) 'ecs.c'; else $(CYGPATH_W) '$(srcdir)/ecs.c'; fi`
+
+stage1flex-filter.o: filter.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-filter.o -MD -MP -MF $(DEPDIR)/stage1flex-filter.Tpo -c -o stage1flex-filter.o `test -f 'filter.c' || echo '$(srcdir)/'`filter.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-filter.Tpo $(DEPDIR)/stage1flex-filter.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='filter.c' object='stage1flex-filter.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-filter.o `test -f 'filter.c' || echo '$(srcdir)/'`filter.c
+
+stage1flex-filter.obj: filter.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-filter.obj -MD -MP -MF $(DEPDIR)/stage1flex-filter.Tpo -c -o stage1flex-filter.obj `if test -f 'filter.c'; then $(CYGPATH_W) 'filter.c'; else $(CYGPATH_W) '$(srcdir)/filter.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-filter.Tpo $(DEPDIR)/stage1flex-filter.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='filter.c' object='stage1flex-filter.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-filter.obj `if test -f 'filter.c'; then $(CYGPATH_W) 'filter.c'; else $(CYGPATH_W) '$(srcdir)/filter.c'; fi`
+
+stage1flex-gen.o: gen.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-gen.o -MD -MP -MF $(DEPDIR)/stage1flex-gen.Tpo -c -o stage1flex-gen.o `test -f 'gen.c' || echo '$(srcdir)/'`gen.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-gen.Tpo $(DEPDIR)/stage1flex-gen.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gen.c' object='stage1flex-gen.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-gen.o `test -f 'gen.c' || echo '$(srcdir)/'`gen.c
+
+stage1flex-gen.obj: gen.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-gen.obj -MD -MP -MF $(DEPDIR)/stage1flex-gen.Tpo -c -o stage1flex-gen.obj `if test -f 'gen.c'; then $(CYGPATH_W) 'gen.c'; else $(CYGPATH_W) '$(srcdir)/gen.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-gen.Tpo $(DEPDIR)/stage1flex-gen.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='gen.c' object='stage1flex-gen.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-gen.obj `if test -f 'gen.c'; then $(CYGPATH_W) 'gen.c'; else $(CYGPATH_W) '$(srcdir)/gen.c'; fi`
+
+stage1flex-main.o: main.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-main.o -MD -MP -MF $(DEPDIR)/stage1flex-main.Tpo -c -o stage1flex-main.o `test -f 'main.c' || echo '$(srcdir)/'`main.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-main.Tpo $(DEPDIR)/stage1flex-main.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='main.c' object='stage1flex-main.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-main.o `test -f 'main.c' || echo '$(srcdir)/'`main.c
+
+stage1flex-main.obj: main.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-main.obj -MD -MP -MF $(DEPDIR)/stage1flex-main.Tpo -c -o stage1flex-main.obj `if test -f 'main.c'; then $(CYGPATH_W) 'main.c'; else $(CYGPATH_W) '$(srcdir)/main.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-main.Tpo $(DEPDIR)/stage1flex-main.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='main.c' object='stage1flex-main.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-main.obj `if test -f 'main.c'; then $(CYGPATH_W) 'main.c'; else $(CYGPATH_W) '$(srcdir)/main.c'; fi`
+
+stage1flex-misc.o: misc.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-misc.o -MD -MP -MF $(DEPDIR)/stage1flex-misc.Tpo -c -o stage1flex-misc.o `test -f 'misc.c' || echo '$(srcdir)/'`misc.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-misc.Tpo $(DEPDIR)/stage1flex-misc.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='misc.c' object='stage1flex-misc.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-misc.o `test -f 'misc.c' || echo '$(srcdir)/'`misc.c
+
+stage1flex-misc.obj: misc.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-misc.obj -MD -MP -MF $(DEPDIR)/stage1flex-misc.Tpo -c -o stage1flex-misc.obj `if test -f 'misc.c'; then $(CYGPATH_W) 'misc.c'; else $(CYGPATH_W) '$(srcdir)/misc.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-misc.Tpo $(DEPDIR)/stage1flex-misc.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='misc.c' object='stage1flex-misc.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-misc.obj `if test -f 'misc.c'; then $(CYGPATH_W) 'misc.c'; else $(CYGPATH_W) '$(srcdir)/misc.c'; fi`
+
+stage1flex-nfa.o: nfa.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-nfa.o -MD -MP -MF $(DEPDIR)/stage1flex-nfa.Tpo -c -o stage1flex-nfa.o `test -f 'nfa.c' || echo '$(srcdir)/'`nfa.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-nfa.Tpo $(DEPDIR)/stage1flex-nfa.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='nfa.c' object='stage1flex-nfa.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-nfa.o `test -f 'nfa.c' || echo '$(srcdir)/'`nfa.c
+
+stage1flex-nfa.obj: nfa.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-nfa.obj -MD -MP -MF $(DEPDIR)/stage1flex-nfa.Tpo -c -o stage1flex-nfa.obj `if test -f 'nfa.c'; then $(CYGPATH_W) 'nfa.c'; else $(CYGPATH_W) '$(srcdir)/nfa.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-nfa.Tpo $(DEPDIR)/stage1flex-nfa.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='nfa.c' object='stage1flex-nfa.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-nfa.obj `if test -f 'nfa.c'; then $(CYGPATH_W) 'nfa.c'; else $(CYGPATH_W) '$(srcdir)/nfa.c'; fi`
+
+stage1flex-options.o: options.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-options.o -MD -MP -MF $(DEPDIR)/stage1flex-options.Tpo -c -o stage1flex-options.o `test -f 'options.c' || echo '$(srcdir)/'`options.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-options.Tpo $(DEPDIR)/stage1flex-options.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='options.c' object='stage1flex-options.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-options.o `test -f 'options.c' || echo '$(srcdir)/'`options.c
+
+stage1flex-options.obj: options.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-options.obj -MD -MP -MF $(DEPDIR)/stage1flex-options.Tpo -c -o stage1flex-options.obj `if test -f 'options.c'; then $(CYGPATH_W) 'options.c'; else $(CYGPATH_W) '$(srcdir)/options.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-options.Tpo $(DEPDIR)/stage1flex-options.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='options.c' object='stage1flex-options.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-options.obj `if test -f 'options.c'; then $(CYGPATH_W) 'options.c'; else $(CYGPATH_W) '$(srcdir)/options.c'; fi`
+
+stage1flex-parse.o: parse.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-parse.o -MD -MP -MF $(DEPDIR)/stage1flex-parse.Tpo -c -o stage1flex-parse.o `test -f 'parse.c' || echo '$(srcdir)/'`parse.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-parse.Tpo $(DEPDIR)/stage1flex-parse.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parse.c' object='stage1flex-parse.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-parse.o `test -f 'parse.c' || echo '$(srcdir)/'`parse.c
+
+stage1flex-parse.obj: parse.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-parse.obj -MD -MP -MF $(DEPDIR)/stage1flex-parse.Tpo -c -o stage1flex-parse.obj `if test -f 'parse.c'; then $(CYGPATH_W) 'parse.c'; else $(CYGPATH_W) '$(srcdir)/parse.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-parse.Tpo $(DEPDIR)/stage1flex-parse.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='parse.c' object='stage1flex-parse.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-parse.obj `if test -f 'parse.c'; then $(CYGPATH_W) 'parse.c'; else $(CYGPATH_W) '$(srcdir)/parse.c'; fi`
+
+stage1flex-regex.o: regex.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-regex.o -MD -MP -MF $(DEPDIR)/stage1flex-regex.Tpo -c -o stage1flex-regex.o `test -f 'regex.c' || echo '$(srcdir)/'`regex.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-regex.Tpo $(DEPDIR)/stage1flex-regex.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='regex.c' object='stage1flex-regex.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-regex.o `test -f 'regex.c' || echo '$(srcdir)/'`regex.c
+
+stage1flex-regex.obj: regex.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-regex.obj -MD -MP -MF $(DEPDIR)/stage1flex-regex.Tpo -c -o stage1flex-regex.obj `if test -f 'regex.c'; then $(CYGPATH_W) 'regex.c'; else $(CYGPATH_W) '$(srcdir)/regex.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-regex.Tpo $(DEPDIR)/stage1flex-regex.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='regex.c' object='stage1flex-regex.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-regex.obj `if test -f 'regex.c'; then $(CYGPATH_W) 'regex.c'; else $(CYGPATH_W) '$(srcdir)/regex.c'; fi`
+
+stage1flex-scanflags.o: scanflags.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-scanflags.o -MD -MP -MF $(DEPDIR)/stage1flex-scanflags.Tpo -c -o stage1flex-scanflags.o `test -f 'scanflags.c' || echo '$(srcdir)/'`scanflags.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-scanflags.Tpo $(DEPDIR)/stage1flex-scanflags.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='scanflags.c' object='stage1flex-scanflags.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-scanflags.o `test -f 'scanflags.c' || echo '$(srcdir)/'`scanflags.c
+
+stage1flex-scanflags.obj: scanflags.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-scanflags.obj -MD -MP -MF $(DEPDIR)/stage1flex-scanflags.Tpo -c -o stage1flex-scanflags.obj `if test -f 'scanflags.c'; then $(CYGPATH_W) 'scanflags.c'; else $(CYGPATH_W) '$(srcdir)/scanflags.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-scanflags.Tpo $(DEPDIR)/stage1flex-scanflags.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='scanflags.c' object='stage1flex-scanflags.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-scanflags.obj `if test -f 'scanflags.c'; then $(CYGPATH_W) 'scanflags.c'; else $(CYGPATH_W) '$(srcdir)/scanflags.c'; fi`
+
+stage1flex-scanopt.o: scanopt.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-scanopt.o -MD -MP -MF $(DEPDIR)/stage1flex-scanopt.Tpo -c -o stage1flex-scanopt.o `test -f 'scanopt.c' || echo '$(srcdir)/'`scanopt.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-scanopt.Tpo $(DEPDIR)/stage1flex-scanopt.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='scanopt.c' object='stage1flex-scanopt.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-scanopt.o `test -f 'scanopt.c' || echo '$(srcdir)/'`scanopt.c
+
+stage1flex-scanopt.obj: scanopt.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-scanopt.obj -MD -MP -MF $(DEPDIR)/stage1flex-scanopt.Tpo -c -o stage1flex-scanopt.obj `if test -f 'scanopt.c'; then $(CYGPATH_W) 'scanopt.c'; else $(CYGPATH_W) '$(srcdir)/scanopt.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-scanopt.Tpo $(DEPDIR)/stage1flex-scanopt.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='scanopt.c' object='stage1flex-scanopt.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-scanopt.obj `if test -f 'scanopt.c'; then $(CYGPATH_W) 'scanopt.c'; else $(CYGPATH_W) '$(srcdir)/scanopt.c'; fi`
+
+stage1flex-skel.o: skel.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-skel.o -MD -MP -MF $(DEPDIR)/stage1flex-skel.Tpo -c -o stage1flex-skel.o `test -f 'skel.c' || echo '$(srcdir)/'`skel.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-skel.Tpo $(DEPDIR)/stage1flex-skel.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='skel.c' object='stage1flex-skel.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-skel.o `test -f 'skel.c' || echo '$(srcdir)/'`skel.c
+
+stage1flex-skel.obj: skel.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-skel.obj -MD -MP -MF $(DEPDIR)/stage1flex-skel.Tpo -c -o stage1flex-skel.obj `if test -f 'skel.c'; then $(CYGPATH_W) 'skel.c'; else $(CYGPATH_W) '$(srcdir)/skel.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-skel.Tpo $(DEPDIR)/stage1flex-skel.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='skel.c' object='stage1flex-skel.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-skel.obj `if test -f 'skel.c'; then $(CYGPATH_W) 'skel.c'; else $(CYGPATH_W) '$(srcdir)/skel.c'; fi`
+
+stage1flex-sym.o: sym.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-sym.o -MD -MP -MF $(DEPDIR)/stage1flex-sym.Tpo -c -o stage1flex-sym.o `test -f 'sym.c' || echo '$(srcdir)/'`sym.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-sym.Tpo $(DEPDIR)/stage1flex-sym.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sym.c' object='stage1flex-sym.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-sym.o `test -f 'sym.c' || echo '$(srcdir)/'`sym.c
+
+stage1flex-sym.obj: sym.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-sym.obj -MD -MP -MF $(DEPDIR)/stage1flex-sym.Tpo -c -o stage1flex-sym.obj `if test -f 'sym.c'; then $(CYGPATH_W) 'sym.c'; else $(CYGPATH_W) '$(srcdir)/sym.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-sym.Tpo $(DEPDIR)/stage1flex-sym.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sym.c' object='stage1flex-sym.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-sym.obj `if test -f 'sym.c'; then $(CYGPATH_W) 'sym.c'; else $(CYGPATH_W) '$(srcdir)/sym.c'; fi`
+
+stage1flex-tables.o: tables.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-tables.o -MD -MP -MF $(DEPDIR)/stage1flex-tables.Tpo -c -o stage1flex-tables.o `test -f 'tables.c' || echo '$(srcdir)/'`tables.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-tables.Tpo $(DEPDIR)/stage1flex-tables.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tables.c' object='stage1flex-tables.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-tables.o `test -f 'tables.c' || echo '$(srcdir)/'`tables.c
+
+stage1flex-tables.obj: tables.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-tables.obj -MD -MP -MF $(DEPDIR)/stage1flex-tables.Tpo -c -o stage1flex-tables.obj `if test -f 'tables.c'; then $(CYGPATH_W) 'tables.c'; else $(CYGPATH_W) '$(srcdir)/tables.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-tables.Tpo $(DEPDIR)/stage1flex-tables.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tables.c' object='stage1flex-tables.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-tables.obj `if test -f 'tables.c'; then $(CYGPATH_W) 'tables.c'; else $(CYGPATH_W) '$(srcdir)/tables.c'; fi`
+
+stage1flex-tables_shared.o: tables_shared.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-tables_shared.o -MD -MP -MF $(DEPDIR)/stage1flex-tables_shared.Tpo -c -o stage1flex-tables_shared.o `test -f 'tables_shared.c' || echo '$(srcdir)/'`tables_shared.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-tables_shared.Tpo $(DEPDIR)/stage1flex-tables_shared.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tables_shared.c' object='stage1flex-tables_shared.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-tables_shared.o `test -f 'tables_shared.c' || echo '$(srcdir)/'`tables_shared.c
+
+stage1flex-tables_shared.obj: tables_shared.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-tables_shared.obj -MD -MP -MF $(DEPDIR)/stage1flex-tables_shared.Tpo -c -o stage1flex-tables_shared.obj `if test -f 'tables_shared.c'; then $(CYGPATH_W) 'tables_shared.c'; else $(CYGPATH_W) '$(srcdir)/tables_shared.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-tables_shared.Tpo $(DEPDIR)/stage1flex-tables_shared.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tables_shared.c' object='stage1flex-tables_shared.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-tables_shared.obj `if test -f 'tables_shared.c'; then $(CYGPATH_W) 'tables_shared.c'; else $(CYGPATH_W) '$(srcdir)/tables_shared.c'; fi`
+
+stage1flex-tblcmp.o: tblcmp.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-tblcmp.o -MD -MP -MF $(DEPDIR)/stage1flex-tblcmp.Tpo -c -o stage1flex-tblcmp.o `test -f 'tblcmp.c' || echo '$(srcdir)/'`tblcmp.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-tblcmp.Tpo $(DEPDIR)/stage1flex-tblcmp.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tblcmp.c' object='stage1flex-tblcmp.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-tblcmp.o `test -f 'tblcmp.c' || echo '$(srcdir)/'`tblcmp.c
+
+stage1flex-tblcmp.obj: tblcmp.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-tblcmp.obj -MD -MP -MF $(DEPDIR)/stage1flex-tblcmp.Tpo -c -o stage1flex-tblcmp.obj `if test -f 'tblcmp.c'; then $(CYGPATH_W) 'tblcmp.c'; else $(CYGPATH_W) '$(srcdir)/tblcmp.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-tblcmp.Tpo $(DEPDIR)/stage1flex-tblcmp.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tblcmp.c' object='stage1flex-tblcmp.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-tblcmp.obj `if test -f 'tblcmp.c'; then $(CYGPATH_W) 'tblcmp.c'; else $(CYGPATH_W) '$(srcdir)/tblcmp.c'; fi`
+
+stage1flex-yylex.o: yylex.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-yylex.o -MD -MP -MF $(DEPDIR)/stage1flex-yylex.Tpo -c -o stage1flex-yylex.o `test -f 'yylex.c' || echo '$(srcdir)/'`yylex.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-yylex.Tpo $(DEPDIR)/stage1flex-yylex.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='yylex.c' object='stage1flex-yylex.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-yylex.o `test -f 'yylex.c' || echo '$(srcdir)/'`yylex.c
+
+stage1flex-yylex.obj: yylex.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT stage1flex-yylex.obj -MD -MP -MF $(DEPDIR)/stage1flex-yylex.Tpo -c -o stage1flex-yylex.obj `if test -f 'yylex.c'; then $(CYGPATH_W) 'yylex.c'; else $(CYGPATH_W) '$(srcdir)/yylex.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/stage1flex-yylex.Tpo $(DEPDIR)/stage1flex-yylex.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='yylex.c' object='stage1flex-yylex.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o stage1flex-yylex.obj `if test -f 'yylex.c'; then $(CYGPATH_W) 'yylex.c'; else $(CYGPATH_W) '$(srcdir)/yylex.c'; fi`
+
+../lib/stage1flex-malloc.o: ../lib/malloc.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT ../lib/stage1flex-malloc.o -MD -MP -MF ../lib/$(DEPDIR)/stage1flex-malloc.Tpo -c -o ../lib/stage1flex-malloc.o `test -f '../lib/malloc.c' || echo '$(srcdir)/'`../lib/malloc.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../lib/$(DEPDIR)/stage1flex-malloc.Tpo ../lib/$(DEPDIR)/stage1flex-malloc.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../lib/malloc.c' object='../lib/stage1flex-malloc.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o ../lib/stage1flex-malloc.o `test -f '../lib/malloc.c' || echo '$(srcdir)/'`../lib/malloc.c
+
+../lib/stage1flex-malloc.obj: ../lib/malloc.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT ../lib/stage1flex-malloc.obj -MD -MP -MF ../lib/$(DEPDIR)/stage1flex-malloc.Tpo -c -o ../lib/stage1flex-malloc.obj `if test -f '../lib/malloc.c'; then $(CYGPATH_W) '../lib/malloc.c'; else $(CYGPATH_W) '$(srcdir)/../lib/malloc.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../lib/$(DEPDIR)/stage1flex-malloc.Tpo ../lib/$(DEPDIR)/stage1flex-malloc.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../lib/malloc.c' object='../lib/stage1flex-malloc.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o ../lib/stage1flex-malloc.obj `if test -f '../lib/malloc.c'; then $(CYGPATH_W) '../lib/malloc.c'; else $(CYGPATH_W) '$(srcdir)/../lib/malloc.c'; fi`
+
+../lib/stage1flex-realloc.o: ../lib/realloc.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT ../lib/stage1flex-realloc.o -MD -MP -MF ../lib/$(DEPDIR)/stage1flex-realloc.Tpo -c -o ../lib/stage1flex-realloc.o `test -f '../lib/realloc.c' || echo '$(srcdir)/'`../lib/realloc.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../lib/$(DEPDIR)/stage1flex-realloc.Tpo ../lib/$(DEPDIR)/stage1flex-realloc.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../lib/realloc.c' object='../lib/stage1flex-realloc.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o ../lib/stage1flex-realloc.o `test -f '../lib/realloc.c' || echo '$(srcdir)/'`../lib/realloc.c
+
+../lib/stage1flex-realloc.obj: ../lib/realloc.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -MT ../lib/stage1flex-realloc.obj -MD -MP -MF ../lib/$(DEPDIR)/stage1flex-realloc.Tpo -c -o ../lib/stage1flex-realloc.obj `if test -f '../lib/realloc.c'; then $(CYGPATH_W) '../lib/realloc.c'; else $(CYGPATH_W) '$(srcdir)/../lib/realloc.c'; fi`
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../lib/$(DEPDIR)/stage1flex-realloc.Tpo ../lib/$(DEPDIR)/stage1flex-realloc.Po
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../lib/realloc.c' object='../lib/stage1flex-realloc.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(stage1flex_CFLAGS) $(CFLAGS) -c -o ../lib/stage1flex-realloc.obj `if test -f '../lib/realloc.c'; then $(CYGPATH_W) '../lib/realloc.c'; else $(CYGPATH_W) '$(srcdir)/../lib/realloc.c'; fi`
+
.l.c:
$(AM_V_LEX)$(am__skiplex) $(SHELL) $(YLWRAP) $< $(LEX_OUTPUT_ROOT).c $@ -- $(LEXCOMPILE)
@@ -851,6 +1536,9 @@ distdir: $(DISTFILES)
|| exit 1; \
fi; \
done
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$(top_distdir)" distdir="$(distdir)" \
+ dist-hook
check-am: all-am
check: check-am
all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(HEADERS) config.h
@@ -880,13 +1568,16 @@ install-strip:
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic:
+ -test -z "$(LIBOBJS)" || rm -f $(LIBOBJS)
clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
- -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
+ -rm -f ../lib/$(DEPDIR)/$(am__dirstamp)
+ -rm -f ../lib/$(am__dirstamp)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -894,7 +1585,6 @@ maintainer-clean-generic:
-rm -f parse.c
-rm -f parse.h
-rm -f scan.c
- -rm -f stage1scan.c
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
clean: clean-am
@@ -902,7 +1592,7 @@ clean-am: clean-binPROGRAMS clean-generic clean-libLTLIBRARIES \
clean-libtool clean-noinstPROGRAMS mostlyclean-am
distclean: distclean-am
- -rm -rf ./$(DEPDIR)
+ -rm -rf ../lib/$(DEPDIR) ./$(DEPDIR)
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-hdr distclean-tags
@@ -948,7 +1638,7 @@ install-ps-am:
installcheck-am: installcheck-binPROGRAMS
maintainer-clean: maintainer-clean-am
- -rm -rf ./$(DEPDIR)
+ -rm -rf ../lib/$(DEPDIR) ./$(DEPDIR)
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
@@ -973,75 +1663,68 @@ uninstall-am: uninstall-binPROGRAMS uninstall-includeHEADERS \
.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \
clean-binPROGRAMS clean-generic clean-libLTLIBRARIES \
clean-libtool clean-noinstPROGRAMS cscopelist-am ctags \
- ctags-am distclean distclean-compile distclean-generic \
- distclean-hdr distclean-libtool distclean-tags distdir dvi \
- dvi-am html html-am info info-am install install-am \
- install-binPROGRAMS install-data install-data-am install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-includeHEADERS install-info \
- install-info-am install-libLTLIBRARIES install-man install-pdf \
- install-pdf-am install-ps install-ps-am install-strip \
- installcheck installcheck-am installcheck-binPROGRAMS \
- installdirs maintainer-clean maintainer-clean-generic \
- mostlyclean mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
- uninstall-am uninstall-binPROGRAMS uninstall-includeHEADERS \
+ ctags-am dist-hook distclean distclean-compile \
+ distclean-generic distclean-hdr distclean-libtool \
+ distclean-tags distdir dvi dvi-am html html-am info info-am \
+ install install-am install-binPROGRAMS install-data \
+ install-data-am install-dvi install-dvi-am install-exec \
+ install-exec-am install-html install-html-am \
+ install-includeHEADERS install-info install-info-am \
+ install-libLTLIBRARIES install-man install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installcheck-binPROGRAMS installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
+ pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
+ uninstall-binPROGRAMS uninstall-includeHEADERS \
uninstall-libLTLIBRARIES
.PRECIOUS: Makefile
-$(srcdir)/skel.c: flex.skl mkskel.sh flexint.h tables_shared.h
- sed 's/m4_/m4postproc_/g; s/m4preproc_/m4_/g' $(srcdir)/flex.skl | \
- $(m4) -P -I $(srcdir) \
- -DFLEX_MAJOR_VERSION=` echo $(VERSION)|cut -f 1 -d .` \
- -DFLEX_MINOR_VERSION=` echo $(VERSION)|cut -f 2 -d .` \
- -DFLEX_SUBMINOR_VERSION=`echo $(VERSION)|cut -f 3 -d .` | \
- sed 's/m4postproc_/m4_/g' | \
- $(SHELL) $(srcdir)/mkskel.sh >skel.c.tmp
- mv skel.c.tmp $(srcdir)/skel.c
-
-stage1scan.l: scan.l
- cp $(srcdir)/scan.l $(srcdir)/stage1scan.l
-
-stage1scan.c: stage1scan.l stage1flex$(EXEEXT)
- $(top_builddir)/src/stage1flex$(EXEEXT) -o $@ $<
-
-# Explicitly describe dependencies.
-# You can recreate this with `gcc -I. -MM *.c'
-buf.o: buf.c flexdef.h flexint.h
-ccl.o: ccl.c flexdef.h flexint.h
-dfa.o: dfa.c flexdef.h flexint.h tables.h tables_shared.h
-ecs.o: ecs.c flexdef.h flexint.h
-scanflags.o: scanflags.c flexdef.h flexint.h
-gen.o: gen.c flexdef.h flexint.h tables.h tables_shared.h
-libmain.o: libmain.c
-libyywrap.o: libyywrap.c
-main.o: main.c flexdef.h flexint.h version.h options.h scanopt.h \
- tables.h tables_shared.h
-misc.o: misc.c flexdef.h flexint.h tables.h tables_shared.h
-nfa.o: nfa.c flexdef.h flexint.h
-options.o: options.c options.h scanopt.h flexdef.h flexint.h
-parse.o: parse.c flexdef.h flexint.h tables.h tables_shared.h
-scan.o: scan.c flexdef.h flexint.h parse.h
-scanopt.o: scanopt.c flexdef.h flexint.h scanopt.h
-skel.o: skel.c flexdef.h flexint.h
-sym.o: sym.c flexdef.h flexint.h
-tables.o: tables.c flexdef.h flexint.h tables.h tables_shared.h
-tables_shared.o: tables_shared.c flexdef.h flexint.h tables.h \
- tables_shared.h
-tblcmp.o: tblcmp.c flexdef.h flexint.h
-yylex.o: yylex.c flexdef.h flexint.h parse.h
-filter.o: filter.c flexdef.h flexint.h
-
-indent:
- if [ -f .indent.pro ] ; then \
- for f in $(indentfiles);\
- do\
- echo indenting $$f ;\
- $(indent) < $$f >/dev/null && indent $$f || echo $$f FAILED to indent ;\
- done \
- fi
+@CROSS_TRUE@$(stage1flex_OBJECTS): CC=$(CC_FOR_BUILD)
+@CROSS_TRUE@$(stage1flex_OBJECTS): CFLAGS=$(CFLAGS_FOR_BUILD)
+@CROSS_TRUE@$(stage1flex_OBJECTS): CPP=$(CPP_FOR_BUILD)
+@CROSS_TRUE@$(stage1flex_OBJECTS): CPPFLAGS=$(CPPFLAGS_FOR_BUILD)
+@CROSS_TRUE@$(stage1flex_OBJECTS): LDFLAGS=$(LDFLAGS_FOR_BUILD)
+
+skel.c: flex.skl mkskel.sh flexint.h tables_shared.h tables_shared.c
+ $(SHELL) $(srcdir)/mkskel.sh $(srcdir) $(m4) $(VERSION) > $@.tmp
+ mv $@.tmp $@
+
+@ENABLE_BOOTSTRAP_TRUE@stage1scan.c: scan.l stage1flex$(EXEEXT)
+@ENABLE_BOOTSTRAP_TRUE@ ./stage1flex$(EXEEXT) $(AM_LFLAGS) $(LFLAGS) -o $@ $(srcdir)/scan.l
+@ENABLE_BOOTSTRAP_FALSE@stage1scan.c: scan.c
+@ENABLE_BOOTSTRAP_FALSE@ sed 's|^\(#line .*\)"'`printf %s $< | sed 's|[][\\\\.*]|\\\\&|g'`'"|\1"$@"|g' $< > $@
+
+dist-hook: scan.l flex$(EXEEXT)
+ chmod u+w $(distdir)/scan.c && \
+ ./flex$(EXEEXT) -o scan.c $< && \
+ mv scan.c $(distdir)
+
+# make needs to be told to make parse.h so that parallelized runs will
+# not fail.
+
+stage1flex-main.$(OBJEXT): parse.h
+flex-main.$(OBJEXT): parse.h
+
+stage1flex-yylex.$(OBJEXT): parse.h
+flex-yylex.$(OBJEXT): parse.h
+
+stage1flex-scan.$(OBJEXT): parse.h
+flex-stage1scan.$(OBJEXT): parse.h
+
+indent: $(top_srcdir)/.indent.pro
+ cd $(top_srcdir) && \
+ for f in $(indentfiles); do \
+ f=src/$$f; \
+ echo indenting $$f; \
+ INDENT_PROFILE=.indent.pro $(INDENT) <$$f >/dev/null && \
+ INDENT_PROFILE=.indent.pro $(INDENT) $$f || \
+ echo $$f FAILED to indent; \
+ done;
+
+.PHONY: indent
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/src/buf.c b/src/buf.c
index c03b85f..185083c 100644
--- a/src/buf.c
+++ b/src/buf.c
@@ -100,7 +100,7 @@ struct Buf *buf_linedir (struct Buf *buf, const char* filename, int lineno)
tsz = strlen("#line \"\"\n") + /* constant parts */
2 * strlen (filename) + /* filename with possibly all backslashes escaped */
- (int) (1 + log10 (abs (lineno))) + /* line number */
+ (size_t) (1 + ceil (log10 (abs (lineno)))) + /* line number */
1; /* NUL */
t = malloc(tsz);
if (!t)
@@ -166,7 +166,7 @@ struct Buf *buf_strdefine (struct Buf *buf, const char *str, const char *def)
*/
struct Buf *buf_m4_define (struct Buf *buf, const char* def, const char* val)
{
- const char * fmt = "m4_define( [[%s]], [[%s]])m4_dnl\n";
+ const char * fmt = "m4_define( [[%s]], [[[[%s]]]])m4_dnl\n";
char * str;
size_t strsz;
@@ -241,26 +241,26 @@ struct Buf *buf_append (struct Buf *buf, const void *ptr, int n_elem)
n_alloc = n_elem + buf->nelts;
/* ...plus some extra */
- if (((n_alloc * buf->elt_size) % 512) != 0
+ if ((((size_t) n_alloc * buf->elt_size) % 512) != 0
&& buf->elt_size < 512)
- n_alloc +=
- (512 -
- ((n_alloc * buf->elt_size) % 512)) /
- buf->elt_size;
+ n_alloc += (int)
+ ((512 -
+ (((size_t) n_alloc * buf->elt_size) % 512)) /
+ buf->elt_size);
if (!buf->elts)
buf->elts =
- allocate_array (n_alloc, buf->elt_size);
+ allocate_array ((int) n_alloc, buf->elt_size);
else
buf->elts =
- reallocate_array (buf->elts, n_alloc,
+ reallocate_array (buf->elts, (int) n_alloc,
buf->elt_size);
buf->nmax = n_alloc;
}
- memcpy ((char *) buf->elts + buf->nelts * buf->elt_size, ptr,
- n_elem * buf->elt_size);
+ memcpy ((char *) buf->elts + (size_t) buf->nelts * buf->elt_size, ptr,
+ (size_t) n_elem * buf->elt_size);
buf->nelts += n_elem;
return buf;
diff --git a/src/dfa.c b/src/dfa.c
index be62da8..ab10314 100644
--- a/src/dfa.c
+++ b/src/dfa.c
@@ -463,14 +463,9 @@ void ntod (void)
/* We still may want to use the table if numecs
* is a power of 2.
*/
- int power_of_two;
-
- for (power_of_two = 1; power_of_two <= csize;
- power_of_two *= 2)
- if (numecs == power_of_two) {
- use_NUL_table = true;
- break;
- }
+ if (numecs <= csize && is_power_of_2(numecs)) {
+ use_NUL_table = true;
+ }
}
if (use_NUL_table)
@@ -515,7 +510,7 @@ void ntod (void)
yytbl_data_init (yynxt_tbl, YYTD_ID_NXT);
yynxt_tbl->td_hilen = 1;
- yynxt_tbl->td_lolen = num_full_table_rows;
+ yynxt_tbl->td_lolen = (flex_uint32_t) num_full_table_rows;
yynxt_tbl->td_data = yynxt_data =
calloc(yynxt_tbl->td_lolen *
yynxt_tbl->td_hilen,
@@ -531,12 +526,12 @@ void ntod (void)
*/
if (gentables)
out_str_dec
- ("static yyconst %s yy_nxt[][%d] =\n {\n",
+ ("static const %s yy_nxt[][%d] =\n {\n",
long_align ? "flex_int32_t" : "flex_int16_t",
num_full_table_rows);
else {
out_dec ("#undef YY_NXT_LOLEN\n#define YY_NXT_LOLEN (%d)\n", num_full_table_rows);
- out_str ("static yyconst %s *yy_nxt =0;\n",
+ out_str ("static const %s *yy_nxt =0;\n",
long_align ? "flex_int32_t" : "flex_int16_t");
}
diff --git a/src/ecs.c b/src/ecs.c
index b2afc1f..dc68360 100644
--- a/src/ecs.c
+++ b/src/ecs.c
@@ -56,7 +56,8 @@ void ccl2ecl (void)
cclmec = ecgroup[ich];
if (cclmec > 0) {
- ccltbl[cclp + newlen] = cclmec;
+ /* Note: range 1..256 is mapped to 1..255,0 */
+ ccltbl[cclp + newlen] = (unsigned char) cclmec;
++newlen;
}
}
diff --git a/src/filter.c b/src/filter.c
index 1ac199f..71f3635 100644
--- a/src/filter.c
+++ b/src/filter.c
@@ -176,7 +176,7 @@ clearerr(stdin);
if ((r = chain->filter_func (chain)) == -1)
flexfatal (_("filter_func failed"));
- exit (0);
+ FLEX_EXIT (0);
}
else {
execvp (chain->argv[0],
@@ -185,7 +185,7 @@ clearerr(stdin);
chain->argv[0]);
}
- exit (1);
+ FLEX_EXIT (1);
}
/* Parent */
@@ -296,7 +296,8 @@ int filter_tee_header (struct filter *chain)
fprintf (to_h, "\n");
/* write a fake line number. It will get fixed by the linedir filter. */
- fprintf (to_h, "#line 4000 \"M4_YY_OUTFILE_NAME\"\n");
+ if (gen_line_dirs)
+ fprintf (to_h, "#line 4000 \"M4_YY_OUTFILE_NAME\"\n");
fprintf (to_h, "#undef %sIN_HEADER\n", prefix);
fprintf (to_h, "#endif /* %sHEADER_H */\n", prefix);
@@ -323,7 +324,7 @@ int filter_tee_header (struct filter *chain)
while (wait (0) > 0) ;
- exit (0);
+ FLEX_EXIT (0);
return 0;
}
@@ -390,7 +391,7 @@ int filter_fix_linedirs (struct filter *chain)
/* Adjust the line directives. */
in_gen = true;
snprintf (buf, readsz, "#line %d \"%s\"\n",
- lineno + 1, filename);
+ lineno, filename);
}
else {
/* it's a #line directive for code we didn't write */
diff --git a/src/flex.skl b/src/flex.skl
index fc6915a..786c977 100644
--- a/src/flex.skl
+++ b/src/flex.skl
@@ -6,17 +6,18 @@
%# pre-compilation stage of flex. Only macros starting
%# with `m4preproc_' are processed, and quoting is normal.
%#
-%# 2. The preprocessed skeleton is translated verbatim into a
-%# C array, saved as "skel.c" and compiled into the flex binary.
+%# 2. The preprocessed skeleton is translated into a C array, saved
+%# as "skel.c" and compiled into the flex binary. The %# comment
+%# lines are removed.
%#
%# 3. At runtime, the skeleton is generated and filtered (again)
%# through m4. Macros beginning with `m4_' will be processed.
%# The quoting is "[[" and "]]" so we don't interfere with
%# user code.
-%#
+%#
%# All generate macros for the m4 stage contain the text "m4" or "M4"
%# in them. This is to distinguish them from CPP macros.
-%# The exception to this rule is YY_G, which is an m4 macro,
+%# The exception to this rule is YY_G, which is an m4 macro,
%# but it needs to be remain short because it is used everywhere.
%#
/* A lexical scanner generated by flex */
@@ -29,7 +30,7 @@ m4_changecom
m4_changequote
m4_changequote([[, ]])
-%#
+%#
%# Lines in this skeleton starting with a "%" character are "control lines"
%# and affect the generation of the scanner. The possible control codes are
%# listed and processed in misc.c.
@@ -61,11 +62,17 @@ m4_changequote([[, ]])
m4_ifelse(M4_YY_PREFIX,yy,,
#define yy_create_buffer M4_YY_PREFIX[[_create_buffer]]
#define yy_delete_buffer M4_YY_PREFIX[[_delete_buffer]]
-#define yy_flex_debug M4_YY_PREFIX[[_flex_debug]]
+#define yy_scan_buffer M4_YY_PREFIX[[_scan_buffer]]
+#define yy_scan_string M4_YY_PREFIX[[_scan_string]]
+#define yy_scan_bytes M4_YY_PREFIX[[_scan_bytes]]
#define yy_init_buffer M4_YY_PREFIX[[_init_buffer]]
#define yy_flush_buffer M4_YY_PREFIX[[_flush_buffer]]
#define yy_load_buffer_state M4_YY_PREFIX[[_load_buffer_state]]
#define yy_switch_to_buffer M4_YY_PREFIX[[_switch_to_buffer]]
+#define yypush_buffer_state M4_YY_PREFIX[[push_buffer_state]]
+#define yypop_buffer_state M4_YY_PREFIX[[pop_buffer_state]]
+#define yyensure_buffer_stack M4_YY_PREFIX[[ensure_buffer_stack]]
+#define yy_flex_debug M4_YY_PREFIX[[_flex_debug]]
#define yyin M4_YY_PREFIX[[in]]
#define yyleng M4_YY_PREFIX[[leng]]
#define yylex M4_YY_PREFIX[[lex]]
@@ -105,8 +112,16 @@ m4_ifdef( [[M4_YY_REENTRANT]], [[m4_define([[M4_YY_HAS_START_STACK_VARS]])]])
m4_ifdef( [[M4_YY_PREFIX]],, [[m4_define([[M4_YY_PREFIX]], [[yy]])]])
-m4preproc_define(`M4_GEN_PREFIX',
- ``m4_define(yy[[$1]], [[M4_YY_PREFIX[[$1]]m4_ifelse($'`#,0,,[[($'`@)]])]])'')
+m4preproc_define(`M4_GEN_PREFIX',``
+[[#ifdef yy$1
+#define ]]M4_YY_PREFIX[[$1_ALREADY_DEFINED
+#else
+#define yy$1 ]]M4_YY_PREFIX[[$1
+#endif]]
+'m4preproc_divert(1)`
+[[#ifndef ]]M4_YY_PREFIX[[$1_ALREADY_DEFINED
+#undef yy$1
+#endif]]'m4preproc_divert(0)')
%if-c++-only
/* The c++ scanner is a mess. The FlexLexer.h header file relies on the
@@ -119,6 +134,7 @@ m4preproc_define(`M4_GEN_PREFIX',
%endif
%if-c-only
+m4_ifelse(M4_YY_PREFIX,yy,,
M4_GEN_PREFIX(`_create_buffer')
M4_GEN_PREFIX(`_delete_buffer')
M4_GEN_PREFIX(`_scan_buffer')
@@ -154,6 +170,7 @@ m4preproc_define(`M4_GEN_PREFIX',
M4_GEN_PREFIX(`set_column')
]])
M4_GEN_PREFIX(`wrap')
+)
%endif
m4_ifdef( [[M4_YY_BISON_LVAL]],
@@ -169,11 +186,14 @@ m4_ifdef( [[<M4_YY_BISON_LLOC>]],
]])
+m4_ifelse(M4_YY_PREFIX,yy,,
M4_GEN_PREFIX(`alloc')
M4_GEN_PREFIX(`realloc')
M4_GEN_PREFIX(`free')
+)
%if-c-only
+m4_ifelse(M4_YY_PREFIX,yy,,
m4_ifdef( [[M4_YY_NOT_REENTRANT]],
[[
M4_GEN_PREFIX(`text')
@@ -183,6 +203,7 @@ m4_ifdef( [[M4_YY_NOT_REENTRANT]],
M4_GEN_PREFIX(`_flex_debug')
M4_GEN_PREFIX(`lineno')
]])
+)
%endif
@@ -213,9 +234,9 @@ m4_ifdef( [[M4_YY_TABLES_EXTERNAL]],
m4preproc_include(`flexint.h')
%endif
-%if-c++-only
/* begin standard C++ headers. */
-#include <iostream>
+%if-c++-only
+#include <iostream>
#include <errno.h>
#include <cstdlib>
#include <cstdio>
@@ -232,37 +253,16 @@ m4preproc_include(`flexint.h')
#define yynoreturn
#endif
-%# For compilers that can not handle prototypes.
-%# e.g.,
-%# The function prototype
-%# int foo(int x, char* y);
-%#
-%# ...should be written as
-%# int foo M4_YY_PARAMS(int x, char* y);
-%#
-%# ...which could possibly generate
-%# int foo ();
-%#
-m4_ifdef( [[M4_YY_NO_ANSI_FUNC_PROTOS]],
-[[
- m4_define( [[M4_YY_PARAMS]], [[()]])
-]],
-[[
- m4_define( [[M4_YY_PARAMS]], [[($*)]])
-]])
-
%not-for-header
/* Returned upon end-of-file. */
#define YY_NULL 0
%ok-for-header
%not-for-header
-/* Promotes a possibly negative, possibly signed char to an unsigned
- * integer for use as an array index. If the signed char is negative,
- * we want to instead treat it as an 8-bit unsigned char, hence the
- * double cast.
+/* Promotes a possibly negative, possibly signed char to an
+ * integer in range [0..255] for use as an array index.
*/
-#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
+#define YY_SC_TO_UI(c) ((YY_CHAR) (c))
%ok-for-header
@@ -286,16 +286,8 @@ m4_define( [[YY_G]], [[yyg->$1]])
m4_define( [[M4_YY_PROTO_LAST_ARG]], [[, yyscan_t yyscanner]])
m4_define( [[M4_YY_PROTO_ONLY_ARG]], [[yyscan_t yyscanner]])
-%# For use in function definitions to append the additional argument.
-m4_ifdef( [[M4_YY_NO_ANSI_FUNC_DEFS]],
-[[
- m4_define( [[M4_YY_DEF_LAST_ARG]], [[, yyscanner]])
- m4_define( [[M4_YY_DEF_ONLY_ARG]], [[yyscanner]])
-]],
-[[
- m4_define( [[M4_YY_DEF_LAST_ARG]], [[, yyscan_t yyscanner]])
- m4_define( [[M4_YY_DEF_ONLY_ARG]], [[yyscan_t yyscanner]])
-]])
+m4_define( [[M4_YY_DEF_LAST_ARG]], [[, yyscan_t yyscanner]])
+m4_define( [[M4_YY_DEF_ONLY_ARG]], [[yyscan_t yyscanner]])
m4_define( [[M4_YY_DECL_LAST_ARG]], [[yyscan_t yyscanner;]])
%# For use in function calls to pass the additional argument.
@@ -317,7 +309,7 @@ m4_define( [[M4_YY_DOC_PARAM]], [[@param yyscanner The scanner object.]])
#define yy_flex_debug YY_G(yy_flex_debug_r)
m4_define( [[M4_YY_INCR_LINENO]],
-[[
+[[
do{ yylineno++;
yycolumn=0;
}while(0)
@@ -330,7 +322,7 @@ m4_define( [[M4_YY_INCR_LINENO]],
%if-not-reentrant
m4_define( [[M4_YY_INCR_LINENO]],
-[[
+[[
yylineno++;
]])
@@ -342,60 +334,19 @@ m4_define( [[M4_YY_PROTO_LAST_ARG]])
m4_define( [[M4_YY_PROTO_ONLY_ARG]], [[void]])
m4_define( [[M4_YY_DEF_LAST_ARG]])
-m4_ifdef( [[M4_YY_NO_ANSI_FUNC_DEFS]],
-[[
- m4_define( [[M4_YY_DEF_ONLY_ARG]])
-]],
-[[
- m4_define( [[M4_YY_DEF_ONLY_ARG]], [[void]])
-]])
+m4_define( [[M4_YY_DEF_ONLY_ARG]], [[void]])
m4_define([[M4_YY_DECL_LAST_ARG]])
m4_define([[M4_YY_CALL_LAST_ARG]])
m4_define([[M4_YY_CALL_ONLY_ARG]])
-m4_define( [[M4_YY_DOC_PARAM]], [[]])
+m4_define( [[M4_YY_DOC_PARAM]], )
%endif
-m4_ifdef( [[M4_YY_NO_ANSI_FUNC_DEFS]],
-[[
-%# For compilers that need traditional function definitions.
-%# e.g.,
-%# The function prototype taking 2 arguments
-%# int foo (int x, char* y)
-%#
-%# ...should be written as
-%# int foo YYFARGS2(int,x, char*,y)
-%#
-%# ...which could possibly generate
-%# int foo (x,y,yyscanner)
-%# int x;
-%# char * y;
-%# yyscan_t yyscanner;
-%#
-%# Generate traditional function defs
- m4_define( [[YYFARGS0]], [[(M4_YY_DEF_ONLY_ARG) [[\]]
- M4_YY_DECL_LAST_ARG]])
- m4_define( [[YYFARGS1]], [[($2 M4_YY_DEF_LAST_ARG) [[\]]
- $1 $2; [[\]]
- M4_YY_DECL_LAST_ARG]])
- m4_define( [[YYFARGS2]], [[($2,$4 M4_YY_DEF_LAST_ARG) [[\]]
- $1 $2; [[\]]
- $3 $4; [[\]]
- M4_YY_DECL_LAST_ARG]])
- m4_define( [[YYFARGS3]], [[($2,$4,$6 M4_YY_DEF_LAST_ARG) [[\]]
- $1 $2; [[\]]
- $3 $4; [[\]]
- $5 $6; [[\]]
- M4_YY_DECL_LAST_ARG]])
-]],
-[[
%# Generate C99 function defs.
- m4_define( [[YYFARGS0]], [[(M4_YY_DEF_ONLY_ARG)]])
- m4_define( [[YYFARGS1]], [[($1 $2 M4_YY_DEF_LAST_ARG)]])
- m4_define( [[YYFARGS2]], [[($1 $2, $3 $4 M4_YY_DEF_LAST_ARG)]])
- m4_define( [[YYFARGS3]], [[($1 $2, $3 $4, $5 $6 M4_YY_DEF_LAST_ARG)]])
-]])
+m4_define( [[YYFARGS1]], [[($1 $2 M4_YY_DEF_LAST_ARG)]])
+m4_define( [[YYFARGS2]], [[($1 $2, $3 $4 M4_YY_DEF_LAST_ARG)]])
+m4_define( [[YYFARGS3]], [[($1 $2, $3 $4, $5 $6 M4_YY_DEF_LAST_ARG)]])
m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
[[
@@ -404,32 +355,16 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
* definition of BEGIN.
*/
#define BEGIN YY_G(yy_start) = 1 + 2 *
-]])
-
-m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
-[[
/* Translate the current start state into a value that can be later handed
* to BEGIN to return to the state. The YYSTATE alias is for lex
* compatibility.
*/
#define YY_START ((YY_G(yy_start) - 1) / 2)
#define YYSTATE YY_START
-]])
-
-m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
-[[
/* Action number for EOF rule of a given start state. */
#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
-]])
-
-m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
-[[
/* Special action meaning "start processing a new file". */
#define YY_NEW_FILE yyrestart( yyin M4_YY_CALL_LAST_ARG )
-]])
-
-m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
-[[
#define YY_END_OF_BUFFER_CHAR 0
]])
@@ -479,15 +414,11 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
#define EOB_ACT_CONTINUE_SCAN 0
#define EOB_ACT_END_OF_FILE 1
#define EOB_ACT_LAST_MATCH 2
-]])
-
-m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
-[[
m4_ifdef( [[M4_YY_USE_LINENO]],
[[
/* Note: We specifically omit the test for yy_rule_can_match_eol because it requires
* access to the local variable yy_act. Since yyless() is a macro, it would break
- * existing scanners that call yyless() from OUTSIDE yylex.
+ * existing scanners that call yyless() from OUTSIDE yylex.
* One obvious solution it to make yy_act a global. I tried that, and saw
* a 5% performance hit in a non-yylineno scanner, because yy_act is
* normally declared as a register variable-- so it is not worth it.
@@ -511,10 +442,6 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
#define YY_LESS_LINENO(n)
#define YY_LINENO_REWIND_TO(ptr)
]])
-]])
-
-m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
-[[
/* Return all but the first "n" matched characters back to the input stream. */
#define yyless(n) \
do \
@@ -528,10 +455,6 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
YY_DO_BEFORE_ACTION; /* set up yytext again */ \
} \
while ( 0 )
-]])
-
-m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
-[[
#define unput(c) yyunput( c, YY_G(yytext_ptr) M4_YY_CALL_LAST_ARG )
]])
@@ -544,7 +467,7 @@ struct yy_buffer_state
%endif
%if-c++-only
- std::streambuf* yy_input_file;
+ std::streambuf* yy_input_file;
%endif
@@ -582,7 +505,7 @@ struct yy_buffer_state
int yy_bs_lineno; /**< The line count. */
int yy_bs_column; /**< The column count. */
-
+
/* Whether to try to fill the input buffer when we reach the
* end of it.
@@ -632,10 +555,6 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
#define YY_CURRENT_BUFFER ( YY_G(yy_buffer_stack) \
? YY_G(yy_buffer_stack)[YY_G(yy_buffer_stack_top)] \
: NULL)
-]])
-
-m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
-[[
/* Same as previous macro, but useful when we know that the buffer stack is not
* NULL or when we need an lvalue. For internal use only.
*/
@@ -663,43 +582,35 @@ static int yy_did_buffer_switch_on_eof;
%ok-for-header
%endif
-void yyrestart M4_YY_PARAMS( FILE *input_file M4_YY_PROTO_LAST_ARG );
-void yy_switch_to_buffer M4_YY_PARAMS( YY_BUFFER_STATE new_buffer M4_YY_PROTO_LAST_ARG );
-YY_BUFFER_STATE yy_create_buffer M4_YY_PARAMS( FILE *file, int size M4_YY_PROTO_LAST_ARG );
-void yy_delete_buffer M4_YY_PARAMS( YY_BUFFER_STATE b M4_YY_PROTO_LAST_ARG );
-void yy_flush_buffer M4_YY_PARAMS( YY_BUFFER_STATE b M4_YY_PROTO_LAST_ARG );
-void yypush_buffer_state M4_YY_PARAMS( YY_BUFFER_STATE new_buffer M4_YY_PROTO_LAST_ARG );
-void yypop_buffer_state M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
-
-m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
-[[
-static void yyensure_buffer_stack M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
-static void yy_load_buffer_state M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
-static void yy_init_buffer M4_YY_PARAMS( YY_BUFFER_STATE b, FILE *file M4_YY_PROTO_LAST_ARG );
-]])
+void yyrestart ( FILE *input_file M4_YY_PROTO_LAST_ARG );
+void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer M4_YY_PROTO_LAST_ARG );
+YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size M4_YY_PROTO_LAST_ARG );
+void yy_delete_buffer ( YY_BUFFER_STATE b M4_YY_PROTO_LAST_ARG );
+void yy_flush_buffer ( YY_BUFFER_STATE b M4_YY_PROTO_LAST_ARG );
+void yypush_buffer_state ( YY_BUFFER_STATE new_buffer M4_YY_PROTO_LAST_ARG );
+void yypop_buffer_state ( M4_YY_PROTO_ONLY_ARG );
m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
[[
+static void yyensure_buffer_stack ( M4_YY_PROTO_ONLY_ARG );
+static void yy_load_buffer_state ( M4_YY_PROTO_ONLY_ARG );
+static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file M4_YY_PROTO_LAST_ARG );
#define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER M4_YY_CALL_LAST_ARG)
]])
-YY_BUFFER_STATE yy_scan_buffer M4_YY_PARAMS( char *base, yy_size_t size M4_YY_PROTO_LAST_ARG );
-YY_BUFFER_STATE yy_scan_string M4_YY_PARAMS( yyconst char *yy_str M4_YY_PROTO_LAST_ARG );
-YY_BUFFER_STATE yy_scan_bytes M4_YY_PARAMS( yyconst char *bytes, int len M4_YY_PROTO_LAST_ARG );
+YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size M4_YY_PROTO_LAST_ARG );
+YY_BUFFER_STATE yy_scan_string ( const char *yy_str M4_YY_PROTO_LAST_ARG );
+YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len M4_YY_PROTO_LAST_ARG );
%endif
-void *yyalloc M4_YY_PARAMS( yy_size_t M4_YY_PROTO_LAST_ARG );
-void *yyrealloc M4_YY_PARAMS( void *, yy_size_t M4_YY_PROTO_LAST_ARG );
-void yyfree M4_YY_PARAMS( void * M4_YY_PROTO_LAST_ARG );
+void *yyalloc ( yy_size_t M4_YY_PROTO_LAST_ARG );
+void *yyrealloc ( void *, yy_size_t M4_YY_PROTO_LAST_ARG );
+void yyfree ( void * M4_YY_PROTO_LAST_ARG );
m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
[[
#define yy_new_buffer yy_create_buffer
-]])
-
-m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
-[[
#define yy_set_interactive(is_interactive) \
{ \
if ( ! YY_CURRENT_BUFFER ){ \
@@ -709,10 +620,6 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
} \
YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
}
-]])
-
-m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
-[[
#define yy_set_bol(at_bol) \
{ \
if ( ! YY_CURRENT_BUFFER ){\
@@ -722,10 +629,6 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
} \
YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
}
-]])
-
-m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
-[[
#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
]])
@@ -740,10 +643,10 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
[[
-static yy_state_type yy_get_previous_state M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
-static yy_state_type yy_try_NUL_trans M4_YY_PARAMS( yy_state_type current_state M4_YY_PROTO_LAST_ARG);
-static int yy_get_next_buffer M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
-static void yynoreturn yy_fatal_error M4_YY_PARAMS( yyconst char* msg M4_YY_PROTO_LAST_ARG );
+static yy_state_type yy_get_previous_state ( M4_YY_PROTO_ONLY_ARG );
+static yy_state_type yy_try_NUL_trans ( yy_state_type current_state M4_YY_PROTO_LAST_ARG);
+static int yy_get_next_buffer ( M4_YY_PROTO_ONLY_ARG );
+static void yynoreturn yy_fatal_error ( const char* msg M4_YY_PROTO_LAST_ARG );
]])
%endif
@@ -760,10 +663,6 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
*yy_cp = '\0'; \
%% [3.0] code to copy yytext_ptr to yytext[] goes here, if %array \
YY_G(yy_c_buf_p) = yy_cp;
-]])
-
-m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
-[[
%% [4.0] data tables for the DFA and the user's section 1 definitions go here
]])
@@ -875,7 +774,7 @@ m4_ifdef( [[<M4_YY_BISON_LLOC>]],
%if-c-only
m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
[[
-static int yy_init_globals M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+static int yy_init_globals ( M4_YY_PROTO_ONLY_ARG );
]])
%endif
@@ -896,9 +795,9 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
]])
]])
-int yylex_init M4_YY_PARAMS(yyscan_t* scanner);
+int yylex_init (yyscan_t* scanner);
-int yylex_init_extra M4_YY_PARAMS( YY_EXTRA_TYPE user_defined, yyscan_t* scanner);
+int yylex_init_extra ( YY_EXTRA_TYPE user_defined, yyscan_t* scanner);
%endif
@@ -909,74 +808,74 @@ int yylex_init_extra M4_YY_PARAMS( YY_EXTRA_TYPE user_defined, yyscan_t* scanner
m4_ifdef( [[M4_YY_NO_DESTROY]],,
[[
-int yylex_destroy M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+int yylex_destroy ( M4_YY_PROTO_ONLY_ARG );
]])
m4_ifdef( [[M4_YY_NO_GET_DEBUG]],,
[[
-int yyget_debug M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+int yyget_debug ( M4_YY_PROTO_ONLY_ARG );
]])
m4_ifdef( [[M4_YY_NO_SET_DEBUG]],,
[[
-void yyset_debug M4_YY_PARAMS( int debug_flag M4_YY_PROTO_LAST_ARG );
+void yyset_debug ( int debug_flag M4_YY_PROTO_LAST_ARG );
]])
m4_ifdef( [[M4_YY_NO_GET_EXTRA]],,
[[
-YY_EXTRA_TYPE yyget_extra M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+YY_EXTRA_TYPE yyget_extra ( M4_YY_PROTO_ONLY_ARG );
]])
m4_ifdef( [[M4_YY_NO_SET_EXTRA]],,
[[
-void yyset_extra M4_YY_PARAMS( YY_EXTRA_TYPE user_defined M4_YY_PROTO_LAST_ARG );
+void yyset_extra ( YY_EXTRA_TYPE user_defined M4_YY_PROTO_LAST_ARG );
]])
m4_ifdef( [[M4_YY_NO_GET_IN]],,
[[
-FILE *yyget_in M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+FILE *yyget_in ( M4_YY_PROTO_ONLY_ARG );
]])
m4_ifdef( [[M4_YY_NO_SET_IN]],,
[[
-void yyset_in M4_YY_PARAMS( FILE * _in_str M4_YY_PROTO_LAST_ARG );
+void yyset_in ( FILE * _in_str M4_YY_PROTO_LAST_ARG );
]])
m4_ifdef( [[M4_YY_NO_GET_OUT]],,
[[
-FILE *yyget_out M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+FILE *yyget_out ( M4_YY_PROTO_ONLY_ARG );
]])
m4_ifdef( [[M4_YY_NO_SET_OUT]],,
[[
-void yyset_out M4_YY_PARAMS( FILE * _out_str M4_YY_PROTO_LAST_ARG );
+void yyset_out ( FILE * _out_str M4_YY_PROTO_LAST_ARG );
]])
m4_ifdef( [[M4_YY_NO_GET_LENG]],,
[[
- int yyget_leng M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+ int yyget_leng ( M4_YY_PROTO_ONLY_ARG );
]])
m4_ifdef( [[M4_YY_NO_GET_TEXT]],,
[[
-char *yyget_text M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+char *yyget_text ( M4_YY_PROTO_ONLY_ARG );
]])
m4_ifdef( [[M4_YY_NO_GET_LINENO]],,
[[
-int yyget_lineno M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+int yyget_lineno ( M4_YY_PROTO_ONLY_ARG );
]])
m4_ifdef( [[M4_YY_NO_SET_LINENO]],,
[[
-void yyset_lineno M4_YY_PARAMS( int _line_number M4_YY_PROTO_LAST_ARG );
+void yyset_lineno ( int _line_number M4_YY_PROTO_LAST_ARG );
]])
m4_ifdef( [[M4_YY_REENTRANT]],
[[
m4_ifdef( [[M4_YY_NO_GET_COLUMN]],,
[[
-int yyget_column M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+int yyget_column ( M4_YY_PROTO_ONLY_ARG );
]])
]])
@@ -984,28 +883,28 @@ m4_ifdef( [[M4_YY_REENTRANT]],
[[
m4_ifdef( [[M4_YY_NO_SET_COLUMN]],,
[[
-void yyset_column M4_YY_PARAMS( int _column_no M4_YY_PROTO_LAST_ARG );
+void yyset_column ( int _column_no M4_YY_PROTO_LAST_ARG );
]])
]])
%if-bison-bridge
m4_ifdef( [[M4_YY_NO_GET_LVAL]],,
[[
-YYSTYPE * yyget_lval M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+YYSTYPE * yyget_lval ( M4_YY_PROTO_ONLY_ARG );
]])
-void yyset_lval M4_YY_PARAMS( YYSTYPE * yylval_param M4_YY_PROTO_LAST_ARG );
+void yyset_lval ( YYSTYPE * yylval_param M4_YY_PROTO_LAST_ARG );
m4_ifdef( [[<M4_YY_BISON_LLOC>]],
[[
m4_ifdef( [[M4_YY_NO_GET_LLOC]],,
[[
- YYLTYPE *yyget_lloc M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+ YYLTYPE *yyget_lloc ( M4_YY_PROTO_ONLY_ARG );
]])
m4_ifdef( [[M4_YY_NO_SET_LLOC]],,
[[
- void yyset_lloc M4_YY_PARAMS( YYLTYPE * yylloc_param M4_YY_PROTO_LAST_ARG );
+ void yyset_lloc ( YYLTYPE * yylloc_param M4_YY_PROTO_LAST_ARG );
]])
]])
%endif
@@ -1016,9 +915,9 @@ m4_ifdef( [[<M4_YY_BISON_LLOC>]],
#ifndef YY_SKIP_YYWRAP
#ifdef __cplusplus
-extern "C" int yywrap M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+extern "C" int yywrap ( M4_YY_PROTO_ONLY_ARG );
#else
-extern int yywrap M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+extern int yywrap ( M4_YY_PROTO_ONLY_ARG );
#endif
#endif
@@ -1026,27 +925,27 @@ extern int yywrap M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
#ifndef YY_NO_UNPUT
m4_ifdef( [[M4_YY_NO_UNPUT]],,
[[
- static void yyunput M4_YY_PARAMS( int c, char *buf_ptr M4_YY_PROTO_LAST_ARG);
+ static void yyunput ( int c, char *buf_ptr M4_YY_PROTO_LAST_ARG);
]])
#endif
%ok-for-header
%endif
#ifndef yytext_ptr
-static void yy_flex_strncpy M4_YY_PARAMS( char *, yyconst char *, int M4_YY_PROTO_LAST_ARG);
+static void yy_flex_strncpy ( char *, const char *, int M4_YY_PROTO_LAST_ARG);
#endif
#ifdef YY_NEED_STRLEN
-static int yy_flex_strlen M4_YY_PARAMS( yyconst char * M4_YY_PROTO_LAST_ARG);
+static int yy_flex_strlen ( const char * M4_YY_PROTO_LAST_ARG);
#endif
#ifndef YY_NO_INPUT
%if-c-only Standard (non-C++) definition
%not-for-header
#ifdef __cplusplus
-static int yyinput M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+static int yyinput ( M4_YY_PROTO_ONLY_ARG );
#else
-static int input M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+static int input ( M4_YY_PROTO_ONLY_ARG );
#endif
%ok-for-header
%endif
@@ -1072,15 +971,15 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
[[
m4_ifdef( [[M4_YY_NO_PUSH_STATE]],,
[[
- static void yy_push_state M4_YY_PARAMS( int _new_state M4_YY_PROTO_LAST_ARG);
+ static void yy_push_state ( int _new_state M4_YY_PROTO_LAST_ARG);
]])
m4_ifdef( [[M4_YY_NO_POP_STATE]],,
[[
- static void yy_pop_state M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+ static void yy_pop_state ( M4_YY_PROTO_ONLY_ARG );
]])
m4_ifdef( [[M4_YY_NO_TOP_STATE]],,
[[
- static int yy_top_state M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );
+ static int yy_top_state ( M4_YY_PROTO_ONLY_ARG );
]])
]])
@@ -1168,15 +1067,15 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
m4preproc_include(`tables_shared.h')
/* Load the DFA tables from the given stream. */
-int yytables_fload M4_YY_PARAMS(FILE * fp M4_YY_PROTO_LAST_ARG);
+int yytables_fload (FILE * fp M4_YY_PROTO_LAST_ARG);
/* Unload the tables from memory. */
-int yytables_destroy M4_YY_PARAMS(M4_YY_PROTO_ONLY_ARG);
+int yytables_destroy (M4_YY_PROTO_ONLY_ARG);
%not-for-header
/** Describes a mapping from a serialized table id to its deserialized state in
* this scanner. This is the bridge between our "generic" deserialization code
- * and the specifics of this scanner.
+ * and the specifics of this scanner.
*/
struct yytbl_dmap {
enum yytbl_id dm_id;/**< table identifier */
@@ -1210,8 +1109,8 @@ struct yytbl_reader {
%if-c-only Standard (non-C++) definition
-m4_define( [[M4_YY_LEX_PROTO]], [[M4_YY_PARAMS(M4_YY_PROTO_ONLY_ARG)]])
-m4_define( [[M4_YY_LEX_DECLARATION]], [[YYFARGS0(void)]])
+m4_define( [[M4_YY_LEX_PROTO]], [[(M4_YY_PROTO_ONLY_ARG)]])
+m4_define( [[M4_YY_LEX_DECLARATION]], [[(M4_YY_DEF_ONLY_ARG)]])
m4_ifdef( [[M4_YY_BISON_LVAL]],
[[
@@ -1219,7 +1118,7 @@ m4_ifdef( [[M4_YY_BISON_LVAL]],
m4_dnl accept the lval parameter.
m4_define( [[M4_YY_LEX_PROTO]], [[\]]
- [[M4_YY_PARAMS(YYSTYPE * yylval_param M4_YY_PROTO_LAST_ARG)]])
+ [[(YYSTYPE * yylval_param M4_YY_PROTO_LAST_ARG)]])
m4_define( [[M4_YY_LEX_DECLARATION]], [[\]]
[[YYFARGS1(YYSTYPE *,yylval_param)]])
]])
@@ -1229,7 +1128,7 @@ m4_ifdef( [[<M4_YY_BISON_LLOC>]],
m4_dnl Locations are used. yylex should also accept the ylloc parameter.
m4_define( [[M4_YY_LEX_PROTO]], [[\]]
- [[M4_YY_PARAMS(YYSTYPE * yylval_param, YYLTYPE * yylloc_param M4_YY_PROTO_LAST_ARG)]])
+ [[(YYSTYPE * yylval_param, YYLTYPE * yylloc_param M4_YY_PROTO_LAST_ARG)]])
m4_define( [[M4_YY_LEX_DECLARATION]], [[\]]
[[YYFARGS2(YYSTYPE *,yylval_param, YYLTYPE *,yylloc_param)]])
]])
@@ -1652,7 +1551,7 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
* EOB_ACT_END_OF_FILE - end of file
*/
%if-c-only
-static int yy_get_next_buffer YYFARGS0(void)
+static int yy_get_next_buffer (M4_YY_DEF_ONLY_ARG)
%endif
%if-c++-only
int yyFlexLexer::yy_get_next_buffer()
@@ -1661,7 +1560,7 @@ int yyFlexLexer::yy_get_next_buffer()
M4_YY_DECL_GUTS_VAR();
char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
char *source = YY_G(yytext_ptr);
- yy_size_t number_to_move, i;
+ int number_to_move, i;
int ret_val;
if ( YY_G(yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[YY_G(yy_n_chars) + 1] )
@@ -1690,7 +1589,7 @@ int yyFlexLexer::yy_get_next_buffer()
/* Try to read more data. */
/* First move last chars to start of buffer. */
- number_to_move = (yy_size_t) (YY_G(yy_c_buf_p) - YY_G(yytext_ptr)) - 1;
+ number_to_move = (int) (YY_G(yy_c_buf_p) - YY_G(yytext_ptr) - 1);
for ( i = 0; i < number_to_move; ++i )
*(dest++) = *(source++);
@@ -1732,7 +1631,7 @@ m4_ifdef( [[M4_YY_USES_REJECT]],
b->yy_ch_buf = (char *)
/* Include room in for 2 EOB chars. */
yyrealloc( (void *) b->yy_ch_buf,
- b->yy_buf_size + 2 M4_YY_CALL_LAST_ARG );
+ (yy_size_t) (b->yy_buf_size + 2) M4_YY_CALL_LAST_ARG );
}
else
/* Can't grow it, we don't own it. */
@@ -1778,13 +1677,15 @@ m4_ifdef( [[M4_YY_USES_REJECT]],
else
ret_val = EOB_ACT_CONTINUE_SCAN;
- if ((int) (YY_G(yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
+ if ((YY_G(yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
/* Extend the array by 50%, plus the number we really need. */
int new_size = YY_G(yy_n_chars) + number_to_move + (YY_G(yy_n_chars) >> 1);
YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc(
- (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, new_size M4_YY_CALL_LAST_ARG );
+ (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size M4_YY_CALL_LAST_ARG );
if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
+ /* "- 2" to take care of EOB's */
+ YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2);
}
YY_G(yy_n_chars) += number_to_move;
@@ -1801,7 +1702,7 @@ m4_ifdef( [[M4_YY_USES_REJECT]],
%if-c-only
%not-for-header
- static yy_state_type yy_get_previous_state YYFARGS0(void)
+ static yy_state_type yy_get_previous_state (M4_YY_DEF_ONLY_ARG)
%endif
%if-c++-only
yy_state_type yyFlexLexer::yy_get_previous_state()
@@ -1904,9 +1805,9 @@ m4_ifdef( [[M4_YY_USE_LINENO]],
%if-c-only
#ifndef YY_NO_INPUT
#ifdef __cplusplus
- static int yyinput YYFARGS0(void)
+ static int yyinput (M4_YY_DEF_ONLY_ARG)
#else
- static int input YYFARGS0(void)
+ static int input (M4_YY_DEF_ONLY_ARG)
#endif
%endif
@@ -1931,7 +1832,7 @@ m4_ifdef( [[M4_YY_USE_LINENO]],
else
{ /* need more input */
- int offset = YY_G(yy_c_buf_p) - YY_G(yytext_ptr);
+ int offset = (int) (YY_G(yy_c_buf_p) - YY_G(yytext_ptr));
++YY_G(yy_c_buf_p);
switch ( yy_get_next_buffer( M4_YY_CALL_ONLY_ARG ) )
@@ -2017,6 +1918,9 @@ m4_ifdef( [[M4_YY_USE_LINENO]],
*/
void yyFlexLexer::yyrestart( std::istream* input_file )
{
+ if( ! input_file ) {
+ input_file = &yyin;
+ }
yyrestart( *input_file );
}
%endif
@@ -2064,7 +1968,7 @@ void yyFlexLexer::yyrestart( std::istream* input_file )
%if-c-only
-static void yy_load_buffer_state YYFARGS0(void)
+static void yy_load_buffer_state (M4_YY_DEF_ONLY_ARG)
%endif
%if-c++-only
void yyFlexLexer::yy_load_buffer_state()
@@ -2102,12 +2006,12 @@ static void yy_load_buffer_state YYFARGS0(void)
if ( ! b )
YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
- b->yy_buf_size = (yy_size_t)size;
+ b->yy_buf_size = size;
/* yy_ch_buf has to be 2 characters longer than the size given because
* we need to put in 2 end-of-buffer characters.
*/
- b->yy_ch_buf = (char *) yyalloc( b->yy_buf_size + 2 M4_YY_CALL_LAST_ARG );
+ b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2) M4_YY_CALL_LAST_ARG );
if ( ! b->yy_ch_buf )
YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
@@ -2292,7 +2196,7 @@ void yyFlexLexer::yypush_buffer_state (YY_BUFFER_STATE new_buffer)
* M4_YY_DOC_PARAM
*/
%if-c-only
-void yypop_buffer_state YYFARGS0(void)
+void yypop_buffer_state (M4_YY_DEF_ONLY_ARG)
%endif
%if-c++-only
void yyFlexLexer::yypop_buffer_state (void)
@@ -2320,13 +2224,13 @@ void yyFlexLexer::yypop_buffer_state (void)
* Guarantees space for at least one push.
*/
%if-c-only
-static void yyensure_buffer_stack YYFARGS0(void)
+static void yyensure_buffer_stack (M4_YY_DEF_ONLY_ARG)
%endif
%if-c++-only
void yyFlexLexer::yyensure_buffer_stack(void)
%endif
{
- int num_to_alloc;
+ yy_size_t num_to_alloc;
M4_YY_DECL_GUTS_VAR();
if (!YY_G(yy_buffer_stack)) {
@@ -2341,10 +2245,10 @@ void yyFlexLexer::yyensure_buffer_stack(void)
M4_YY_CALL_LAST_ARG);
if ( ! YY_G(yy_buffer_stack) )
YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
-
-
+
+
memset(YY_G(yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
-
+
YY_G(yy_buffer_stack_max) = num_to_alloc;
YY_G(yy_buffer_stack_top) = 0;
return;
@@ -2380,7 +2284,7 @@ m4_ifdef( [[M4_YY_NO_SCAN_BUFFER]],,
* @param base the character buffer
* @param size the size in bytes of the character buffer
* M4_YY_DOC_PARAM
- * @return the newly allocated buffer state object.
+ * @return the newly allocated buffer state object.
*/
YY_BUFFER_STATE yy_scan_buffer YYFARGS2( char *,base, yy_size_t ,size)
{
@@ -2397,7 +2301,7 @@ YY_BUFFER_STATE yy_scan_buffer YYFARGS2( char *,base, yy_size_t ,size)
if ( ! b )
YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
- b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
+ b->yy_buf_size = (int) (size - 2); /* "- 2" to take care of EOB's */
b->yy_buf_pos = b->yy_ch_buf = base;
b->yy_is_our_buffer = 0;
b->yy_input_file = NULL;
@@ -2426,7 +2330,7 @@ m4_ifdef( [[M4_YY_NO_SCAN_STRING]],,
* @note If you want to scan bytes that may contain NUL values, then use
* yy_scan_bytes() instead.
*/
-YY_BUFFER_STATE yy_scan_string YYFARGS1( yyconst char *, yystr)
+YY_BUFFER_STATE yy_scan_string YYFARGS1( const char *, yystr)
{
m4_dnl M4_YY_DECL_GUTS_VAR();
@@ -2446,16 +2350,16 @@ m4_ifdef( [[M4_YY_NO_SCAN_BYTES]],,
* M4_YY_DOC_PARAM
* @return the newly allocated buffer state object.
*/
-YY_BUFFER_STATE yy_scan_bytes YYFARGS2( yyconst char *,yybytes, int ,_yybytes_len)
+YY_BUFFER_STATE yy_scan_bytes YYFARGS2( const char *,yybytes, int ,_yybytes_len)
{
YY_BUFFER_STATE b;
char *buf;
yy_size_t n;
- yy_size_t i;
+ int i;
m4_dnl M4_YY_DECL_GUTS_VAR();
/* Get memory for full buffer, including space for trailing EOB's. */
- n = (yy_size_t) _yybytes_len + 2;
+ n = (yy_size_t) (_yybytes_len + 2);
buf = (char *) yyalloc( n M4_YY_CALL_LAST_ARG );
if ( ! buf )
YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
@@ -2518,7 +2422,7 @@ m4_ifdef( [[M4_YY_NO_PUSH_STATE]],,
m4_ifdef( [[M4_YY_NO_POP_STATE]],,
[[
%if-c-only
- static void yy_pop_state YYFARGS0(void)
+ static void yy_pop_state (M4_YY_DEF_ONLY_ARG)
%endif
%if-c++-only
void yyFlexLexer::yy_pop_state()
@@ -2536,7 +2440,7 @@ m4_ifdef( [[M4_YY_NO_POP_STATE]],,
m4_ifdef( [[M4_YY_NO_TOP_STATE]],,
[[
%if-c-only
- static int yy_top_state YYFARGS0(void)
+ static int yy_top_state (M4_YY_DEF_ONLY_ARG)
%endif
%if-c++-only
int yyFlexLexer::yy_top_state()
@@ -2552,16 +2456,16 @@ m4_ifdef( [[M4_YY_NO_TOP_STATE]],,
#endif
%if-c-only
-static void yynoreturn yy_fatal_error YYFARGS1(yyconst char*, msg)
+static void yynoreturn yy_fatal_error YYFARGS1(const char*, msg)
{
M4_YY_DECL_GUTS_VAR();
M4_YY_NOOP_GUTS_VAR();
- (void) fprintf( stderr, "%s\n", msg );
+ fprintf( stderr, "%s\n", msg );
exit( YY_EXIT_FAILURE );
}
%endif
%if-c++-only
-void yyFlexLexer::LexerError( yyconst char* msg )
+void yyFlexLexer::LexerError( const char* msg )
{
M4_YY_DECL_GUTS_VAR();
std::cerr << msg << std::endl;
@@ -2597,7 +2501,7 @@ m4_ifdef( [[M4_YY_NO_GET_EXTRA]],,
/** Get the user-defined data for this scanner.
* M4_YY_DOC_PARAM
*/
-YY_EXTRA_TYPE yyget_extra YYFARGS0(void)
+YY_EXTRA_TYPE yyget_extra (M4_YY_DEF_ONLY_ARG)
{
M4_YY_DECL_GUTS_VAR();
return yyextra;
@@ -2610,10 +2514,10 @@ m4_ifdef( [[M4_YY_NO_GET_LINENO]],,
/** Get the current line number.
* M4_YY_DOC_PARAM
*/
-int yyget_lineno YYFARGS0(void)
+int yyget_lineno (M4_YY_DEF_ONLY_ARG)
{
M4_YY_DECL_GUTS_VAR();
-
+
m4_ifdef( [[M4_YY_REENTRANT]],
[[
if (! YY_CURRENT_BUFFER)
@@ -2630,10 +2534,10 @@ m4_ifdef( [[M4_YY_NO_GET_COLUMN]],,
/** Get the current column number.
* M4_YY_DOC_PARAM
*/
-int yyget_column YYFARGS0(void)
+int yyget_column (M4_YY_DEF_ONLY_ARG)
{
M4_YY_DECL_GUTS_VAR();
-
+
m4_ifdef( [[M4_YY_REENTRANT]],
[[
if (! YY_CURRENT_BUFFER)
@@ -2649,7 +2553,7 @@ m4_ifdef( [[M4_YY_NO_GET_IN]],,
/** Get the input stream.
* M4_YY_DOC_PARAM
*/
-FILE *yyget_in YYFARGS0(void)
+FILE *yyget_in (M4_YY_DEF_ONLY_ARG)
{
M4_YY_DECL_GUTS_VAR();
return yyin;
@@ -2661,7 +2565,7 @@ m4_ifdef( [[M4_YY_NO_GET_OUT]],,
/** Get the output stream.
* M4_YY_DOC_PARAM
*/
-FILE *yyget_out YYFARGS0(void)
+FILE *yyget_out (M4_YY_DEF_ONLY_ARG)
{
M4_YY_DECL_GUTS_VAR();
return yyout;
@@ -2673,7 +2577,7 @@ m4_ifdef( [[M4_YY_NO_GET_LENG]],,
/** Get the length of the current token.
* M4_YY_DOC_PARAM
*/
-int yyget_leng YYFARGS0(void)
+int yyget_leng (M4_YY_DEF_ONLY_ARG)
{
M4_YY_DECL_GUTS_VAR();
return yyleng;
@@ -2685,7 +2589,7 @@ int yyget_leng YYFARGS0(void)
*/
m4_ifdef( [[M4_YY_NO_GET_TEXT]],,
[[
-char *yyget_text YYFARGS0(void)
+char *yyget_text (M4_YY_DEF_ONLY_ARG)
{
M4_YY_DECL_GUTS_VAR();
return yytext;
@@ -2778,7 +2682,7 @@ void yyset_out YYFARGS1( FILE * ,_out_str)
m4_ifdef( [[M4_YY_NO_GET_DEBUG]],,
[[
-int yyget_debug YYFARGS0(void)
+int yyget_debug (M4_YY_DEF_ONLY_ARG)
{
M4_YY_DECL_GUTS_VAR();
return yy_flex_debug;
@@ -2801,7 +2705,7 @@ void yyset_debug YYFARGS1( int ,_bdebug)
%if-bison-bridge
m4_ifdef( [[M4_YY_NO_GET_LVAL]],,
[[
-YYSTYPE * yyget_lval YYFARGS0(void)
+YYSTYPE * yyget_lval (M4_YY_DEF_ONLY_ARG)
{
M4_YY_DECL_GUTS_VAR();
return yylval;
@@ -2821,7 +2725,7 @@ m4_ifdef( [[<M4_YY_BISON_LLOC>]],
[[
m4_ifdef( [[M4_YY_NO_GET_LLOC]],,
[[
-YYLTYPE *yyget_lloc YYFARGS0(void)
+YYLTYPE *yyget_lloc (M4_YY_DEF_ONLY_ARG)
{
M4_YY_DECL_GUTS_VAR();
return yylloc;
@@ -2847,14 +2751,7 @@ void yyset_lloc YYFARGS1( YYLTYPE * ,yylloc_param)
* the ONLY reentrant function that doesn't take the scanner as the last argument.
* That's why we explicitly handle the declaration, instead of using our macros.
*/
-m4_ifdef( [[M4_YY_NO_ANSI_FUNC_DEFS]],
-[[
-int yylex_init( ptr_yy_globals )
- yyscan_t* ptr_yy_globals;
-]],
-[[
int yylex_init(yyscan_t* ptr_yy_globals)
-]])
{
if (ptr_yy_globals == NULL){
errno = EINVAL;
@@ -2882,15 +2779,7 @@ int yylex_init(yyscan_t* ptr_yy_globals)
* The user defined value in the first argument will be available to yyalloc in
* the yyextra field.
*/
-m4_ifdef( [[M4_YY_NO_ANSI_FUNC_DEFS]],
-[[
-int yylex_init_extra( yy_user_defined, ptr_yy_globals )
- YY_EXTRA_TYPE yy_user_defined;
- yyscan_t* ptr_yy_globals;
-]],
-[[
int yylex_init_extra( YY_EXTRA_TYPE yy_user_defined, yyscan_t* ptr_yy_globals )
-]])
{
struct yyguts_t dummy_yyguts;
@@ -2900,20 +2789,20 @@ int yylex_init_extra( YY_EXTRA_TYPE yy_user_defined, yyscan_t* ptr_yy_globals )
errno = EINVAL;
return 1;
}
-
+
*ptr_yy_globals = (yyscan_t) yyalloc ( sizeof( struct yyguts_t ), &dummy_yyguts );
-
+
if (*ptr_yy_globals == NULL){
errno = ENOMEM;
return 1;
}
-
+
/* By setting to 0xAA, we expose bugs in
yy_init_globals. Leave at 0x00 for releases. */
memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t));
-
+
yyset_extra (yy_user_defined, *ptr_yy_globals);
-
+
return yy_init_globals ( *ptr_yy_globals );
}
@@ -2921,7 +2810,7 @@ int yylex_init_extra( YY_EXTRA_TYPE yy_user_defined, yyscan_t* ptr_yy_globals )
%# Actually, that ended an if-rentrant section
%if-c-only
-static int yy_init_globals YYFARGS0(void)
+static int yy_init_globals (M4_YY_DEF_ONLY_ARG)
{
M4_YY_DECL_GUTS_VAR();
/* Initialization is the same as for the non-reentrant scanner.
@@ -2984,7 +2873,7 @@ m4_ifdef( [[M4_YY_TEXT_IS_ARRAY]],
%if-c-only SNIP! this currently causes conflicts with the c++ scanner
/* yylex_destroy is for both reentrant and non-reentrant scanners. */
-int yylex_destroy YYFARGS0(void)
+int yylex_destroy (M4_YY_DEF_ONLY_ARG)
{
M4_YY_DECL_GUTS_VAR();
@@ -3036,7 +2925,7 @@ m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
[[
#ifndef yytext_ptr
-static void yy_flex_strncpy YYFARGS3( char*,s1, yyconst char *,s2, int,n)
+static void yy_flex_strncpy YYFARGS3( char*,s1, const char *,s2, int,n)
{
M4_YY_DECL_GUTS_VAR();
M4_YY_NOOP_GUTS_VAR();
@@ -3051,7 +2940,7 @@ static void yy_flex_strncpy YYFARGS3( char*,s1, yyconst char *,s2, int,n)
m4_ifdef( [[M4_YY_NOT_IN_HEADER]],
[[
#ifdef YY_NEED_STRLEN
-static int yy_flex_strlen YYFARGS1( yyconst char *,s)
+static int yy_flex_strlen YYFARGS1( const char *,s)
{
int n;
for ( n = 0; s[n]; ++n )
@@ -3110,7 +2999,7 @@ static int yytbl_read8 (void *v, struct yytbl_reader * rd)
errno = EIO;
return -1;
}
- rd->bread += sizeof(flex_uint8_t);
+ rd->bread += (flex_uint32_t) sizeof(flex_uint8_t);
return 0;
}
@@ -3122,7 +3011,7 @@ static int yytbl_read16 (void *v, struct yytbl_reader * rd)
return -1;
}
*((flex_uint16_t *) v) = ntohs (*((flex_uint16_t *) v));
- rd->bread += sizeof(flex_uint16_t);
+ rd->bread += (flex_uint32_t) sizeof(flex_uint16_t);
return 0;
}
@@ -3134,7 +3023,7 @@ static int yytbl_read32 (void *v, struct yytbl_reader * rd)
return -1;
}
*((flex_uint32_t *) v) = ntohl (*((flex_uint32_t *) v));
- rd->bread += sizeof(flex_uint32_t);
+ rd->bread += (flex_uint32_t) sizeof(flex_uint32_t);
return 0;
}
@@ -3177,7 +3066,7 @@ static int yytbl_hdr_read YYFARGS2(struct yytbl_hdr *, th, struct yytbl_reader *
return -1;
}
else
- rd->bread += bytes;
+ rd->bread += (flex_uint32_t) bytes;
th->th_name = th->th_version + strlen (th->th_version) + 1;
return 0;
@@ -3201,7 +3090,7 @@ static struct yytbl_dmap *yytbl_dmap_lookup YYFARGS2(struct yytbl_dmap *, dmap,
return NULL;
}
-/** Read a table while mapping its contents to the local array.
+/** Read a table while mapping its contents to the local array.
* @param dmap used to performing mapping
* @return 0 on success
*/
@@ -3246,7 +3135,7 @@ static int yytbl_data_load YYFARGS2(struct yytbl_dmap *, dmap, struct yytbl_read
if(M4_YY_TABLES_VERIFY)
/* We point to the array itself */
- p = dmap->dm_arr;
+ p = dmap->dm_arr;
else
/* We point to the address of a pointer. */
*dmap->dm_arr = p = (void *) yyalloc (bytes M4_YY_CALL_LAST_ARG);
@@ -3293,7 +3182,7 @@ static int yytbl_data_load YYFARGS2(struct yytbl_dmap *, dmap, struct yytbl_read
rv = yytbl_read8 (&t8, rd);
t32 = t8;
break;
- default:
+ default:
YY_FATAL_ERROR( "invalid td_flags" ); /* TODO: not fatal. */
return -1;
}
@@ -3350,7 +3239,7 @@ static int yytbl_data_load YYFARGS2(struct yytbl_dmap *, dmap, struct yytbl_read
YY_FATAL_ERROR( "transition table not found" ); /* TODO: not fatal. */
return -1;
}
-
+
if( M4_YY_TABLES_VERIFY)
v = &(((struct yy_trans_info *) (transdmap->dm_arr))[t32]);
else
@@ -3361,7 +3250,7 @@ static int yytbl_data_load YYFARGS2(struct yytbl_dmap *, dmap, struct yytbl_read
YY_FATAL_ERROR( "tables verification failed at YYTD_PTRANS" );
}else
((struct yy_trans_info **) p)[0] = v;
-
+
/* increment p */
p = (struct yy_trans_info **) p + 1;
}
@@ -3476,8 +3365,8 @@ int yytables_fload YYFARGS1(FILE *, fp)
}
/** Destroy the loaded tables, freeing memory, etc.. */
-int yytables_destroy YYFARGS0(void)
-{
+int yytables_destroy (M4_YY_DEF_ONLY_ARG)
+{
struct yytbl_dmap *dmap=0;
if(!M4_YY_TABLES_VERIFY){
@@ -3500,7 +3389,7 @@ int yytables_destroy YYFARGS0(void)
m4_ifdef([[M4_YY_MAIN]], [[
-int main M4_YY_PARAMS(void);
+int main (void);
int main ()
{
@@ -3534,4 +3423,5 @@ m4_ifdef( [[M4_YY_IN_HEADER]],
#undef YY_DECL_IS_OURS
#undef YY_DECL
#endif
+m4preproc_undivert(1)
]])
diff --git a/src/flexdef.h b/src/flexdef.h
index 27ad610..9dac654 100644
--- a/src/flexdef.h
+++ b/src/flexdef.h
@@ -57,23 +57,24 @@
#ifdef HAVE_LIMITS_H
#include <limits.h>
#endif
-#ifdef HAVE_UNISTD_H
+/* Required: dup() and dup2() in <unistd.h> */
#include <unistd.h>
-#endif
#ifdef HAVE_NETINET_IN_H
#include <netinet/in.h>
#endif
#ifdef HAVE_SYS_PARAMS_H
#include <sys/params.h>
#endif
-#ifdef HAVE_SYS_STAT_H
+/* Required: stat() in <sys/stat.h> */
#include <sys/stat.h>
-#endif
+/* Required: wait() in <sys/wait.h> */
#include <sys/wait.h>
#include <stdbool.h>
-#ifdef HAVE_REGEX_H
+#include <stdarg.h>
+/* Required: regcomp(), regexec() and regerror() in <regex.h> */
#include <regex.h>
-#endif
+/* Required: strcasecmp() in <strings.h> */
+#include <strings.h>
#include "flexint.h"
/* We use gettext. So, when we write strings which should be translated, we mark them with _() */
@@ -108,6 +109,8 @@
#define ABS(x) ((x) < 0 ? -(x) : (x))
#endif
+/* Whether an integer is a power of two */
+#define is_power_of_2(n) ((n) > 0 && ((n) & ((n) - 1)) == 0)
#define unspecified -1
@@ -358,7 +361,6 @@ extern int interactive, lex_compat, posix_compat, do_yylineno;
extern int useecs, fulltbl, usemecs, fullspd;
extern int gen_line_dirs, performance_report, backing_up_report;
extern int reentrant, bison_bridge_lval, bison_bridge_lloc;
-extern bool ansi_func_defs, ansi_func_protos;
extern int C_plus_plus, long_align, use_read, yytext_is_array, do_yywrap;
extern int csize;
extern int yymore_used, reject, real_reject, continued_action, in_rule;
@@ -843,9 +845,6 @@ extern void flexfatal(const char *);
}while(0)
#endif /* ! HAVE_DECL___func__ */
-/* Convert a hexadecimal digit string to an integer value. */
-extern int htoi(unsigned char[]);
-
/* Report an error message formatted */
extern void lerr(const char *, ...)
#if defined(__GNUC__) && __GNUC__ >= 3
@@ -882,9 +881,6 @@ extern int myctoi(const char *);
/* Return character corresponding to escape sequence. */
extern unsigned char myesc(unsigned char[]);
-/* Convert an octal digit string to an integer value. */
-extern int otoi(unsigned char[]);
-
/* Output a (possibly-formatted) string to the generated scanner. */
extern void out(const char *);
extern void out_dec(const char *, int);
@@ -975,8 +971,9 @@ extern void line_pinpoint(const char *, int);
extern void format_synerr(const char *, const char *);
extern void synerr(const char *); /* report a syntax error */
extern void format_warn(const char *, const char *);
-extern void warn(const char *); /* report a warning */
+extern void lwarn(const char *); /* report a warning */
extern void yyerror(const char *); /* report a parse error */
+extern int yyparse(void); /* the YACC parser */
/* from file scan.l */
@@ -1064,9 +1061,10 @@ extern struct Buf defs_buf; /* a char* buffer to save #define'd some symbols
extern struct Buf yydmap_buf; /* a string buffer to hold yydmap elements */
extern struct Buf m4defs_buf; /* Holds m4 definitions. */
extern struct Buf top_buf; /* contains %top code. String buffer. */
+extern bool no_section3_escape; /* True if the undocumented option --unsafe-no-m4-sect3-escape was passed */
/* For blocking out code from the header file. */
-#define OUT_BEGIN_CODE() outn("m4_ifdef( [[M4_YY_IN_HEADER]],,[[")
+#define OUT_BEGIN_CODE() outn("m4_ifdef( [[M4_YY_IN_HEADER]],,[[m4_dnl")
#define OUT_END_CODE() outn("]])")
/* For setjmp/longjmp (instead of calling exit(2)). Linkage in main.c */
diff --git a/src/flexint.h b/src/flexint.h
index f9fa80c..43bb3a8 100644
--- a/src/flexint.h
+++ b/src/flexint.h
@@ -58,6 +58,10 @@ typedef unsigned int flex_uint32_t;
#define UINT32_MAX (4294967295U)
#endif
+#ifndef SIZE_MAX
+#define SIZE_MAX (~(size_t)0)
+#endif
+
#endif /* ! C99 */
#endif /* ! FLEXINT_H */
diff --git a/src/gen.c b/src/gen.c
index 4688709..590e5d8 100644
--- a/src/gen.c
+++ b/src/gen.c
@@ -53,44 +53,30 @@ static int indent_level = 0; /* each level is 8 spaces */
static const char *get_int16_decl (void)
{
return (gentables)
- ? "static yyconst flex_int16_t %s[%d] =\n { 0,\n"
- : "static yyconst flex_int16_t * %s = 0;\n";
+ ? "static const flex_int16_t %s[%d] =\n { 0,\n"
+ : "static const flex_int16_t * %s = 0;\n";
}
static const char *get_int32_decl (void)
{
return (gentables)
- ? "static yyconst flex_int32_t %s[%d] =\n { 0,\n"
- : "static yyconst flex_int32_t * %s = 0;\n";
+ ? "static const flex_int32_t %s[%d] =\n { 0,\n"
+ : "static const flex_int32_t * %s = 0;\n";
}
static const char *get_state_decl (void)
{
return (gentables)
- ? "static yyconst yy_state_type %s[%d] =\n { 0,\n"
- : "static yyconst yy_state_type * %s = 0;\n";
-}
-
-static const char *get_uint16_decl (void)
-{
- return (gentables)
- ? "static yyconst flex_uint16_t %s[%d] =\n { 0,\n"
- : "static yyconst flex_uint16_t * %s = 0;\n";
-}
-
-static const char *get_uint32_decl (void)
-{
- return (gentables)
- ? "static yyconst flex_uint32_t %s[%d] =\n { 0,\n"
- : "static yyconst flex_uint32_t * %s = 0;\n";
+ ? "static const yy_state_type %s[%d] =\n { 0,\n"
+ : "static const yy_state_type * %s = 0;\n";
}
static const char *get_yy_char_decl (void)
{
return (gentables)
- ? "static yyconst YY_CHAR %s[%d] =\n { 0,\n"
- : "static yyconst YY_CHAR * %s = 0;\n";
+ ? "static const YY_CHAR %s[%d] =\n { 0,\n"
+ : "static const YY_CHAR * %s = 0;\n";
}
/* Indent to the current level. */
@@ -123,7 +109,7 @@ static struct yytbl_data *mkeoltbl (void)
tbl = calloc(1, sizeof (struct yytbl_data));
yytbl_data_init (tbl, YYTD_ID_RULE_CAN_MATCH_EOL);
tbl->td_flags = YYTD_DATA8;
- tbl->td_lolen = num_rules + 1;
+ tbl->td_lolen = (flex_uint32_t) (num_rules + 1);
tbl->td_data = tdata =
calloc(tbl->td_lolen, sizeof (flex_int8_t));
@@ -231,7 +217,7 @@ static struct yytbl_data *mkctbl (void)
yytbl_data_init (tbl, YYTD_ID_TRANSITION);
tbl->td_flags = YYTD_DATA32 | YYTD_STRUCT;
tbl->td_hilen = 0;
- tbl->td_lolen = tblend + numecs + 1; /* number of structs */
+ tbl->td_lolen = (flex_uint32_t) (tblend + numecs + 1); /* number of structs */
tbl->td_data = tdata =
calloc(tbl->td_lolen * 2, sizeof (flex_int32_t));
@@ -327,7 +313,7 @@ static struct yytbl_data *mkssltbl (void)
yytbl_data_init (tbl, YYTD_ID_START_STATE_LIST);
tbl->td_flags = YYTD_DATA32 | YYTD_PTRANS;
tbl->td_hilen = 0;
- tbl->td_lolen = lastsc * 2 + 1;
+ tbl->td_lolen = (flex_uint32_t) (lastsc * 2 + 1);
tbl->td_data = tdata =
calloc(tbl->td_lolen, sizeof (flex_int32_t));
@@ -353,9 +339,9 @@ void genctbl (void)
/* Table of verify for transition and offset to next state. */
if (gentables)
- out_dec ("static yyconst struct yy_trans_info yy_transition[%d] =\n {\n", tblend + numecs + 1);
+ out_dec ("static const struct yy_trans_info yy_transition[%d] =\n {\n", tblend + numecs + 1);
else
- outn ("static yyconst struct yy_trans_info *yy_transition = 0;");
+ outn ("static const struct yy_trans_info *yy_transition = 0;");
/* We want the transition to be represented as the offset to the
* next state, not the actual state number, which is what it currently
@@ -427,9 +413,9 @@ void genctbl (void)
/* Table of pointers to start states. */
if (gentables)
- out_dec ("static yyconst struct yy_trans_info *yy_start_state_list[%d] =\n", lastsc * 2 + 1);
+ out_dec ("static const struct yy_trans_info *yy_start_state_list[%d] =\n", lastsc * 2 + 1);
else
- outn ("static yyconst struct yy_trans_info **yy_start_state_list =0;");
+ outn ("static const struct yy_trans_info **yy_start_state_list =0;");
if (gentables) {
outn (" {");
@@ -457,7 +443,7 @@ static struct yytbl_data *mkecstbl (void)
yytbl_data_init (tbl, YYTD_ID_EC);
tbl->td_flags |= YYTD_DATA32;
tbl->td_hilen = 0;
- tbl->td_lolen = csize;
+ tbl->td_lolen = (flex_uint32_t) csize;
tbl->td_data = tdata =
calloc(tbl->td_lolen, sizeof (flex_int32_t));
@@ -523,8 +509,12 @@ void gen_find_action (void)
indent_puts ("yy_current_state = *--YY_G(yy_state_ptr);");
indent_puts ("YY_G(yy_lp) = yy_accept[yy_current_state];");
+ if (!variable_trailing_context_rules)
+ outn ("m4_ifdef( [[M4_YY_USES_REJECT]],\n[[");
if(reject_really_used)
outn ("find_rule: /* we branch to this label when backing up */");
+ if (!variable_trailing_context_rules)
+ outn ("]])\n");
indent_puts
("for ( ; ; ) /* until we find what rule we matched */");
@@ -663,7 +653,7 @@ struct yytbl_data *mkftbl (void)
yytbl_data_init (tbl, YYTD_ID_ACCEPT);
tbl->td_flags |= YYTD_DATA32;
tbl->td_hilen = 0; /* it's a one-dimensional array */
- tbl->td_lolen = lastdfa + 1;
+ tbl->td_lolen = (flex_uint32_t) (lastdfa + 1);
tbl->td_data = tdata =
calloc(tbl->td_lolen, sizeof (flex_int32_t));
@@ -752,7 +742,7 @@ void gen_next_compressed_state (char *char_map)
out_dec ("if ( yy_current_state >= %d )\n", lastdfa + 2);
++indent_level;
- indent_puts ("yy_c = yy_meta[(unsigned int) yy_c];");
+ indent_puts ("yy_c = yy_meta[yy_c];");
--indent_level;
}
@@ -760,7 +750,7 @@ void gen_next_compressed_state (char *char_map)
--indent_level;
indent_puts
- ("yy_current_state = yy_nxt[yy_base[yy_current_state] + (flex_int16_t) yy_c];");
+ ("yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];");
}
@@ -810,11 +800,11 @@ void gen_next_match (void)
else if (fullspd) {
indent_puts ("{");
indent_puts
- ("yyconst struct yy_trans_info *yy_trans_info;\n");
+ ("const struct yy_trans_info *yy_trans_info;\n");
indent_puts ("YY_CHAR yy_c;\n");
indent_put2s ("for ( yy_c = %s;", char_map);
indent_puts
- (" (yy_trans_info = &yy_current_state[(unsigned int) yy_c])->");
+ (" (yy_trans_info = &yy_current_state[yy_c])->");
indent_puts ("yy_verify == yy_c;");
indent_put2s (" yy_c = %s )", char_map_2);
@@ -977,7 +967,7 @@ void gen_NUL_trans (void)
out_dec ("int yy_c = %d;\n", NUL_ec);
indent_puts
- ("yyconst struct yy_trans_info *yy_trans_info;\n");
+ ("const struct yy_trans_info *yy_trans_info;\n");
indent_puts
("yy_trans_info = &yy_current_state[(unsigned int) yy_c];");
indent_puts ("yy_current_state += yy_trans_info->yy_nxt;");
@@ -1106,7 +1096,7 @@ void gentabs (void)
yyacclist_tbl = calloc(1,sizeof(struct yytbl_data));
yytbl_data_init (yyacclist_tbl, YYTD_ID_ACCLIST);
- yyacclist_tbl->td_lolen = MAX(numas,1) + 1;
+ yyacclist_tbl->td_lolen = (flex_uint32_t) (MAX(numas,1) + 1);
yyacclist_tbl->td_data = yyacclist_data =
calloc(yyacclist_tbl->td_lolen, sizeof (flex_int32_t));
yyacclist_curr = 1;
@@ -1215,7 +1205,7 @@ void gentabs (void)
yyacc_tbl = calloc(1, sizeof (struct yytbl_data));
yytbl_data_init (yyacc_tbl, YYTD_ID_ACCEPT);
- yyacc_tbl->td_lolen = k;
+ yyacc_tbl->td_lolen = (flex_uint32_t) k;
yyacc_tbl->td_data = yyacc_data =
calloc(yyacc_tbl->td_lolen, sizeof (flex_int32_t));
yyacc_curr=1;
@@ -1272,7 +1262,7 @@ void gentabs (void)
flex_int32_t *yymecs_data = 0;
yymeta_tbl = calloc(1, sizeof (struct yytbl_data));
yytbl_data_init (yymeta_tbl, YYTD_ID_META);
- yymeta_tbl->td_lolen = numecs + 1;
+ yymeta_tbl->td_lolen = (flex_uint32_t) (numecs + 1);
yymeta_tbl->td_data = yymecs_data =
calloc(yymeta_tbl->td_lolen,
sizeof (flex_int32_t));
@@ -1311,16 +1301,16 @@ void gentabs (void)
/* Begin generating yy_base */
out_str_dec ((tblend >= INT16_MAX || long_align) ?
- get_uint32_decl () : get_uint16_decl (),
+ get_int32_decl () : get_int16_decl (),
"yy_base", total_states + 1);
buf_prints (&yydmap_buf,
"\t{YYTD_ID_BASE, (void**)&yy_base, sizeof(%s)},\n",
(tblend >= INT16_MAX
- || long_align) ? "flex_uint32_t" : "flex_uint16_t");
+ || long_align) ? "flex_int32_t" : "flex_int16_t");
yybase_tbl = calloc (1, sizeof (struct yytbl_data));
yytbl_data_init (yybase_tbl, YYTD_ID_BASE);
- yybase_tbl->td_lolen = total_states + 1;
+ yybase_tbl->td_lolen = (flex_uint32_t) (total_states + 1);
yybase_tbl->td_data = yybase_data =
calloc(yybase_tbl->td_lolen,
sizeof (flex_int32_t));
@@ -1378,7 +1368,7 @@ void gentabs (void)
yydef_tbl = calloc(1, sizeof (struct yytbl_data));
yytbl_data_init (yydef_tbl, YYTD_ID_DEF);
- yydef_tbl->td_lolen = total_states + 1;
+ yydef_tbl->td_lolen = (flex_uint32_t) (total_states + 1);
yydef_tbl->td_data = yydef_data =
calloc(yydef_tbl->td_lolen, sizeof (flex_int32_t));
@@ -1400,17 +1390,17 @@ void gentabs (void)
/* Begin generating yy_nxt */
out_str_dec ((total_states >= INT16_MAX || long_align) ?
- get_uint32_decl () : get_uint16_decl (), "yy_nxt",
+ get_int32_decl () : get_int16_decl (), "yy_nxt",
tblend + 1);
buf_prints (&yydmap_buf,
"\t{YYTD_ID_NXT, (void**)&yy_nxt, sizeof(%s)},\n",
(total_states >= INT16_MAX
- || long_align) ? "flex_uint32_t" : "flex_uint16_t");
+ || long_align) ? "flex_int32_t" : "flex_int16_t");
yynxt_tbl = calloc (1, sizeof (struct yytbl_data));
yytbl_data_init (yynxt_tbl, YYTD_ID_NXT);
- yynxt_tbl->td_lolen = tblend + 1;
+ yynxt_tbl->td_lolen = (flex_uint32_t) (tblend + 1);
yynxt_tbl->td_data = yynxt_data =
calloc (yynxt_tbl->td_lolen, sizeof (flex_int32_t));
@@ -1447,7 +1437,7 @@ void gentabs (void)
yychk_tbl = calloc (1, sizeof (struct yytbl_data));
yytbl_data_init (yychk_tbl, YYTD_ID_CHK);
- yychk_tbl->td_lolen = tblend + 1;
+ yychk_tbl->td_lolen = (flex_uint32_t) (tblend + 1);
yychk_tbl->td_data = yychk_data =
calloc(yychk_tbl->td_lolen, sizeof (flex_int32_t));
@@ -1706,7 +1696,7 @@ void make_tables (void)
yytbl_data_init (yynultrans_tbl, YYTD_ID_NUL_TRANS);
if (fullspd)
yynultrans_tbl->td_flags |= YYTD_PTRANS;
- yynultrans_tbl->td_lolen = lastdfa + 1;
+ yynultrans_tbl->td_lolen = (flex_uint32_t) (lastdfa + 1);
yynultrans_tbl->td_data = yynultrans_data =
calloc(yynultrans_tbl->td_lolen,
sizeof (flex_int32_t));
@@ -1875,7 +1865,7 @@ void make_tables (void)
if (!C_plus_plus) {
if (use_read) {
outn ("\terrno=0; \\");
- outn ("\twhile ( (result = (int) read( fileno(yyin), buf, max_size )) < 0 ) \\");
+ outn ("\twhile ( (result = (int) read( fileno(yyin), buf, (yy_size_t) max_size )) < 0 ) \\");
outn ("\t{ \\");
outn ("\t\tif( errno != EINTR) \\");
outn ("\t\t{ \\");
@@ -1891,7 +1881,7 @@ void make_tables (void)
outn ("\tif ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \\");
outn ("\t\t{ \\");
outn ("\t\tint c = '*'; \\");
- outn ("\t\tsize_t n; \\");
+ outn ("\t\tint n; \\");
outn ("\t\tfor ( n = 0; n < max_size && \\");
outn ("\t\t\t (c = getc( yyin )) != EOF && c != '\\n'; ++n ) \\");
outn ("\t\t\tbuf[n] = (char) c; \\");
@@ -1904,7 +1894,7 @@ void make_tables (void)
outn ("\telse \\");
outn ("\t\t{ \\");
outn ("\t\terrno=0; \\");
- outn ("\t\twhile ( (result = (int) fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \\");
+ outn ("\t\twhile ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \\");
outn ("\t\t\t{ \\");
outn ("\t\t\tif( errno != EINTR) \\");
outn ("\t\t\t\t{ \\");
@@ -1949,7 +1939,7 @@ void make_tables (void)
++indent_level;
indent_puts ("{");
indent_puts
- ("YY_G(yy_more_len) = YY_G(yy_c_buf_p) - YY_G(yytext_ptr);");
+ ("YY_G(yy_more_len) = (int) (YY_G(yy_c_buf_p) - YY_G(yytext_ptr));");
indent_puts ("YY_G(yy_more_flag) = 0;");
indent_puts ("}");
--indent_level;
@@ -1973,7 +1963,7 @@ void make_tables (void)
("if ( yy_act != YY_END_OF_BUFFER && yy_rule_can_match_eol[yy_act] )");
++indent_level;
indent_puts ("{");
- indent_puts ("yy_size_t yyl;");
+ indent_puts ("int yyl;");
do_indent ();
out_str ("for ( yyl = %s; yyl < yyleng; ++yyl )\n",
yymore_used ? (yytext_is_array ? "YY_G(yy_prev_more_offset)" :
@@ -2164,7 +2154,11 @@ void make_tables (void)
if (sectnum == 3) {
OUT_BEGIN_CODE ();
+ if (!no_section3_escape)
+ fputs("[[", stdout);
(void) flexscan (); /* copy remainder of input to output */
+ if (!no_section3_escape)
+ fputs("]]", stdout);
OUT_END_CODE ();
}
}
diff --git a/src/main.c b/src/main.c
index e329e4e..e5eac44 100644
--- a/src/main.c
+++ b/src/main.c
@@ -106,7 +106,6 @@ int num_input_files;
jmp_buf flex_main_jmp_buf;
bool *rule_has_nl, *ccl_has_nl;
int nlch = '\n';
-bool ansi_func_defs, ansi_func_protos;
bool tablesext, tablesverify, gentables;
char *tablesfilename=0,*tablesname=0;
@@ -128,8 +127,8 @@ static char outfile_path[MAXLINE];
static int outfile_created = 0;
static char *skelname = NULL;
static int _stdout_closed = 0; /* flag to prevent double-fclose() on stdout. */
-const char *escaped_qstart = "[[]]M4_YY_NOOP[M4_YY_NOOP[M4_YY_NOOP[[]]";
-const char *escaped_qend = "[[]]M4_YY_NOOP]M4_YY_NOOP]M4_YY_NOOP[[]]";
+const char *escaped_qstart = "]]M4_YY_NOOP[M4_YY_NOOP[M4_YY_NOOP[[";
+const char *escaped_qend = "]]M4_YY_NOOP]M4_YY_NOOP]M4_YY_NOOP[[";
/* For debugging. The max number of filters to apply to skeleton. */
static int preproc_level = 1000;
@@ -277,7 +276,7 @@ void check_options (void)
flexerror (_("Can't use -+ with -CF option"));
if (C_plus_plus && yytext_is_array) {
- warn (_("%array incompatible with -+ option"));
+ lwarn (_("%array incompatible with -+ option"));
yytext_is_array = false;
}
@@ -311,14 +310,8 @@ void check_options (void)
}
}
- if (!ansi_func_defs)
- buf_m4_define( &m4defs_buf, "M4_YY_NO_ANSI_FUNC_DEFS", NULL);
-
- if (!ansi_func_protos)
- buf_m4_define( &m4defs_buf, "M4_YY_NO_ANSI_FUNC_PROTOS", NULL);
-
- if (extra_type)
- buf_m4_define( &m4defs_buf, "M4_EXTRA_TYPE_DEFS", extra_type);
+ if (extra_type)
+ buf_m4_define( &m4defs_buf, "M4_EXTRA_TYPE_DEFS", extra_type);
if (!use_stdout) {
FILE *prev_stdout;
@@ -358,28 +351,27 @@ void check_options (void)
if (!path) {
m4 = M4;
} else {
+ int m4_length = strlen(m4);
do {
- char m4_path[PATH_MAX];
- int length = strlen(path);
+ size_t length = strlen(path);
struct stat sbuf;
const char *endOfDir = strchr(path, ':');
if (!endOfDir)
endOfDir = path+length;
- if ((endOfDir-path+2) >= sizeof(m4_path)) {
- path = endOfDir+1;
- continue;
- }
-
- strncpy(m4_path, path, sizeof(m4_path));
- m4_path[endOfDir-path] = '/';
- m4_path[endOfDir-path+1] = '\0';
- strncat(m4_path, m4, sizeof(m4_path));
- if (stat(m4_path, &sbuf) == 0 &&
- (S_ISREG(sbuf.st_mode)) && sbuf.st_mode & S_IXUSR) {
- m4 = strdup(m4_path);
- break;
+ {
+ char *m4_path = calloc(endOfDir-path + 1 + m4_length + 1, 1);
+
+ memcpy(m4_path, path, endOfDir-path);
+ m4_path[endOfDir-path] = '/';
+ memcpy(m4_path + (endOfDir-path) + 1, m4, m4_length + 1);
+ if (stat(m4_path, &sbuf) == 0 &&
+ (S_ISREG(sbuf.st_mode)) && sbuf.st_mode & S_IXUSR) {
+ m4 = m4_path;
+ break;
+ }
+ free(m4_path);
}
path = endOfDir+1;
} while (path[0]);
@@ -413,7 +405,7 @@ void check_options (void)
FILE *tablesout;
struct yytbl_hdr hdr;
char *pname = 0;
- int nbytes = 0;
+ size_t nbytes = 0;
buf_m4_define (&m4defs_buf, "M4_YY_TABLES_EXTERNAL", NULL);
@@ -454,6 +446,8 @@ void check_options (void)
if ( bison_bridge_lloc)
buf_m4_define (&m4defs_buf, "<M4_YY_BISON_LLOC>", NULL);
+ if (strchr(prefix, '[') || strchr(prefix, ']'))
+ flexerror(_("Prefix cannot include '[' or ']'"));
buf_m4_define(&m4defs_buf, "M4_YY_PREFIX", prefix);
if (did_outfilename)
@@ -474,7 +468,7 @@ void check_options (void)
char *str, *fmt = "#define %s %d\n";
size_t strsz;
- strsz = strlen(fmt) + strlen(scname[i]) + (int)(1 + log10(i)) + 2;
+ strsz = strlen(fmt) + strlen(scname[i]) + (size_t)(1 + ceil (log10(i))) + 2;
str = malloc(strsz);
if (!str)
flexfatal(_("allocation of macro definition failed"));
@@ -647,7 +641,7 @@ void flexend (int exit_status)
"yypop_buffer_state",
"yyensure_buffer_stack",
"yyalloc",
- "yyconst",
+ "const",
"yyextra",
"yyfree",
"yyget_debug",
@@ -972,7 +966,6 @@ void flexinit (int argc, char **argv)
tablesext = tablesverify = false;
gentables = true;
tablesfilename = tablesname = NULL;
- ansi_func_defs = ansi_func_protos = true;
sawcmpflag = false;
@@ -1124,7 +1117,7 @@ void flexinit (int argc, char **argv)
break;
case OPT_PREPROC_LEVEL:
- preproc_level = strtol(arg,NULL,0);
+ preproc_level = (int) strtol(arg,NULL,0);
break;
case OPT_MAIN:
@@ -1287,7 +1280,7 @@ void flexinit (int argc, char **argv)
}
else {
buf_strnappend (&userdef_buf, arg,
- def - arg);
+ (int) (def - arg));
buf_strappend (&userdef_buf, " ");
buf_strappend (&userdef_buf,
def + 1);
@@ -1349,14 +1342,6 @@ void flexinit (int argc, char **argv)
reject_really_used = false;
break;
- case OPT_NO_ANSI_FUNC_DEFS:
- ansi_func_defs = false;
- break;
-
- case OPT_NO_ANSI_FUNC_PROTOS:
- ansi_func_protos = false;
- break;
-
case OPT_NO_YY_PUSH_STATE:
//buf_strdefine (&userdef_buf, "YY_NO_PUSH_STATE", "1");
buf_m4_define( &m4defs_buf, "M4_YY_NO_PUSH_STATE",0);
@@ -1443,6 +1428,10 @@ void flexinit (int argc, char **argv)
break;
case OPT_HEX:
trace_hex = 1;
+ break;
+ case OPT_NO_SECT3_ESCAPE:
+ no_section3_escape = true;
+ break;
} /* switch */
} /* while scanopt() */
@@ -1598,9 +1587,9 @@ void readin (void)
if (!do_yywrap) {
if (!C_plus_plus) {
if (reentrant)
- outn ("\n#define yywrap(yyscanner) (/*CONSTCOND*/1)");
+ out_str ("\n#define %swrap(yyscanner) (/*CONSTCOND*/1)\n", prefix);
else
- outn ("\n#define yywrap() (/*CONSTCOND*/1)");
+ out_str ("\n#define %swrap() (/*CONSTCOND*/1)\n", prefix);
}
outn ("#define YY_SKIP_YYWRAP");
}
@@ -1609,10 +1598,7 @@ void readin (void)
outn ("\n#define FLEX_DEBUG");
OUT_BEGIN_CODE ();
- if (csize == 256)
- outn ("typedef unsigned char YY_CHAR;");
- else
- outn ("typedef char YY_CHAR;");
+ outn ("typedef flex_uint8_t YY_CHAR;");
OUT_END_CODE ();
if (C_plus_plus) {
@@ -1656,7 +1642,7 @@ void readin (void)
OUT_BEGIN_CODE ();
if (fullspd)
- outn ("typedef yyconst struct yy_trans_info *yy_state_type;");
+ outn ("typedef const struct yy_trans_info *yy_state_type;");
else if (!C_plus_plus)
outn ("typedef int yy_state_type;");
OUT_END_CODE ();
@@ -1850,8 +1836,6 @@ void usage (void)
" --bison-bridge scanner for bison pure parser.\n"
" --bison-locations include yylloc support.\n"
" --stdinit initialize yyin/yyout to stdin/stdout\n"
- " --noansi-definitions old-style function definitions\n"
- " --noansi-prototypes empty parameter list in prototypes\n"
" --nounistd do not include <unistd.h>\n"
" --noFUNCTION do not generate a particular FUNCTION\n"
"\n" "Miscellaneous:\n"
diff --git a/src/misc.c b/src/misc.c
index a2f67fc..ef27833 100644
--- a/src/misc.c
+++ b/src/misc.c
@@ -30,7 +30,6 @@
/* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED */
/* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR */
/* PURPOSE. */
-
#include "flexdef.h"
#include "tables.h"
@@ -111,30 +110,6 @@ void action_define (const char *defname, int value)
buf_append (&defs_buf, &cpy, 1);
}
-
-#ifdef notdef
-/** Append "m4_define([[defname]],[[value]])m4_dnl\n" to the running buffer.
- * @param defname The macro name.
- * @param value The macro value, can be NULL, which is the same as the empty string.
- */
-static void action_m4_define (const char *defname, const char * value)
-{
- char buf[MAXLINE];
-
- flexfatal ("DO NOT USE THIS FUNCTION!");
-
- if ((int) strlen (defname) > MAXLINE / 2) {
- format_pinpoint_message (_
- ("name \"%s\" ridiculously long"),
- defname);
- return;
- }
-
- snprintf (buf, sizeof(buf), "m4_define([[%s]],[[%s]])m4_dnl\n", defname, value?value:"");
- add_action (buf);
-}
-#endif
-
/* Append "new_text" to the running buffer. */
void add_action (const char *new_text)
{
@@ -167,9 +142,14 @@ void add_action (const char *new_text)
void *allocate_array (int size, size_t element_size)
{
void *mem;
- size_t num_bytes = element_size * size;
-
- mem = malloc(num_bytes);
+#if HAVE_REALLOCARRAY
+ /* reallocarray has built-in overflow detection */
+ mem = reallocarray(NULL, (size_t) size, element_size);
+#else
+ size_t num_bytes = (size_t) size * element_size;
+ mem = (size && SIZE_MAX / (size_t) size < element_size) ? NULL :
+ malloc(num_bytes);
+#endif
if (!mem)
flexfatal (_
("memory allocation failed in allocate_array()"));
@@ -326,18 +306,6 @@ void flexfatal (const char *msg)
}
-/* htoi - convert a hexadecimal digit string to an integer value */
-
-int htoi (unsigned char str[])
-{
- unsigned int result;
-
- (void) sscanf ((char *) str, "%x", &result);
-
- return result;
-}
-
-
/* lerr - report an error message */
void lerr (const char *msg, ...)
@@ -372,7 +340,7 @@ void line_directive_out (FILE *output_file, int do_infile)
{
char directive[MAXLINE], filename[MAXLINE];
char *s1, *s2, *s3;
- static const char *line_fmt = "#line %d \"%s\"\n";
+ static const char line_fmt[] = "#line %d \"%s\"\n";
if (!gen_line_dirs)
return;
@@ -386,8 +354,8 @@ void line_directive_out (FILE *output_file, int do_infile)
s3 = &filename[sizeof (filename) - 2];
while (s2 < s3 && *s1) {
- if (*s1 == '\\')
- /* Escape the '\' */
+ if (*s1 == '\\' || *s1 == '"')
+ /* Escape the '\' or '"' */
*s2++ = '\\';
*s2++ = *s1++;
@@ -536,18 +504,15 @@ unsigned char myesc (unsigned char array[])
{ /* \<octal> */
int sptr = 1;
- while (isascii (array[sptr]) &&
- isdigit (array[sptr]))
- /* Don't increment inside loop control
- * because if isdigit() is a macro it might
- * expand into multiple increments ...
- */
+ while (sptr <= 3 &&
+ array[sptr] >= '0' && array[sptr] <= '7') {
++sptr;
+ }
c = array[sptr];
array[sptr] = '\0';
- esc_char = otoi (array + 1);
+ esc_char = (unsigned char) strtoul (array + 1, NULL, 8);
array[sptr] = c;
@@ -558,18 +523,18 @@ unsigned char myesc (unsigned char array[])
{ /* \x<hex> */
int sptr = 2;
- while (isascii (array[sptr]) &&
- isxdigit (array[sptr]))
+ while (sptr <= 3 && isxdigit (array[sptr])) {
/* Don't increment inside loop control
- * because if isdigit() is a macro it might
+ * because if isxdigit() is a macro it might
* expand into multiple increments ...
*/
++sptr;
+ }
c = array[sptr];
array[sptr] = '\0';
- esc_char = htoi (array + 2);
+ esc_char = (unsigned char) strtoul (array + 2, NULL, 16);
array[sptr] = c;
@@ -582,17 +547,6 @@ unsigned char myesc (unsigned char array[])
}
-/* otoi - convert an octal digit string to an integer value */
-
-int otoi (unsigned char str[])
-{
- unsigned int result;
-
- (void) sscanf ((char *) str, "%o", &result);
- return result;
-}
-
-
/* out - various flavors of outputing a (possibly formatted) string for the
* generated scanner, keeping track of the line count.
*/
@@ -692,7 +646,7 @@ char *readable_form (int c)
return "' '";
else {
- rform[0] = c;
+ rform[0] = (char) c;
rform[1] = '\0';
return rform;
@@ -705,9 +659,14 @@ char *readable_form (int c)
void *reallocate_array (void *array, int size, size_t element_size)
{
void *new_array;
- size_t num_bytes = element_size * size;
-
- new_array = realloc(array, num_bytes);
+#if HAVE_REALLOCARRAY
+ /* reallocarray has built-in overflow detection */
+ new_array = reallocarray(array, (size_t) size, element_size);
+#else
+ size_t num_bytes = (size_t) size * element_size;
+ new_array = (size && SIZE_MAX / (size_t) size < element_size) ? NULL :
+ realloc(array, num_bytes);
+#endif
if (!new_array)
flexfatal (_("attempt to increase array size failed"));
@@ -832,9 +791,6 @@ void skelout (void)
/* %e end linkage-only code. */
OUT_END_CODE ();
}
- else if (buf[1] == '#') {
- /* %# a comment in the skel. ignore. */
- }
else {
flexfatal (_("bad line in skeleton file"));
}
diff --git a/src/mkskel.sh b/src/mkskel.sh
index 02c397a..1aa59e1 100755
--- a/src/mkskel.sh
+++ b/src/mkskel.sh
@@ -21,17 +21,34 @@
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
# PURPOSE.
-cat <<!
-/* File created from flex.skl via mkskel.sh */
+if test ! $# = 3; then
+ echo 'Usage: mkskel.sh srcdir m4 version' >&2
+ exit 1
+fi
+echo '/* File created from flex.skl via mkskel.sh */
#include "flexdef.h"
-const char *skel[] = {
-!
-
-sed 's/\\/&&/g' | sed 's/"/\\"/g' | sed 's/.*/ "&",/'
-
-cat <<!
- 0
-};
-!
+const char *skel[] = {'
+srcdir=$1
+m4=$2
+VERSION=$3
+case $VERSION in
+ *[!0-9.]*) echo 'Invalid version number' >&2; exit 1;;
+esac
+IFS=.
+set $VERSION
+sed 's/4_/a4_/g
+s/m4preproc_/m4_/g
+' "$srcdir/flex.skl" |
+"$m4" -P -I "$srcdir" "-DFLEX_MAJOR_VERSION=$1" \
+ "-DFLEX_MINOR_VERSION=$2" \
+ "-DFLEX_SUBMINOR_VERSION=$3" |
+sed '/^%#/d
+s/m4_/m4preproc_/g
+s/a4_/4_/g
+s/[\\"]/\\&/g
+s/.*/ "&",/'
+
+echo ' 0
+};'
diff --git a/src/nfa.c b/src/nfa.c
index 816c356..9143cf6 100644
--- a/src/nfa.c
+++ b/src/nfa.c
@@ -287,6 +287,7 @@ void finish_rule (int mach, int variable_trail_rule, int headcnt, int trailcn
add_action ("YY_RULE_SETUP\n");
line_directive_out(NULL, 1);
+ add_action("[[");
}
diff --git a/src/options.c b/src/options.c
index 39d020e..366bc2e 100644
--- a/src/options.c
+++ b/src/options.c
@@ -213,10 +213,6 @@ optspec_t flexopts[] = {
,
{"--nowarn", OPT_NO_WARN, 0}
, /* Suppress warning messages. */
- {"--noansi-definitions", OPT_NO_ANSI_FUNC_DEFS, 0}
- ,
- {"--noansi-prototypes", OPT_NO_ANSI_FUNC_PROTOS, 0}
- ,
{"--yyclass=NAME", OPT_YYCLASS, 0}
,
{"--yylineno", OPT_YYLINENO, 0}
@@ -275,7 +271,8 @@ optspec_t flexopts[] = {
,
{"--noyyset_lloc", OPT_NO_YYSET_LLOC, 0}
,
-
+ {"--unsafe-no-m4-sect3-escape", OPT_NO_SECT3_ESCAPE, 0}
+ ,
{0, 0, 0} /* required final NULL entry. */
};
diff --git a/src/options.h b/src/options.h
index ac3391c..5b51c23 100644
--- a/src/options.h
+++ b/src/options.h
@@ -68,8 +68,6 @@ enum flexopt_flag_t {
OPT_META_ECS,
OPT_NEVER_INTERACTIVE,
OPT_NO_ALIGN,
- OPT_NO_ANSI_FUNC_DEFS,
- OPT_NO_ANSI_FUNC_PROTOS,
OPT_NO_DEBUG,
OPT_NO_DEFAULT,
OPT_NO_ECS,
@@ -127,7 +125,8 @@ enum flexopt_flag_t {
OPT_YYCLASS,
OPT_YYLINENO,
OPT_YYMORE,
- OPT_YYWRAP
+ OPT_YYWRAP,
+ OPT_NO_SECT3_ESCAPE,
};
#endif
diff --git a/src/parse.y b/src/parse.y
index 908361b..5a07320 100644
--- a/src/parse.y
+++ b/src/parse.y
@@ -80,7 +80,7 @@ int previous_continued_action; /* whether the previous rule's action was '|' */
do{ \
char fw3_msg[MAXLINE];\
snprintf( fw3_msg, MAXLINE,(fmt), (a1), (a2) );\
- warn( fw3_msg );\
+ lwarn( fw3_msg );\
}while(0)
/* Expand a POSIX character class expression. */
@@ -140,7 +140,7 @@ goal : initlex sect1 sect1end sect2 initforrule
else
add_action( "ECHO" );
- add_action( ";\n\tYY_BREAK\n" );
+ add_action( ";\n\tYY_BREAK]]\n" );
}
;
@@ -199,7 +199,9 @@ option : TOK_OUTFILE '=' NAME
| TOK_EXTRA_TYPE '=' NAME
{ extra_type = xstrdup(nmstr); }
| TOK_PREFIX '=' NAME
- { prefix = xstrdup(nmstr); }
+ { prefix = xstrdup(nmstr);
+ if (strchr(prefix, '[') || strchr(prefix, ']'))
+ flexerror(_("Prefix must not contain [ or ]")); }
| TOK_YYCLASS '=' NAME
{ yyclass = xstrdup(nmstr); }
| TOK_HEADER_FILE '=' NAME
@@ -303,7 +305,7 @@ flexrule : '^' rule
scon_stk[++scon_stk_ptr] = i;
if ( scon_stk_ptr == 0 )
- warn(
+ lwarn(
"all start conditions already have <<EOF>> rules" );
else
@@ -398,7 +400,7 @@ rule : re2 re
* erroneously.
*/
if ( ! varlength || headcnt != 0 )
- warn(
+ lwarn(
"trailing context made variable due to preceding '|' action" );
/* Mark as variable. */
@@ -453,7 +455,7 @@ rule : re2 re
/* See the comment in the rule for "re2 re"
* above.
*/
- warn(
+ lwarn(
"trailing context made variable due to preceding '|' action" );
varlength = true;
@@ -913,13 +915,13 @@ ccl_expr:
| CCE_NEG_XDIGIT { CCL_NEG_EXPR(isxdigit); }
| CCE_NEG_LOWER {
if ( sf_case_ins() )
- warn(_("[:^lower:] is ambiguous in case insensitive scanner"));
+ lwarn(_("[:^lower:] is ambiguous in case insensitive scanner"));
else
CCL_NEG_EXPR(islower);
}
| CCE_NEG_UPPER {
if ( sf_case_ins() )
- warn(_("[:^upper:] ambiguous in case insensitive scanner"));
+ lwarn(_("[:^upper:] ambiguous in case insensitive scanner"));
else
CCL_NEG_EXPR(isupper);
}
@@ -977,6 +979,7 @@ void build_eof_action(void)
}
line_directive_out(NULL, 1);
+ add_action("[[");
/* This isn't a normal rule after all - don't count it as
* such, so we don't have any holes in the rule numbering
@@ -1015,13 +1018,13 @@ void format_warn( const char *msg, const char arg[] )
char warn_msg[MAXLINE];
snprintf( warn_msg, sizeof(warn_msg), msg, arg );
- warn( warn_msg );
+ lwarn( warn_msg );
}
-/* warn - report a warning, unless -w was given */
+/* lwarn - report a warning, unless -w was given */
-void warn( const char *str )
+void lwarn( const char *str )
{
line_warning( str, linenum );
}
diff --git a/src/regex.c b/src/regex.c
index 84f0e9e..38e658b 100644
--- a/src/regex.c
+++ b/src/regex.c
@@ -54,21 +54,17 @@ void flex_regcomp(regex_t *preg, const char *regex, int cflags)
memset (preg, 0, sizeof (regex_t));
if ((err = regcomp (preg, regex, cflags)) != 0) {
- const int errbuf_sz = 200;
- char *errbuf, *rxerr;
+ const size_t errbuf_sz = 200;
+ char *errbuf;
+ int n;
errbuf = malloc(errbuf_sz * sizeof(char));
if (!errbuf)
flexfatal(_("Unable to allocate buffer to report regcomp"));
- rxerr = malloc(errbuf_sz * sizeof(char));
- if (!rxerr)
- flexfatal(_("Unable to allocate buffer for regerror"));
- regerror (err, preg, rxerr, errbuf_sz);
- snprintf (errbuf, errbuf_sz, "regcomp for \"%s\" failed: %s", regex, rxerr);
-
- flexfatal (errbuf);
- free(errbuf);
- free(rxerr);
+ n = snprintf(errbuf, errbuf_sz, "regcomp for \"%s\" failed: ", regex);
+ regerror(err, preg, errbuf+n, errbuf_sz-(size_t)n);
+
+ flexfatal (errbuf); /* never returns - no need to free(errbuf) */
}
}
@@ -80,11 +76,11 @@ void flex_regcomp(regex_t *preg, const char *regex, int cflags)
char *regmatch_dup (regmatch_t * m, const char *src)
{
char *str;
- int len;
+ size_t len;
- if (m == NULL || m->rm_so < 0)
+ if (m == NULL || m->rm_so < 0 || m->rm_eo < m->rm_so)
return NULL;
- len = m->rm_eo - m->rm_so;
+ len = (size_t) (m->rm_eo - m->rm_so);
str = malloc((len + 1) * sizeof(char));
if (!str)
flexfatal(_("Unable to allocate a copy of the match"));
@@ -107,7 +103,7 @@ char *regmatch_cpy (regmatch_t * m, char *dest, const char *src)
return dest;
}
- snprintf (dest, regmatch_len(m), "%s", src + m->rm_so);
+ snprintf (dest, (size_t) regmatch_len(m), "%s", src + m->rm_so);
return dest;
}
@@ -150,7 +146,7 @@ int regmatch_strtol (regmatch_t * m, const char *src, char **endptr,
else
s = regmatch_dup (m, src);
- n = strtol (s, endptr, base);
+ n = (int) strtol (s, endptr, base);
if (s != buf)
free (s);
diff --git a/src/scan.l b/src/scan.l
index cfc832d..66db864 100644
--- a/src/scan.l
+++ b/src/scan.l
@@ -38,6 +38,12 @@ extern bool tablesverify, tablesext;
extern int trlcontxt; /* Set in parse.y for each rule. */
extern const char *escaped_qstart, *escaped_qend;
+#define M4QSTART "[""["
+#define M4QEND "]""]"
+
+#define ESCAPED_QSTART "[" M4QEND M4QSTART "[" M4QEND M4QSTART
+#define ESCAPED_QEND M4QEND "]" M4QSTART M4QEND "]" M4QSTART
+
#define ACTION_ECHO add_action( yytext )
#define ACTION_IFDEF(def, should_define) \
{ \
@@ -45,8 +51,8 @@ extern const char *escaped_qstart, *escaped_qend;
action_define( def, 1 ); \
}
-#define ACTION_ECHO_QSTART add_action (escaped_qstart)
-#define ACTION_ECHO_QEND add_action (escaped_qend)
+#define ACTION_ECHO_QSTART add_action (ESCAPED_QSTART)
+#define ACTION_ECHO_QEND add_action (ESCAPED_QEND)
#define ACTION_M4_IFDEF(def, should_define) \
do{ \
@@ -68,18 +74,20 @@ extern const char *escaped_qstart, *escaped_qend;
#define RETURNNAME \
if(yyleng < MAXLINE) \
{ \
- strcpy( nmstr, yytext ); \
+ strncpy( nmstr, yytext, sizeof(nmstr) ); \
+ return NAME; \
} \
else \
- { \
+ do { \
synerr(_("Input line too long\n")); \
FLEX_EXIT(EXIT_FAILURE); \
- } \
- return NAME;
+ } while (0)
#define PUT_BACK_STRING(str, start) \
- for ( i = strlen( str ) - 1; i >= start; --i ) \
- unput((str)[i])
+ { size_t i = strlen( str ); \
+ while ( i > start ) \
+ unput((str)[--i]); \
+ }
#define CHECK_REJECT(str) \
if ( all_upper( str ) ) \
@@ -93,6 +101,23 @@ extern const char *escaped_qstart, *escaped_qend;
if ( getenv("POSIXLY_CORRECT") ) \
posix_compat = true;
+#define START_CODEBLOCK(x) do { \
+ /* Emit the needed line directive... */\
+ if (indented_code == false) { \
+ linenum++; \
+ line_directive_out(NULL, 1); \
+ } \
+ add_action(M4QSTART); \
+ yy_push_state(CODEBLOCK); \
+ if ((indented_code = x)) ACTION_ECHO; \
+} while(0)
+
+#define END_CODEBLOCK do { \
+ yy_pop_state();\
+ add_action(M4QEND); \
+ if (!indented_code) line_directive_out(NULL, 0);\
+} while (0)
+
%}
%option caseless nodefault noreject stack noyy_top_state
@@ -104,7 +129,9 @@ extern const char *escaped_qstart, *escaped_qend;
%x GROUP_WITH_PARAMS
%x GROUP_MINUS_PARAMS
%x EXTENDED_COMMENT
-%x COMMENT_DISCARD
+%x COMMENT_DISCARD CODE_COMMENT
+%x SECT3_NOESCAPE
+%x CHARACTER_CONSTANT
WS [[:blank:]]+
OPTWS [[:blank:]]*
@@ -125,8 +152,8 @@ CCL_EXPR ("[:"^?[[:alpha:]]+":]")
LEXOPT [aceknopr]
-M4QSTART "[["
-M4QEND "]]"
+M4QSTART "[""["
+M4QEND "]""]"
%%
static int bracelevel, didadef, indented_code;
@@ -134,22 +161,17 @@ M4QEND "]]"
static int option_sense;
int doing_codeblock = false;
- int i, brace_depth=0, brace_start_line=0;
+ int brace_depth=0, brace_start_line=0;
char nmdef[MAXLINE];
<INITIAL>{
- ^{WS} indented_code = true; BEGIN(CODEBLOCK);
- ^"/*" ACTION_ECHO; yy_push_state( COMMENT );
+ ^{WS} START_CODEBLOCK(true);
+ ^"/*" add_action("/*[""["); yy_push_state( COMMENT );
^#{OPTWS}line{WS} yy_push_state( LINEDIR );
^"%s"{NAME}? return SCDECL;
^"%x"{NAME}? return XSCDECL;
- ^"%{".*{NL} {
- ++linenum;
- line_directive_out(NULL, 1);
- indented_code = false;
- BEGIN(CODEBLOCK);
- }
+ ^"%{".*{NL} START_CODEBLOCK(false);
^"%top"[[:blank:]]*"{"[[:blank:]]*{NL} {
brace_start_line = linenum;
++linenum;
@@ -185,7 +207,7 @@ M4QEND "]]"
^{NAME} {
if(yyleng < MAXLINE)
{
- strcpy( nmstr, yytext );
+ strncpy( nmstr, yytext, sizeof(nmstr) );
}
else
{
@@ -203,14 +225,18 @@ M4QEND "]]"
}
-<COMMENT>{
- "*/" ACTION_ECHO; yy_pop_state();
- "*" ACTION_ECHO;
- {M4QSTART} ACTION_ECHO_QSTART;
- {M4QEND} ACTION_ECHO_QEND;
- [^*\n] ACTION_ECHO;
+<COMMENT,CODE_COMMENT>{ /* */
+ [^\[\]\*\n]* ACTION_ECHO;
+ . ACTION_ECHO;
+
{NL} ++linenum; ACTION_ECHO;
}
+<COMMENT>{
+ "*/" add_action("*/]""]"); yy_pop_state();
+}
+<CODE_COMMENT>{
+ "*/" ACTION_ECHO; yy_pop_state();
+}
<COMMENT_DISCARD>{
/* This is the same as COMMENT, but is discarded rather than output. */
@@ -223,7 +249,7 @@ M4QEND "]]"
<EXTENDED_COMMENT>{
")" yy_pop_state();
[^\n\)]+ ;
- {NL} ++linenum;
+ {NL} ++linenum;
}
<LINEDIR>{
@@ -237,19 +263,19 @@ M4QEND "]]"
}
. /* ignore spurious characters */
}
+<ACTION,CODEBLOCK,ACTION_STRING,PERCENT_BRACE_ACTION,CHARACTER_CONSTANT,COMMENT,CODE_COMMENT>{
+ {M4QSTART} ACTION_ECHO_QSTART;
+ {M4QEND} ACTION_ECHO_QEND;
+}
<CODEBLOCK>{
- ^"%}".*{NL} ++linenum; BEGIN(INITIAL);
-
- {M4QSTART} ACTION_ECHO_QSTART;
- {M4QEND} ACTION_ECHO_QEND;
- . ACTION_ECHO;
-
+ ^"%}".*{NL} ++linenum; END_CODEBLOCK;
+ [^\n%\[\]]* ACTION_ECHO;
+ . ACTION_ECHO;
{NL} {
++linenum;
ACTION_ECHO;
- if ( indented_code )
- BEGIN(INITIAL);
+ if ( indented_code ) END_CODEBLOCK;
}
}
@@ -274,10 +300,9 @@ M4QEND "]]"
{M4QSTART} buf_strnappend(&top_buf, escaped_qstart, (int) strlen(escaped_qstart));
{M4QEND} buf_strnappend(&top_buf, escaped_qend, (int) strlen(escaped_qend));
-
- [^{}\r\n] {
- buf_strnappend(&top_buf, yytext, yyleng);
- }
+ ([^{}\r\n\[\]]+)|[^{}\r\n] {
+ buf_strnappend(&top_buf, yytext, yyleng);
+ }
<<EOF>> {
linenum = brace_start_line;
@@ -293,7 +318,7 @@ M4QEND "]]"
{NOT_WS}[^\r\n]* {
if(yyleng < MAXLINE)
{
- strcpy( nmdef, yytext );
+ strncpy( nmdef, yytext, sizeof(nmdef) );
}
else
{
@@ -301,12 +326,12 @@ M4QEND "]]"
FLEX_EXIT(EXIT_FAILURE);
}
/* Skip trailing whitespace. */
- for ( i = strlen( nmdef ) - 1;
- i >= 0 && (nmdef[i] == ' ' || nmdef[i] == '\t');
- --i )
- ;
-
- nmdef[i + 1] = '\0';
+ {
+ size_t i = strlen( nmdef );
+ while (i > 0 && (nmdef[i-1] == ' ' || nmdef[i-1] == '\t'))
+ --i;
+ nmdef[i] = '\0';
+ }
ndinstal( nmstr, nmdef );
didadef = true;
@@ -338,8 +363,6 @@ M4QEND "]]"
interactive = option_sense;
}
array yytext_is_array = option_sense;
- ansi-definitions ansi_func_defs = option_sense;
- ansi-prototypes ansi_func_protos = option_sense;
backup backing_up_report = option_sense;
batch interactive = ! option_sense;
bison-bridge bison_bridge_lval = option_sense;
@@ -437,7 +460,7 @@ M4QEND "]]"
\"[^"\n]*\" {
if(yyleng-1 < MAXLINE)
{
- strcpy( nmstr, yytext + 1 );
+ strncpy( nmstr, yytext + 1, sizeof(nmstr) );
}
else
{
@@ -462,19 +485,20 @@ M4QEND "]]"
^"%{".* ++bracelevel; yyless( 2 ); /* eat only %{ */
^"%}".* --bracelevel; yyless( 2 ); /* eat only %} */
- ^{WS}.* ACTION_ECHO; /* indented code in prolog */
-
- ^{NOT_WS}.* { /* non-indented code */
- if ( bracelevel <= 0 )
- { /* not in %{ ... %} */
- yyless( 0 ); /* put it all back */
- yy_set_bol( 1 );
- mark_prolog();
- BEGIN(SECT2);
- }
- else
- ACTION_ECHO;
- }
+ ^{WS} START_CODEBLOCK(true); /* indented code in prolog */
+
+ ^{NOT_WS}.* {
+ /* non-indented code */
+ if ( bracelevel <= 0 ) {
+ /* not in %{ ... %} */
+ yyless( 0 ); /* put it all back */
+ yy_set_bol( 1 );
+ mark_prolog();
+ BEGIN(SECT2);
+ } else {
+ START_CODEBLOCK(true);
+ }
+ }
. ACTION_ECHO;
{NL} ++linenum; ACTION_ECHO;
@@ -532,6 +556,7 @@ M4QEND "]]"
yyless(amt);
}
else {
+ add_action("]""]");
continued_action = true;
++linenum;
return '\n';
@@ -601,9 +626,10 @@ M4QEND "]]"
^"%%".* {
sectnum = 3;
- BEGIN(SECT3);
+ BEGIN(no_section3_escape ? SECT3_NOESCAPE : SECT3);
outn("/* Begin user sect3 */");
yyterminate(); /* to stop the parser */
+
}
"["({FIRST_CCL_CHAR}|{CCL_EXPR})({CCL_CHAR}|{CCL_EXPR})* {
@@ -611,7 +637,7 @@ M4QEND "]]"
if(yyleng < MAXLINE)
{
- strcpy( nmstr, yytext );
+ strncpy( nmstr, yytext, sizeof(nmstr) );
}
else
{
@@ -669,7 +695,7 @@ M4QEND "]]"
if(yyleng-1 < MAXLINE)
{
- strcpy( nmstr, yytext + 1 );
+ strncpy( nmstr, yytext + 1, sizeof(nmstr) );
}
else
{
@@ -685,7 +711,7 @@ nmstr[yyleng - 2 - end_is_ws] = '\0'; /* chop trailing brace */
else
{ /* push back name surrounded by ()'s */
- int len = strlen( nmdefptr );
+ size_t len = strlen( nmdefptr );
if (end_is_ws)
unput(end_ch);
@@ -876,35 +902,31 @@ nmstr[yyleng - 2 - end_is_ws] = '\0'; /* chop trailing brace */
<PERCENT_BRACE_ACTION>{
{OPTWS}"%}".* bracelevel = 0;
- <ACTION>"/*" ACTION_ECHO; yy_push_state( COMMENT );
+ <ACTION>"/*" ACTION_ECHO; yy_push_state( CODE_COMMENT );
<CODEBLOCK,ACTION>{
- "reject" {
- ACTION_ECHO;
- CHECK_REJECT(yytext);
- }
- "yymore" {
- ACTION_ECHO;
- CHECK_YYMORE(yytext);
- }
+ "reject" {
+ ACTION_ECHO;
+ CHECK_REJECT(yytext);
+ }
+ "yymore" {
+ ACTION_ECHO;
+ CHECK_YYMORE(yytext);
+ }
}
- {M4QSTART} ACTION_ECHO_QSTART;
- {M4QEND} ACTION_ECHO_QEND;
- . ACTION_ECHO;
- {NL} {
- ++linenum;
- ACTION_ECHO;
- if ( bracelevel == 0 ||
- (doing_codeblock && indented_code) )
- {
- if ( doing_rule_action )
- add_action( "\tYY_BREAK\n" );
-
- doing_rule_action = doing_codeblock = false;
- BEGIN(SECT2);
- }
- }
+ . ACTION_ECHO;
+ {NL} {
+ ++linenum;
+ ACTION_ECHO;
+ if (bracelevel <= 0 || (doing_codeblock && indented_code)) {
+ if ( doing_rule_action )
+ add_action( "\tYY_BREAK]""]\n" );
+
+ doing_rule_action = doing_codeblock = false;
+ BEGIN(SECT2);
+ }
+ }
}
@@ -912,37 +934,41 @@ nmstr[yyleng - 2 - end_is_ws] = '\0'; /* chop trailing brace */
<ACTION>{
"{" ACTION_ECHO; ++bracelevel;
"}" ACTION_ECHO; --bracelevel;
- {M4QSTART} ACTION_ECHO_QSTART;
- {M4QEND} ACTION_ECHO_QEND;
- [^[:alpha:]_{}"'/\n\[\]]+ ACTION_ECHO;
- [\[\]] ACTION_ECHO;
- {NAME} ACTION_ECHO;
- "'"([^'\\\n]|\\.)*"'" ACTION_ECHO; /* character constant */
+ [^[:alpha:]_{}\"'/\n\[\]]+ ACTION_ECHO;
+ {NAME} ACTION_ECHO;
+ "'"([^\'\\\n]|\\.)"'" ACTION_ECHO; /* character constant */
+ "'" ACTION_ECHO; BEGIN(CHARACTER_CONSTANT);
\" ACTION_ECHO; BEGIN(ACTION_STRING);
- {NL} {
- ++linenum;
- ACTION_ECHO;
- if ( bracelevel == 0 )
- {
- if ( doing_rule_action )
- add_action( "\tYY_BREAK\n" );
+ {NL} {
+ ++linenum;
+ ACTION_ECHO;
+ if (bracelevel <= 0) {
+ if ( doing_rule_action )
+ add_action( "\tYY_BREAK]""]\n" );
- doing_rule_action = false;
- BEGIN(SECT2);
- }
- }
- . ACTION_ECHO;
+ doing_rule_action = false;
+ BEGIN(SECT2);
+ }
+ }
+ . ACTION_ECHO;
}
<ACTION_STRING>{
- [^"\\\n]+ ACTION_ECHO;
- \\. ACTION_ECHO;
- {NL} ++linenum; ACTION_ECHO; BEGIN(ACTION);
+ [^\[\]\"\\\n]+ ACTION_ECHO;
\" ACTION_ECHO; BEGIN(ACTION);
- . ACTION_ECHO;
+}
+<CHARACTER_CONSTANT>{
+ [^\[\]\'\\\n]+ ACTION_ECHO;
+ \' ACTION_ECHO; BEGIN(ACTION);
+}
+<ACTION_STRING,CHARACTER_CONSTANT>{
+ (\\\n)* ACTION_ECHO;
+ \\(\\\n)*. ACTION_ECHO;
+ {NL} ++linenum; ACTION_ECHO; if (bracelevel <= 0) { BEGIN(SECT2); } else { BEGIN(ACTION); }
+ . ACTION_ECHO;
}
-<COMMENT,COMMENT_DISCARD,ACTION,ACTION_STRING><<EOF>> {
+<COMMENT,CODE_COMMENT,COMMENT_DISCARD,ACTION,ACTION_STRING,CHARACTER_CONSTANT><<EOF>> {
synerr( _( "EOF encountered inside an action" ) );
yyterminate();
}
@@ -961,15 +987,26 @@ nmstr[yyleng - 2 - end_is_ws] = '\0'; /* chop trailing brace */
return CHAR;
}
-
<SECT3>{
- {M4QSTART} fwrite (escaped_qstart, 1, strlen(escaped_qstart), yyout);
- {M4QEND} fwrite (escaped_qend, 1, strlen(escaped_qend), yyout);
- [^\[\]\n]*(\n?) ECHO;
- (.|\n) ECHO;
- <<EOF>> sectnum = 0; yyterminate();
+ {M4QSTART} fputs(escaped_qstart, yyout);
+ {M4QEND} fputs(escaped_qend, yyout);
+ [^\[\]]* ECHO;
+ [][] ECHO;
+ <<EOF>> {
+ sectnum = 0;
+ yyterminate();
+ }
+}
+<SECT3_NOESCAPE>{
+ {M4QSTART} fprintf(yyout, "[""[%s]""]", escaped_qstart);
+ {M4QEND} fprintf(yyout, "[""[%s]""]", escaped_qend);
+ [^][]* ECHO;
+ [][] ECHO;
+ <<EOF>> {
+ sectnum = 0;
+ yyterminate();
+ }
}
-
<*>.|\n format_synerr( _( "bad character: %s" ), yytext );
%%
diff --git a/src/scanflags.c b/src/scanflags.c
index aa3de8a..9699a31 100644
--- a/src/scanflags.c
+++ b/src/scanflags.c
@@ -39,9 +39,10 @@ size_t _sf_top_ix=0, _sf_max=0;
void
sf_push (void)
{
- if (_sf_top_ix + 1 >= _sf_max)
+ if (_sf_top_ix + 1 >= _sf_max) {
_sf_max += 32;
_sf_stk = realloc(_sf_stk, sizeof(scanflags_t) * _sf_max);
+ }
// copy the top element
_sf_stk[_sf_top_ix + 1] = _sf_stk[_sf_top_ix];
diff --git a/src/scanopt.c b/src/scanopt.c
index a118541..a475b6f 100644
--- a/src/scanopt.c
+++ b/src/scanopt.c
@@ -186,21 +186,21 @@ scanopt_t *scanopt_init (const optspec_t *options, int argc, char **argv, int fl
if (*p == '=' || isspace ((unsigned char)*p)
|| !(aux->flags & IS_LONG)) {
if (aux->namelen == 0)
- aux->namelen = p - pname;
+ aux->namelen = (int) (p - pname);
aux->flags |= ARG_REQ;
aux->flags &= ~ARG_NONE;
}
/* detect optional arg. This overrides required arg. */
if (*p == '[') {
if (aux->namelen == 0)
- aux->namelen = p - pname;
+ aux->namelen = (int) (p - pname);
aux->flags &= ~(ARG_REQ | ARG_NONE);
aux->flags |= ARG_OPT;
break;
}
}
if (aux->namelen == 0)
- aux->namelen = p - pname;
+ aux->namelen = (int) (p - pname);
}
return (scanopt_t *) s;
}
@@ -571,7 +571,7 @@ static int matchlongopt (char *str, char **optname, int *optlen, char **arg, int
while (*p && *p != '=')
++p;
- *optlen = p - *optname;
+ *optlen = (int) (p - *optname);
if (!*p)
/* an option with no '=...' part. */
@@ -583,7 +583,7 @@ static int matchlongopt (char *str, char **optname, int *optlen, char **arg, int
*arg = p;
while (*p)
++p;
- *arglen = p - *arg;
+ *arglen = (int) (p - *arg);
return 1;
}
@@ -614,7 +614,7 @@ static int find_opt (struct _scanopt_t *s, int lookup_long, char *optstart, int
if (len > s->aux[i].namelen)
continue;
- if (strncmp (optname, optstart, len) == 0) {
+ if (strncmp (optname, optstart, (size_t) len) == 0) {
nmatch++;
*opt_offset = i;
diff --git a/src/tables.c b/src/tables.c
index 3d043c6..980d2e9 100644
--- a/src/tables.c
+++ b/src/tables.c
@@ -55,7 +55,7 @@
int yytbl_write32 (struct yytbl_writer *wr, flex_uint32_t v);
int yytbl_write16 (struct yytbl_writer *wr, flex_uint16_t v);
int yytbl_write8 (struct yytbl_writer *wr, flex_uint8_t v);
-int yytbl_writen (struct yytbl_writer *wr, void *v, flex_int32_t len);
+int yytbl_writen (struct yytbl_writer *wr, void *v, int len);
static flex_int32_t yytbl_data_geti (const struct yytbl_data *tbl, int i);
/* XXX Not used
static flex_int32_t yytbl_data_getijk (const struct yytbl_data *tbl, int i,
@@ -86,7 +86,7 @@ int yytbl_hdr_init (struct yytbl_hdr *th, const char *version_str,
memset (th, 0, sizeof (struct yytbl_hdr));
th->th_magic = YYTBL_MAGIC;
- th->th_hsize = 14 + strlen (version_str) + 1 + strlen (name) + 1;
+ th->th_hsize = (flex_uint32_t) (14 + strlen (version_str) + 1 + strlen (name) + 1);
th->th_hsize += yypad64 (th->th_hsize);
th->th_ssize = 0; // Not known at this point.
th->th_flags = 0;
@@ -213,13 +213,13 @@ int yytbl_data_fwrite (struct yytbl_writer *wr, struct yytbl_data *td)
for (i = 0; i < total_len; i++) {
switch (YYTDFLAGS2BYTES (td->td_flags)) {
case sizeof (flex_int8_t):
- rv = yytbl_write8 (wr, yytbl_data_geti (td, i));
+ rv = yytbl_write8 (wr, (flex_uint8_t) yytbl_data_geti (td, i));
break;
case sizeof (flex_int16_t):
- rv = yytbl_write16 (wr, yytbl_data_geti (td, i));
+ rv = yytbl_write16 (wr, (flex_uint16_t) yytbl_data_geti (td, i));
break;
case sizeof (flex_int32_t):
- rv = yytbl_write32 (wr, yytbl_data_geti (td, i));
+ rv = yytbl_write32 (wr, (flex_uint32_t) yytbl_data_geti (td, i));
break;
default:
flex_die (_("invalid td_flags detected"));
@@ -232,7 +232,7 @@ int yytbl_data_fwrite (struct yytbl_writer *wr, struct yytbl_data *td)
}
/* Sanity check */
- if (bwritten != (int) (12 + total_len * YYTDFLAGS2BYTES (td->td_flags))) {
+ if (bwritten != (12 + total_len * (int) YYTDFLAGS2BYTES (td->td_flags))) {
flex_die (_("insanity detected"));
return -1;
}
@@ -247,14 +247,14 @@ int yytbl_data_fwrite (struct yytbl_writer *wr, struct yytbl_data *td)
/* Now go back and update the th_hsize member */
if (fgetpos (wr->out, &pos) != 0
|| fsetpos (wr->out, &(wr->th_ssize_pos)) != 0
- || yytbl_write32 (wr, wr->total_written) < 0
+ || yytbl_write32 (wr, (flex_uint32_t) wr->total_written) < 0
|| fsetpos (wr->out, &pos)) {
flex_die (_("get|set|fwrite32 failed"));
return -1;
}
else
/* Don't count the int we just wrote. */
- wr->total_written -= sizeof (flex_int32_t);
+ wr->total_written -= (int) sizeof (flex_int32_t);
return bwritten;
}
@@ -264,11 +264,11 @@ int yytbl_data_fwrite (struct yytbl_writer *wr, struct yytbl_data *td)
* @param len number of bytes
* @return -1 on error. number of bytes written on success.
*/
-int yytbl_writen (struct yytbl_writer *wr, void *v, flex_int32_t len)
+int yytbl_writen (struct yytbl_writer *wr, void *v, int len)
{
int rv;
- rv = fwrite (v, 1, len, wr->out);
+ rv = (int) fwrite (v, 1, (size_t) len, wr->out);
if (rv != len)
return -1;
wr->total_written += len;
@@ -283,11 +283,11 @@ int yytbl_writen (struct yytbl_writer *wr, void *v, flex_int32_t len)
int yytbl_write32 (struct yytbl_writer *wr, flex_uint32_t v)
{
flex_uint32_t vnet;
- size_t bytes, rv;
+ int bytes, rv;
vnet = htonl (v);
- bytes = sizeof (flex_uint32_t);
- rv = fwrite (&vnet, bytes, 1, wr->out);
+ bytes = (int) sizeof (flex_uint32_t);
+ rv = (int) fwrite (&vnet, (size_t) bytes, 1, wr->out);
if (rv != 1)
return -1;
wr->total_written += bytes;
@@ -302,11 +302,11 @@ int yytbl_write32 (struct yytbl_writer *wr, flex_uint32_t v)
int yytbl_write16 (struct yytbl_writer *wr, flex_uint16_t v)
{
flex_uint16_t vnet;
- size_t bytes, rv;
+ int bytes, rv;
vnet = htons (v);
- bytes = sizeof (flex_uint16_t);
- rv = fwrite (&vnet, bytes, 1, wr->out);
+ bytes = (int) sizeof (flex_uint16_t);
+ rv = (int) fwrite (&vnet, (size_t) bytes, 1, wr->out);
if (rv != 1)
return -1;
wr->total_written += bytes;
@@ -320,10 +320,10 @@ int yytbl_write16 (struct yytbl_writer *wr, flex_uint16_t v)
*/
int yytbl_write8 (struct yytbl_writer *wr, flex_uint8_t v)
{
- size_t bytes, rv;
+ int bytes, rv;
- bytes = sizeof (flex_uint8_t);
- rv = fwrite (&v, bytes, 1, wr->out);
+ bytes = (int) sizeof (flex_uint8_t);
+ rv = (int) fwrite (&v, (size_t) bytes, 1, wr->out);
if (rv != 1)
return -1;
wr->total_written += bytes;
@@ -427,7 +427,7 @@ static void yytbl_data_seti (const struct yytbl_data *tbl, int i,
*/
static size_t min_int_size (struct yytbl_data *tbl)
{
- flex_uint32_t i, total_len;
+ flex_int32_t i, total_len;
flex_int32_t max = 0;
total_len = yytbl_calc_total_len (tbl);
@@ -437,7 +437,7 @@ static size_t min_int_size (struct yytbl_data *tbl)
n = abs (yytbl_data_geti (tbl, i));
- if (n > max)
+ if (max < n)
max = n;
}
@@ -460,7 +460,8 @@ static size_t min_int_size (struct yytbl_data *tbl)
*/
void yytbl_data_compress (struct yytbl_data *tbl)
{
- flex_int32_t i, newsz, total_len;
+ flex_int32_t i, total_len;
+ size_t newsz;
struct yytbl_data newtbl;
yytbl_data_init (&newtbl, tbl->td_id);
@@ -471,19 +472,19 @@ void yytbl_data_compress (struct yytbl_data *tbl)
newsz = min_int_size (tbl);
- if (newsz == (int) YYTDFLAGS2BYTES (tbl->td_flags))
+ if (newsz == YYTDFLAGS2BYTES (tbl->td_flags))
/* No change in this table needed. */
return;
- if (newsz > (int) YYTDFLAGS2BYTES (tbl->td_flags)) {
+ if (newsz > YYTDFLAGS2BYTES (tbl->td_flags)) {
flex_die (_("detected negative compression"));
return;
}
total_len = yytbl_calc_total_len (tbl);
newtbl.td_data = calloc ((size_t) total_len, newsz);
- newtbl.td_flags =
- TFLAGS_CLRDATA (newtbl.td_flags) | BYTES2TFLAG (newsz);
+ newtbl.td_flags = (flex_uint16_t)
+ (TFLAGS_CLRDATA (newtbl.td_flags) | BYTES2TFLAG (newsz));
for (i = 0; i < total_len; i++) {
flex_int32_t g;
diff --git a/src/tables.h b/src/tables.h
index 2e4afe5..b8c2bbe 100644
--- a/src/tables.h
+++ b/src/tables.h
@@ -45,7 +45,7 @@ extern "C" {
#include "tables_shared.h"
struct yytbl_writer {
FILE *out;
- flex_uint32_t total_written;
+ int total_written;
/**< bytes written so far */
fpos_t th_ssize_pos;
/**< position of th_ssize */
diff --git a/src/tables_shared.c b/src/tables_shared.c
index 123626c..fca0438 100644
--- a/src/tables_shared.c
+++ b/src/tables_shared.c
@@ -57,7 +57,7 @@ dnl
*/
yyskel_static flex_int32_t yytbl_calc_total_len (const struct yytbl_data *tbl)
{
- flex_int32_t n;
+ flex_uint32_t n;
/* total number of ints */
n = tbl->td_lolen;
@@ -66,5 +66,5 @@ yyskel_static flex_int32_t yytbl_calc_total_len (const struct yytbl_data *tbl)
if (tbl->td_id == YYTD_ID_TRANSITION)
n *= 2;
- return n;
+ return (flex_int32_t) n;
}
diff --git a/src/tblcmp.c b/src/tblcmp.c
index b0dc8b3..81dfbc1 100644
--- a/src/tblcmp.c
+++ b/src/tblcmp.c
@@ -420,7 +420,7 @@ void inittbl (void)
{
int i;
- memset(chk, 0, current_max_xpairs * sizeof(int));
+ memset(chk, 0, (size_t) current_max_xpairs * sizeof(int));
tblend = 0;
firstfree = tblend + 1;
@@ -703,7 +703,8 @@ void mktemplate (int state[], int statenum, int comstate)
if (state[i] == 0)
tnxt[tmpbase + i] = 0;
else {
- transset[tsptr++] = i;
+ /* Note: range 1..256 is mapped to 1..255,0 */
+ transset[tsptr++] = (unsigned char) i;
tnxt[tmpbase + i] = comstate;
}
diff --git a/src/yylex.c b/src/yylex.c
index c3de1d5..521db7f 100644
--- a/src/yylex.c
+++ b/src/yylex.c
@@ -37,18 +37,19 @@
/* yylex - scan for a regular expression token */
-
extern char *yytext;
+extern FILE *yyout;
+bool no_section3_escape = false;
int yylex (void)
{
int toktype;
static int beglin = false;
- if (eofseen)
+ if (eofseen) {
toktype = EOF;
- else
+ } else {
toktype = flexscan ();
-
+ }
if (toktype == EOF || toktype == 0) {
eofseen = 1;
diff --git a/tests/.gitignore b/tests/.gitignore
new file mode 100644
index 0000000..e5c42b3
--- /dev/null
+++ b/tests/.gitignore
@@ -0,0 +1,105 @@
+*.log
+*.trs
+*.o
+*.tables
+alloc_extra
+alloc_extra.c
+array_nr
+array_nr.c
+array_r
+array_r.c
+basic_nr
+basic_nr.c
+basic_r
+basic_r.c
+bison_nr
+bison_nr_scanner.[ch]
+bison_nr_parser.[ch]
+bison_yylloc
+bison_yylloc_parser.[ch]
+bison_yylloc_scanner.[ch]
+bison_yylval
+bison_yylval_parser.[ch]
+bison_yylval_scanner.[ch]
+c_cxx_nr
+c_cxx_nr.cc
+c_cxx_r
+c_cxx_r.cc
+ccl
+ccl.c
+cxx_basic
+cxx_basic.cc
+cxx_multiple_scanners
+cxx_multiple_scanners_[12].cc
+cxx_restart
+cxx_restart.cc
+cxx_yywrap.i3
+cxx_yywrap.cc
+debug_nr
+debug_nr.c
+debug_r
+debug_r.c
+extended
+extended.c
+header_nr
+header_nr_scanner.[ch]
+header_r
+header_r_scanner.[ch]
+include_by_buffer.direct
+include_by_buffer.direct.c
+include_by_push.direct
+include_by_push.direct.c
+include_by_reentrant.direct
+include_by_reentrant.direct.c
+lineno_nr.one
+lineno_nr.c
+lineno_r.one
+lineno_r.c
+lineno_trailing.one
+lineno_trailing.c
+mem_nr
+mem_nr.c
+mem_r
+mem_r.c
+multiple_scanners_nr
+multiple_scanners_nr_[12].[ch]
+multiple_scanners_r
+multiple_scanners_r_[12].[ch]
+posix
+posix.c
+posixly_correct
+posixly_correct.c
+prefix_nr
+prefix_nr.c
+prefix_r
+prefix_r.c
+pthread.pthread
+pthread.c
+reject_nr.reject
+reject_nr.reject.c
+reject_r.reject
+reject_r.reject.c
+reject_ver.table
+reject_ver.table.c
+reject_ser.table
+reject_ser.table.c
+rescan_nr.direct
+rescan_nr.direct.c
+rescan_r.direct
+rescan_r.direct.c
+quote_in_comment
+quote_in_comment.c
+quotes
+quotes.c
+string_nr
+string_nr.c
+string_r
+string_r.c
+top
+top.[ch]
+yyextra
+yyextra.c
+tableopts_*.c
+*.opt
+*.ser
+*.ver
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 428e4b2..2cb51df 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -19,6 +19,8 @@
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
# PURPOSE.
+AM_CFLAGS = $(WARNINGFLAGS)
+
TESTS = $(check_PROGRAMS) options.cn
# The script testwrapper.sh will run most tests as is. A couple tests
@@ -29,28 +31,28 @@ TESTS = $(check_PROGRAMS) options.cn
TEST_EXTENSIONS = .reject .table .direct .cn .i3 .pthread .one .opt .ser .ver
-LOG_COMPILER = $(srcdir)/testwrapper.sh
+LOG_COMPILER = $(SHELL) $(srcdir)/testwrapper.sh
AM_LOG_FLAGS = -d $(srcdir) -r
-REJECT_LOG_COMPILER = $(srcdir)/testwrapper.sh
+REJECT_LOG_COMPILER = $(SHELL) $(srcdir)/testwrapper.sh
AM_REJECT_LOG_FLAGS = -d $(srcdir) -i $(srcdir)/reject.txt -r
-TABLE_LOG_COMPILER = $(srcdir)/testwrapper.sh
+TABLE_LOG_COMPILER = $(SHELL) $(srcdir)/testwrapper.sh
AM_TABLE_LOG_FLAGS = -d $(builddir) -i $(srcdir)/reject.txt -t
-DIRECT_LOG_COMPILER=$(srcdir)/testwrapper.sh
-AM_DIRECT_LOG_FLAGS = -d $(srcdir)
+DIRECT_LOG_COMPILER = $(SHELL) $(srcdir)/testwrapper-direct.sh
+AM_DIRECT_LOG_FLAGS = -b $(abs_builddir) -s $(srcdir)
-CN_LOG_COMPILER=$(srcdir)/options.cn
-AM_CN_LOG_FLAGS=$(FLEX)
+CN_LOG_COMPILER = $(SHELL) $(srcdir)/options.cn
+AM_CN_LOG_FLAGS = $(FLEX)
-I3_LOG_COMPILER=$(srcdir)/testwrapper.sh
-AM_I3_LOG_FLAGS=-i $(srcdir)/cxx_yywrap.txt -i $(srcdir)/cxx_yywrap.txt -i $(srcdir)/cxx_yywrap.txt
+I3_LOG_COMPILER = $(SHELL) $(srcdir)/testwrapper.sh
+AM_I3_LOG_FLAGS = -i $(srcdir)/cxx_yywrap.txt -i $(srcdir)/cxx_yywrap.txt -i $(srcdir)/cxx_yywrap.txt
-PTHREAD_LOG_COMPILER=$(srcdir)/testwrapper.sh
-AM_PTHREAD_LOG_FLAGS=-i $(srcdir)/pthread_1.txt -i $(srcdir)/pthread_2.txt -i $(srcdir)/pthread_3.txt -i $(srcdir)/pthread_4.txt -i $(srcdir)/pthread_5.txt
+PTHREAD_LOG_COMPILER = $(SHELL) $(srcdir)/testwrapper.sh
+AM_PTHREAD_LOG_FLAGS = -i $(srcdir)/pthread_1.txt -i $(srcdir)/pthread_2.txt -i $(srcdir)/pthread_3.txt -i $(srcdir)/pthread_4.txt -i $(srcdir)/pthread_5.txt
-ONE_LOG_COMPILER = $(srcdir)/testwrapper.sh
+ONE_LOG_COMPILER = $(SHELL) $(srcdir)/testwrapper.sh
AM_ONE_LOG_FLAGS = -1 -d $(srcdir)
AM_YFLAGS = -d -p test
@@ -72,6 +74,7 @@ simple_tests = \
ccl \
cxx_basic \
cxx_multiple_scanners \
+ cxx_restart \
debug_nr \
debug_r \
extended \
@@ -81,12 +84,11 @@ simple_tests = \
mem_r \
multiple_scanners_nr \
multiple_scanners_r \
- noansi_nr \
- noansi_r \
posix \
posixly_correct \
prefix_nr \
prefix_r \
+ quote_in_comment \
quotes \
string_nr \
string_r \
@@ -111,35 +113,46 @@ DIRECT_TESTS = \
I3_TESTS = \
cxx_yywrap.i3
-if want_pthread
PTHREAD_TESTS = \
pthread.pthread
-endif
ONE_TESTS = \
lineno_nr.one \
lineno_r.one \
lineno_trailing.one
+quote_in_comment_SOURCES = quote_in_comment.l
alloc_extra_SOURCES = alloc_extra.l
array_nr_SOURCES = array_nr.l
array_r_SOURCES = array_r.l
basic_nr_SOURCES = basic_nr.l
basic_r_SOURCES = basic_r.l
+if HAVE_BISON
bison_nr_SOURCES = bison_nr_scanner.l bison_nr_parser.y bison_nr_main.c
+nodist_bison_nr_SOURCES = bison_nr_parser.h bison_nr_scanner.h
bison_yylloc_SOURCES = bison_yylloc_scanner.l bison_yylloc_parser.y bison_yylloc_main.c
+nodist_bison_yylloc_SOURCES = bison_yylloc_parser.h bison_yylloc_scanner.h
bison_yylval_SOURCES = bison_yylval_scanner.l bison_yylval_parser.y bison_yylval_main.c
+nodist_bison_yylval_SOURCES = bison_yylval_parser.h bison_yylval_scanner.h
+else
+bison_nr_SOURCES = no_bison_stub.c
+bison_yylloc_SOURCES = no_bison_stub.c
+bison_yylval_SOURCES = no_bison_stub.c
+endif
c_cxx_nr_SOURCES = c_cxx_nr.lll
c_cxx_r_SOURCES = c_cxx_r.lll
ccl_SOURCES = ccl.l
cxx_basic_SOURCES = cxx_basic.ll
+cxx_restart_SOURCES = cxx_restart.ll
cxx_multiple_scanners_SOURCES = cxx_multiple_scanners_main.cc cxx_multiple_scanners_1.ll cxx_multiple_scanners_2.ll
cxx_yywrap_i3_SOURCES = cxx_yywrap.ll
debug_nr_SOURCES = debug_nr.l
debug_r_SOURCES = debug_r.l
extended_SOURCES = extended.l
header_nr_SOURCES = header_nr_scanner.l header_nr_main.c
+nodist_header_nr_SOURCES = header_nr_scanner.h
header_r_SOURCES = header_r_scanner.l header_r_main.c
+nodist_header_r_SOURCES = header_r_scanner.h
include_by_buffer_direct_SOURCES = include_by_buffer.direct.l
include_by_push_direct_SOURCES = include_by_push.direct.l
include_by_reentrant_direct_SOURCES = include_by_reentrant.direct.l
@@ -149,9 +162,9 @@ lineno_trailing_one_SOURCES = lineno_trailing.l
mem_nr_SOURCES = mem_nr.l
mem_r_SOURCES = mem_r.l
multiple_scanners_nr_SOURCES = multiple_scanners_nr_main.c multiple_scanners_nr_1.l multiple_scanners_nr_2.l
+nodist_multiple_scanners_nr_SOURCES = multiple_scanners_nr_1.h multiple_scanners_nr_2.h
multiple_scanners_r_SOURCES = multiple_scanners_r_main.c multiple_scanners_r_1.l multiple_scanners_r_2.l
-noansi_nr_SOURCES = noansi_nr.l
-noansi_r_SOURCES = noansi_r.l
+nodist_multiple_scanners_r_SOURCES = multiple_scanners_nr_1.h multiple_scanners_nr_2.h
posix_SOURCES = posix.l
posixly_correct_SOURCES = posixly_correct.l
prefix_nr_SOURCES = prefix_nr.l
@@ -167,23 +180,9 @@ rescan_r_direct_SOURCES = rescan_r.direct.l
string_nr_SOURCES = string_nr.l
string_r_SOURCES = string_r.l
top_SOURCES = top.l top_main.c
+nodist_top_SOURCES = top.h
yyextra_SOURCES = yyextra.l
-BUILT_SOURCES = \
- bison_nr_parser.h \
- bison_nr_scanner.h \
- bison_yylloc_parser.h \
- bison_yylloc_scanner.h \
- bison_yylval_parser.h \
- bison_yylval_scanner.h \
- header_nr_scanner.h \
- header_r_scanner.h \
- multiple_scanners_nr_1.h \
- multiple_scanners_nr_2.h \
- multiple_scanners_r_1.h \
- multiple_scanners_r_2.h \
- top.h
-
# Normally, automake would distribute files built by flex. Since the
# point of the test suite is to test the files that flex builds, and
# since anyone who has the flex distribution can build a flex binary
@@ -194,6 +193,7 @@ BUILT_SOURCES = \
# it.
CLEANFILES = \
+ alloc_extra.c \
array_nr.c \
array_r.c \
basic_nr.c \
@@ -216,6 +216,7 @@ CLEANFILES = \
cxx_basic.cc \
cxx_multiple_scanners_1.cc \
cxx_multiple_scanners_2.cc \
+ cxx_restart.cc \
cxx_yywrap.cc \
debug_nr.c \
debug_r.c \
@@ -240,13 +241,12 @@ CLEANFILES = \
multiple_scanners_r_1.h \
multiple_scanners_r_2.c \
multiple_scanners_r_2.h \
- noansi_nr.c \
- noansi_r.c \
posix.c \
posixly_correct.c \
prefix_nr.c \
prefix_r.c \
pthread.c \
+ quote_in_comment.c \
quotes.c \
reject_nr.reject.c \
reject_r.reject.c \
@@ -261,7 +261,6 @@ CLEANFILES = \
top.c \
top.h \
yyextra.c \
-alloc_extra.c \
$(tableopts_c) \
$(tableopts_tables)
@@ -285,6 +284,7 @@ EXTRA_DIST = \
ccl.txt \
cxx_basic.txt \
cxx_multiple_scanners.txt \
+ cxx_restart.txt \
cxx_yywrap.txt \
debug_nr.txt \
debug_r.txt \
@@ -305,8 +305,6 @@ EXTRA_DIST = \
lineno_trailing.one.txt \
mem_nr.txt \
mem_r.txt \
- noansi_nr.txt \
- noansi_r.txt \
prefix_nr.txt \
prefix_r.txt \
pthread_1.txt \
@@ -317,6 +315,7 @@ EXTRA_DIST = \
reject.txt \
rescan_nr.direct.txt \
rescan_r.direct.txt \
+ quote_in_comment.txt \
quotes.txt \
top.txt \
yyextra.txt \
@@ -327,90 +326,115 @@ dist_noinst_SCRIPTS = \
dist_check_SCRIPTS = \
options.cn \
+ testwrapper-direct.sh \
testwrapper.sh
-pthread_pthread_LDADD = -lpthread
+pthread_pthread_LDADD = @LIBPTHREAD@
# specify how to process .l files in order to test the flex built by make all
FLEX = $(top_builddir)/src/flex
.l.c: $(FLEX)
- $(FLEX) -o $@ $<
+ $(AM_V_LEX)$(FLEX) -o $@ $<
.ll.cc: $(FLEX)
- $(FLEX) -+ -o $@ $<
+ $(AM_V_LEX)$(FLEX) -+ -o $@ $<
+
+bison_nr_main.$(OBJEXT): bison_nr_parser.h bison_nr_scanner.h
+bison_nr_scanner.$(OBJEXT): bison_nr_parser.h
-bison_nr_main.($OBJEXT): bison_nr_parser.h bison_nr_scanner.h
bison_nr_scanner.h: bison_nr_scanner.c
+ @if test ! -f $@; then rm -f $<; else :; fi
+ @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) $<; else :; fi
bison_yylloc_main.$(OBJEXT): bison_yylloc_parser.h bison_yylloc_scanner.h
+bison_yylloc_scanner.$(OBJEXT): bison_yylloc_parser.h
+
bison_yylloc_scanner.h: bison_yylloc_scanner.c
+ @if test ! -f $@; then rm -f $<; else :; fi
+ @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) $<; else :; fi
bison_yylval_main.$(OBJEXT): bison_yylval_parser.h bison_yylval_scanner.h
+bison_yylval_scanner.$(OBJEXT): bison_yylval_parser.h
+
bison_yylval_scanner.h: bison_yylval_scanner.c
+ @if test ! -f $@; then rm -f $<; else :; fi
+ @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) $<; else :; fi
# automake does not support compiling flex scanners output in C as C++
# so we explicitly sayhow, using the .lll suffix for the lex input file
.lll.cc: $(FLEX)
- $(FLEX) -o $@ $<
+ $(AM_V_LEX)$(FLEX) -o $@ $<
header_nr_main.$(OBJEXT): header_nr_scanner.h
+
header_nr_scanner.h: header_nr_scanner.c
+ @if test ! -f $@; then rm -f $<; else :; fi
+ @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) $<; else :; fi
header_r_main.$(OBJEXT): header_r_scanner.h
-header_r_scanner.h: header_r_scanner.c
-include_by_buffer.direct$(EXE): include_by_buffer.direct.txt include_by_buffer.direct_2.txt include_by_buffer.direct_3.txt
-
-include_by_push.direct$(EXE): include_by_push.direct.txt include_by_push.direct_2.txt include_by_push.direct_3.txt
-
-include_by_reentrant.direct$(EXE): include_by_reentrant.direct.txt include_by_reentrant.direct_2.txt include_by_reentrant.direct_3.txt
+header_r_scanner.h: header_r_scanner.c
+ @if test ! -f $@; then rm -f $<; else :; fi
+ @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) $<; else :; fi
multiple_scanners_nr_main.$(OBJEXT): multiple_scanners_nr_1.h multiple_scanners_nr_2.h
+
multiple_scanners_nr_1.h: multiple_scanners_nr_1.c
+ @if test ! -f $@; then rm -f $<; else :; fi
+ @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) $<; else :; fi
+
multiple_scanners_nr_2.h: multiple_scanners_nr_2.c
+ @if test ! -f $@; then rm -f $<; else :; fi
+ @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) $<; else :; fi
multiple_scanners_r_main.$(OBJEXT): multiple_scanners_r_1.h multiple_scanners_r_2.h
+
multiple_scanners_r_1.h: multiple_scanners_r_1.c
+ @if test ! -f $@; then rm -f $<; else :; fi
+ @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) $<; else :; fi
+
multiple_scanners_r_2.h: multiple_scanners_r_2.c
+ @if test ! -f $@; then rm -f $<; else :; fi
+ @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) $<; else :; fi
posixly_correct.c: posixly_correct.l $(FLEX)
- POSIXLY_CORRECT=1 $(FLEX) -o $@ $<
+ $(AM_V_LEX)POSIXLY_CORRECT=1 $(FLEX) -o $@ $<
reject_nr.reject.c: reject.l4 $(FLEX)
- $(FLEX) -o $@ $<
+ $(AM_V_LEX)$(FLEX) --unsafe-no-m4-sect3-escape -o $@ $<
reject_nr.reject$(EXEEXT): reject_nr.reject.$(OBJEXT)
- $(LINK) $^
+ $(AM_V_CCLD)$(LINK) $^
reject_r.reject.c: reject.l4 $(FLEX)
- $(FLEX) --reentrant -o $@ $<
+ $(AM_V_LEX)$(FLEX) --unsafe-no-m4-sect3-escape --reentrant -o $@ $<
reject_r.reject.$(OBJEXT): reject_r.reject.c
- $(COMPILE) -DTEST_IS_REENTRANT -c -o $@ $<
+ $(AM_V_CC)$(COMPILE) -DTEST_IS_REENTRANT -c -o $@ $<
reject_r.reject$(EXEEXT): reject_r.reject.$(OBJEXT)
- $(LINK) $^
+ $(AM_V_CCLD)$(LINK) $^
reject_ver.table.c: reject.l4 $(FLEX)
- $(FLEX) -o $@ --tables-verify --tables-file=$(basename $@).tables $<
+ $(AM_V_LEX)$(FLEX) --unsafe-no-m4-sect3-escape -o $@ --tables-verify --tables-file=$(basename $@).tables $<
reject_ver.table.$(OBJEXT): reject_ver.table.c
- $(COMPILE) -DTEST_HAS_TABLES_EXTERNAL -c -o $@ $<
+ $(AM_V_CC)$(COMPILE) -DTEST_HAS_TABLES_EXTERNAL -c -o $@ $<
reject_ver.table$(EXEEXT): reject_ver.table.$(OBJEXT)
- $(LINK) $^
+ $(AM_V_CCLD)$(LINK) $^
reject_ser.table.c: reject.l4 $(FLEX)
- $(FLEX) -o $@ --tables-file=$(basename $@).tables $<
+ $(AM_V_LEX)$(FLEX) -o $@ --unsafe-no-m4-sect3-escape --tables-file=$(basename $@).tables $<
reject_ser.table.$(OBJEXT): reject_ser.table.c
- $(COMPILE) -DTEST_HAS_TABLES_EXTERNAL -c -o $@ $<
+ $(AM_V_CC)$(COMPILE) -DTEST_HAS_TABLES_EXTERNAL -c -o $@ $<
reject_ser.table$(EXEEXT): reject_ser.table.$(OBJEXT)
- $(LINK) $^
+ $(AM_V_CCLD)$(LINK) $^
top_main.$(OBJEXT): top.h
top.h: top.c
@@ -422,7 +446,7 @@ top.h: top.c
# it can be / is generated by a shell script, tableopts.sh.
tableopts.am: tableopts.sh
- $(srcdir)/tableopts.sh > $(srcdir)/tableopts.am
+ $(SHELL) $(srcdir)/tableopts.sh > $(srcdir)/tableopts.am
include $(srcdir)/tableopts.am
@@ -434,50 +458,50 @@ tableopts_tests := $(tableopts_opttests) $(tableopts_vertests) $(tableopts_sert
tableopts_c := $(addsuffix .c,$(tableopts_tests))
-OPT_LOG_COMPILER = $(srcdir)/testwrapper.sh
+OPT_LOG_COMPILER = $(SHELL) $(srcdir)/testwrapper.sh
AM_OPT_LOG_FLAGS = -d $(srcdir) -i $(srcdir)/tableopts.txt -r
tableopts_opt_nr%.c: tableopts.l4 $(FLEX)
- $(FLEX) -P $(subst -,_,$(basename $(*F))) $* -o $@ $<
+ $(AM_V_LEX)$(FLEX) --unsafe-no-m4-sect3-escape -P $(subst -,_,$(basename $(*F))) $* -o $@ $<
tableopts_opt_nr%.$(OBJEXT): tableopts_opt_nr%.c
- $(COMPILE) -c -o $@ $<
+ $(AM_V_CC)$(COMPILE) -c -o $@ $<
tableopts_opt_r%.c: tableopts.l4 $(FLEX)
- $(FLEX) -P $(subst -,_,$(basename $(*F))) --reentrant $* -o $@ $<
+ $(AM_V_LEX)$(FLEX) --unsafe-no-m4-sect3-escape -P $(subst -,_,$(basename $(*F))) --reentrant $* -o $@ $<
tableopts_opt_r%.$(OBJEXT): tableopts_opt_r%.c
- $(COMPILE) -DTEST_IS_REENTRANT -c -o $@ $<
+ $(AM_V_CC)$(COMPILE) -DTEST_IS_REENTRANT -c -o $@ $<
-SER_LOG_COMPILER = $(srcdir)/testwrapper.sh
+SER_LOG_COMPILER = $(SHELL) $(srcdir)/testwrapper.sh
AM_SER_LOG_FLAGS = -d $(builddir) -i $(srcdir)/tableopts.txt -r -t
tableopts_ser_nr%.c: tableopts.l4 $(FLEX)
- $(FLEX) -P $(subst -,_,$(basename $(*F))) --tables-file="tableopts_ser_nr$*.ser.tables" $* -o $@ $<
+ $(AM_V_LEX)$(FLEX) --unsafe-no-m4-sect3-escape -P $(subst -,_,$(basename $(*F))) --tables-file="tableopts_ser_nr$*.ser.tables" $* -o $@ $<
tableopts_ser_nr%.$(OBJEXT): tableopts_ser_nr%.c
- $(COMPILE) -DTEST_HAS_TABLES_EXTERNAL -c -o $@ $<
+ $(AM_V_CC)$(COMPILE) -DTEST_HAS_TABLES_EXTERNAL -c -o $@ $<
tableopts_ser_r%.c: tableopts.l4 $(FLEX)
- $(FLEX) -P $(subst -,_,$(basename $(*F))) -R --tables-file="tableopts_ser_r$*.ser.tables" $* -o $@ $<
+ $(AM_V_LEX)$(FLEX) --unsafe-no-m4-sect3-escape -P $(subst -,_,$(basename $(*F))) -R --tables-file="tableopts_ser_r$*.ser.tables" $* -o $@ $<
tableopts_ser_r%.$(OBJEXT): tableopts_ser_r%.c
- $(COMPILE) -DTEST_HAS_TABLES_EXTERNAL -DTEST_IS_REENTRANT -c -o $@ $<
+ $(AM_V_CC)$(COMPILE) -DTEST_HAS_TABLES_EXTERNAL -DTEST_IS_REENTRANT -c -o $@ $<
-VER_LOG_COMPILER = $(srcdir)/testwrapper.sh
+VER_LOG_COMPILER = $(SHELL) $(srcdir)/testwrapper.sh
AM_VER_LOG_FLAGS = -d $(builddir) -i $(srcdir)/tableopts.txt -r -t
tableopts_ver_nr%.c: tableopts.l4 $(FLEX)
- $(FLEX) -P $(subst -,_,$(basename $(*F))) --tables-file="tableopts_ver_nr$*.ver.tables" --tables-verify $* -o $@ $<
+ $(AM_V_LEX)$(FLEX) --unsafe-no-m4-sect3-escape -P $(subst -,_,$(basename $(*F))) --tables-file="tableopts_ver_nr$*.ver.tables" --tables-verify $* -o $@ $<
tableopts_ver_nr%.$(OBJEXT): tableopts_ver_nr%.c
- $(COMPILE) -DTEST_HAS_TABLES_EXTERNAL -c -o $@ $<
+ $(AM_V_CC)$(COMPILE) -DTEST_HAS_TABLES_EXTERNAL -c -o $@ $<
tableopts_ver_nr%.ver$(EXEEXT): tableopts_ver_nr%.$(OBJEXT)
- $(LINK) -o $@ $^
+ $(AM_V_CCLD)$(LINK) -o $@ $^
tableopts_ver_r%.c: tableopts.l4 $(FLEX)
- $(FLEX) -P $(subst -,_,$(basename $(*F))) -R --tables-file="tableopts_ver_r$*.ver.tables" --tables-verify $* -o $@ $<
+ $(AM_V_LEX)$(FLEX) --unsafe-no-m4-sect3-escape -P $(subst -,_,$(basename $(*F))) -R --tables-file="tableopts_ver_r$*.ver.tables" --tables-verify $* -o $@ $<
tableopts_ver_r%.$(OBJEXT): tableopts_ver_r%.c
- $(COMPILE) -DTEST_HAS_TABLES_EXTERNAL -DTEST_IS_REENTRANT -c -o $@ $<
+ $(AM_V_CC)$(COMPILE) -DTEST_HAS_TABLES_EXTERNAL -DTEST_IS_REENTRANT -c -o $@ $<
diff --git a/tests/README b/tests/README
index 43387f4..f1b9ba0 100644
--- a/tests/README
+++ b/tests/README
@@ -50,7 +50,8 @@ stderr, which will have been redirected to the log file created by the
automake test suite harness.
** If your test is skipped (e.g., because bison was not found), then
- the test should return 2 (two).
+ the test should return 77 (seventy-seven). This is the exit status that
+ would be recognized by automake's "test-driver" as _skipped_.
** Once your work is done, submit a patch via the flex development
mailing list, the github pull request mechanism or some other
diff --git a/tests/alloc_extra.l b/tests/alloc_extra.l
index 2c582a8..c974777 100644
--- a/tests/alloc_extra.l
+++ b/tests/alloc_extra.l
@@ -43,9 +43,6 @@ struct Check {
/* Save char into junk array at next position. */
static void check_extra ( yyscan_t scanner );
-/* Special yyalloc */
-void *yyalloc ( size_t size, yyscan_t scanner );
-
%}
%option 8bit prefix="test"
@@ -65,7 +62,7 @@ void *yyalloc ( size_t size, yyscan_t scanner );
int main(void);
int
-main ()
+main (void)
{
yyscan_t scanner;
struct Check check;
@@ -78,8 +75,8 @@ main ()
testset_in(stdin, scanner);
testset_out(stdout, scanner);
- /* Test to confirm that yyalloc was called from
- * yylex_init_extra with the yyextra argument.
+ /* Test to confirm that testalloc was called from
+ * testlex_init_extra with the testextra argument.
*/
check_extra(scanner);
@@ -89,7 +86,7 @@ main ()
return 0;
}
-void *yyalloc(size_t size, yyscan_t scanner)
+void *testalloc(size_t size, yyscan_t scanner)
{
struct Check *check;
check = testget_extra(scanner);
diff --git a/tests/array_nr.l b/tests/array_nr.l
index 52e0753..f4f0f1b 100644
--- a/tests/array_nr.l
+++ b/tests/array_nr.l
@@ -45,7 +45,7 @@
int main (void);
int
-main ()
+main (void)
{
yyin = stdin;
yyout = stdout;
diff --git a/tests/array_r.l b/tests/array_r.l
index 556d26f..68a6299 100644
--- a/tests/array_r.l
+++ b/tests/array_r.l
@@ -45,7 +45,7 @@
int main(void);
int
-main ()
+main (void)
{
yyscan_t lexer;
diff --git a/tests/basic_nr.l b/tests/basic_nr.l
index 3c29757..bbe87c4 100644
--- a/tests/basic_nr.l
+++ b/tests/basic_nr.l
@@ -52,7 +52,7 @@ WS [[:blank:]]
int main(void);
-int main ()
+int main (void)
{
yyin = stdin;
yyout = stdout;
diff --git a/tests/basic_r.l b/tests/basic_r.l
index e9ff59f..43d3a88 100644
--- a/tests/basic_r.l
+++ b/tests/basic_r.l
@@ -52,16 +52,16 @@ WS [[:blank:]]
int main(void);
-int main ()
+int main (void)
{
yyscan_t lexer;
- yylex_init( &lexer );
- yyset_out ( stdout,lexer);
- yyset_in ( stdin, lexer);
- while( yylex(lexer) )
+ testlex_init( &lexer );
+ testset_out ( stdout,lexer);
+ testset_in ( stdin, lexer);
+ while( testlex(lexer) )
{
}
- yylex_destroy( lexer );
+ testlex_destroy( lexer );
printf("TEST RETURNING OK.\n");
return 0;
}
diff --git a/tests/bison_nr_main.c b/tests/bison_nr_main.c
index f5dd98a..dfd6749 100644
--- a/tests/bison_nr_main.c
+++ b/tests/bison_nr_main.c
@@ -24,7 +24,6 @@
#include "bison_nr_parser.h"
#include "bison_nr_scanner.h"
-extern int testparse(void);
int main ( int argc, char** argv )
{
diff --git a/tests/bison_nr_parser.y b/tests/bison_nr_parser.y
index cbb4f2c..b981f7e 100644
--- a/tests/bison_nr_parser.y
+++ b/tests/bison_nr_parser.y
@@ -38,11 +38,10 @@
/* #define YYLEX_PARAM scanner */
int yyerror(const char* msg);
-extern int testget_lineno(void);
/* A dummy function. A check against seg-faults in yylval->str. */
-int process_text(char* s) {
+static int process_text(char* s) {
int total =0;
while(*s) {
total += (int) *s;
diff --git a/tests/bison_yylloc_parser.y b/tests/bison_yylloc_parser.y
index 8737291..93c63c0 100644
--- a/tests/bison_yylloc_parser.y
+++ b/tests/bison_yylloc_parser.y
@@ -40,11 +40,9 @@ int yyerror(YYLTYPE *location, void* scanner, const char* msg);
#define YYERROR_VERBOSE 1
-extern int testget_lineno(void*);
-
/* A dummy function. A check against seg-faults in yylval->str. */
-int process_text(char* s) {
+static int process_text(char* s) {
int total =0;
while(*s) {
total += (int) *s;
diff --git a/tests/bison_yylval_parser.y b/tests/bison_yylval_parser.y
index 4159d7b..3fc9c58 100644
--- a/tests/bison_yylval_parser.y
+++ b/tests/bison_yylval_parser.y
@@ -40,7 +40,7 @@
int yyerror(void* scanner, const char* msg);
/* A dummy function. A check against seg-faults in yylval->str. */
-int process_text(char* s) {
+static int process_text(char* s) {
int total =0;
while(*s) {
total += (int) *s;
diff --git a/tests/bison_yylval_scanner.l b/tests/bison_yylval_scanner.l
index 1e93fc1..3aa7ea9 100644
--- a/tests/bison_yylval_scanner.l
+++ b/tests/bison_yylval_scanner.l
@@ -52,7 +52,7 @@ enum yesno_t { no=0, yes=1 };
"</" { NEED_TAG_NAME= yes; yy_push_state( IN_TAG, yyscanner); return LTSLASH;}
"<"[^[:alpha:]] { yy_push_state(DISCARD_THRU_GT,yyscanner); }
"<" { NEED_TAG_NAME= yes; yy_push_state( IN_TAG, yyscanner); return LT; }
-[^<]{1,512} { yyget_lval(yyscanner)->str = STRDUP(yytext); return TEXT;}
+[^<]{1,512} { testget_lval(yyscanner)->str = STRDUP(yytext); return TEXT;}
}
<IN_TAG>{
">" { yy_pop_state( yyscanner ); return GT; }
diff --git a/tests/c_cxx_nr.lll b/tests/c_cxx_nr.lll
index c9e0fb6..24a73d7 100644
--- a/tests/c_cxx_nr.lll
+++ b/tests/c_cxx_nr.lll
@@ -48,10 +48,10 @@ int main(void);
int
main ()
{
- yyin = stdin;
- yyout = stdout;
- yylex();
- yylex_destroy();
+ testin = stdin;
+ testout = stdout;
+ testlex();
+ testlex_destroy();
printf("TEST RETURNING OK.\n");
return 0;
}
diff --git a/tests/c_cxx_r.lll b/tests/c_cxx_r.lll
index 83a39d7..e1fe9da 100644
--- a/tests/c_cxx_r.lll
+++ b/tests/c_cxx_r.lll
@@ -49,13 +49,13 @@ int
main ()
{
yyscan_t lexer;
- yylex_init( &lexer );
- yyset_out ( stdout,lexer);
- yyset_in ( stdin, lexer);
- while( yylex(lexer) )
+ testlex_init( &lexer );
+ testset_out ( stdout,lexer);
+ testset_in ( stdin, lexer);
+ while( testlex(lexer) )
{
}
- yylex_destroy( lexer );
+ testlex_destroy( lexer );
printf("TEST RETURNING OK.\n");
return 0;
}
diff --git a/tests/ccl.l b/tests/ccl.l
index c244892..9511604 100644
--- a/tests/ccl.l
+++ b/tests/ccl.l
@@ -84,7 +84,7 @@
int main(void);
int
-main ()
+main (void)
{
yyin = stdin;
yyout = stdout;
diff --git a/tests/noansi_nr.l b/tests/cxx_restart.ll
index db075a4..0ba6be1 100644
--- a/tests/noansi_nr.l
+++ b/tests/cxx_restart.ll
@@ -21,47 +21,31 @@
* PURPOSE.
*/
-/* TEST scanner.
- Basic non-reentrant scanner, but with non-ansi function defs.
- Compile with: flex scanner.l
-
- Sample Input:
- # this is a comment
- foo = true
- bar = "string value"
- integer = 43
-*/
%{
+
#include "config.h"
+
%}
-%option prefix="test"
-%option nounput noyywrap noyylineno warn nodefault noinput
-%option noansi-prototypes noansi-definitions
+%option 8bit prefix="test"
+%option warn c++
+%option nounput nomain noinput noyywrap
-IDENT [[:alnum:]_-]
-WS [[:blank:]]
%%
-^{IDENT}+{WS}*={WS}*(true|false){WS}*\r?\n { return 100;}
-^{IDENT}+{WS}*={WS}*\"[^\"\n\r]*\"{WS}*\r?\n { return 101;}
-^{IDENT}+{WS}*={WS}*[[:digit:]]+{WS}*\r?\n { return 102;}
-^{WS}*#.*\r?\n { }
-^{WS}*\r?\n { }
-.|\n { fprintf(stderr,"Invalid line.\n"); exit(-1);}
+. { }
%%
int main(void);
-int main ()
+int
+main (void)
{
- yyin = stdin;
- yyout = stdout;
- while( yylex() )
- {
- }
- printf("TEST RETURNING OK.\n");
+ yyFlexLexer f;
+ f.switch_streams(&std::cin, &std::cout);
+ f.yylex();
+ f.yyrestart(NULL);
+ std::cout << "TEST RETURNING OK." << std::endl;
return 0;
}
-
diff --git a/tests/cxx_restart.txt b/tests/cxx_restart.txt
new file mode 100644
index 0000000..7288a40
--- /dev/null
+++ b/tests/cxx_restart.txt
@@ -0,0 +1,2 @@
+0000 foo 1111 foo 0000 bar
+0000 foo 1111 foo 0000 bar
diff --git a/tests/debug_nr.l b/tests/debug_nr.l
index 0596dce..8110ab4 100644
--- a/tests/debug_nr.l
+++ b/tests/debug_nr.l
@@ -41,7 +41,7 @@
int main(void);
int
-main ()
+main (void)
{
yyin = stdin;
yyout = stdout;
diff --git a/tests/debug_r.l b/tests/debug_r.l
index 0d40e0e..8c2d7a5 100644
--- a/tests/debug_r.l
+++ b/tests/debug_r.l
@@ -40,20 +40,20 @@
int main(void);
-int main ()
+int main (void)
{
yyscan_t lexer;
- yylex_init( &lexer );
- yyset_out ( stdout,lexer);
- yyset_in ( stdin, lexer);
+ testlex_init( &lexer );
+ testset_out ( stdout,lexer);
+ testset_in ( stdin, lexer);
/* Just see if the next line compiles. */
testset_debug (testget_debug(lexer), lexer);
- while( yylex(lexer) )
+ while( testlex(lexer) )
{
}
- yylex_destroy( lexer );
+ testlex_destroy( lexer );
printf("TEST RETURNING OK.\n");
return 0;
}
diff --git a/tests/extended.l b/tests/extended.l
index a113fac..9691307 100644
--- a/tests/extended.l
+++ b/tests/extended.l
@@ -63,7 +63,7 @@ A(?x: B
int main(void);
int
-main ()
+main (void)
{
yyin = stdin;
yyout = stdout;
diff --git a/tests/include_by_buffer.direct.l b/tests/include_by_buffer.direct.l
index f3b2d2a..79ff01c 100644
--- a/tests/include_by_buffer.direct.l
+++ b/tests/include_by_buffer.direct.l
@@ -29,6 +29,8 @@ f * are met:
#include <stdio.h>
#include <stdlib.h>
#include "config.h"
+
+int error = 0;
%}
%option 8bit prefix="test"
@@ -56,6 +58,7 @@ int include_stack_ptr = 0;
include_stack[include_stack_ptr++] = YY_CURRENT_BUFFER;
if((yyin=fopen(yytext,"r"))==NULL) {
fprintf(stderr,"*** Error: Could not open include file \"%s\".\n",yytext);
+ error = 1;
yyterminate();
}
yy_switch_to_buffer( yy_create_buffer( yyin, YY_BUF_SIZE ));
@@ -63,6 +66,7 @@ int include_stack_ptr = 0;
}
.|\n {
fprintf(stderr,"Invalid input \"%s\".\n", yytext);
+ error = 1;
yyterminate();
}
}
@@ -97,6 +101,9 @@ main ( int argc, char** argv )
yyin = fp;
yyout = stdout;
yylex();
- printf("TEST RETURNING OK.\n");
+ if (!error)
+ printf("TEST RETURNING OK.\n");
+ else
+ exit(-1);
return 0;
}
diff --git a/tests/include_by_push.direct.l b/tests/include_by_push.direct.l
index 6b7a5fa..8aaea69 100644
--- a/tests/include_by_push.direct.l
+++ b/tests/include_by_push.direct.l
@@ -29,6 +29,8 @@
#include <stdio.h>
#include <stdlib.h>
#include "config.h"
+
+int error = 0;
%}
%option 8bit prefix="test"
@@ -50,20 +52,22 @@
yytext[yyleng-1]='\0';
if((yyin=fopen(yytext,"r"))==NULL) {
fprintf(stderr,"*** Error: Could not open include file \"%s\".\n",yytext);
+ error = 1;
yyterminate();
}
- yypush_buffer_state( yy_create_buffer( yyin, YY_BUF_SIZE ));
+ testpush_buffer_state( yy_create_buffer( yyin, YY_BUF_SIZE ));
BEGIN(0);
}
.|\n {
fprintf(stderr,"Invalid input \"%s\".\n", yytext);
+ error = 1;
yyterminate();
}
}
<<EOF>> {
fclose(yyin);
- yypop_buffer_state();
+ testpop_buffer_state();
if(!YY_CURRENT_BUFFER)
yyterminate();
}
@@ -87,6 +91,9 @@ main ( int argc, char** argv )
yyin = fp;
yyout = stdout;
yylex();
- printf("TEST RETURNING OK.\n");
+ if (!error)
+ printf("TEST RETURNING OK.\n");
+ else
+ exit(-1);
return 0;
}
diff --git a/tests/include_by_reentrant.direct.l b/tests/include_by_reentrant.direct.l
index 8cd4900..7dbad72 100644
--- a/tests/include_by_reentrant.direct.l
+++ b/tests/include_by_reentrant.direct.l
@@ -29,6 +29,8 @@
#include <stdio.h>
#include <stdlib.h>
#include "config.h"
+
+int error = 0;
%}
%option 8bit prefix="test"
@@ -54,18 +56,20 @@
if((fp=fopen(yytext,"r"))==NULL) {
fprintf(stderr,"*** Error: Could not open include file \"%s\".\n",
yytext);
+ error = 1;
yyterminate();
}
- yylex_init(&scanner);
- yyset_in( fp, scanner);
- yyset_out( stdout, scanner);
- yylex(scanner);
- yylex_destroy(scanner);
+ testlex_init(&scanner);
+ testset_in( fp, scanner);
+ testset_out( stdout, scanner);
+ testlex(scanner);
+ testlex_destroy(scanner);
BEGIN(0);
}
.|\n {
fprintf(stderr,"Invalid input \"%s\".\n", yytext);
+ error = 1;
yyterminate();
}
}
@@ -77,9 +81,7 @@
int main (int argc, char** argv);
int
-main ( argc, argv )
- int argc;
- char ** argv;
+main ( int argc, char **argv )
{
FILE * fp;
yyscan_t scanner;
@@ -91,11 +93,14 @@ main ( argc, argv )
fprintf(stderr,"*** Error: fopen(%s) failed.\n",argv[1]);
exit(-1);
}
- yylex_init(&scanner);
- yyset_in( fp, scanner);
- yyset_out( stdout, scanner);
- yylex(scanner);
- yylex_destroy(scanner);
- printf("TEST RETURNING OK.\n");
+ testlex_init(&scanner);
+ testset_in( fp, scanner);
+ testset_out( stdout, scanner);
+ testlex(scanner);
+ testlex_destroy(scanner);
+ if (!error)
+ printf("TEST RETURNING OK.\n");
+ else
+ exit(-1);
return 0;
}
diff --git a/tests/lineno_nr.l b/tests/lineno_nr.l
index 8e35fc1..dbe6b2d 100644
--- a/tests/lineno_nr.l
+++ b/tests/lineno_nr.l
@@ -78,9 +78,7 @@ count_newlines (FILE* in)
int main ( int, char**);
int
-main ( argc, argv )
- int argc;
- char** argv;
+main ( int argc, char **argv )
{
(void)argv;
diff --git a/tests/lineno_r.l b/tests/lineno_r.l
index e6207c6..d7230d7 100644
--- a/tests/lineno_r.l
+++ b/tests/lineno_r.l
@@ -78,9 +78,7 @@ count_newlines (FILE* in)
int main ( int argc, char** argv );
int
-main (argc, argv)
- int argc;
- char ** argv;
+main (int argc, char **argv)
{
(void)argv;
@@ -89,11 +87,11 @@ main (argc, argv)
else{
yyscan_t s;
- yylex_init(&s);
- yyset_in(stdin,s);
- yyset_out(stdout,s);
- yylex(s);
- yylex_destroy(s);
+ testlex_init(&s);
+ testset_in(stdin,s);
+ testset_out(stdout,s);
+ testlex(s);
+ testlex_destroy(s);
}
return 0;
}
diff --git a/tests/lineno_trailing.l b/tests/lineno_trailing.l
index 3a8a683..cceaa23 100644
--- a/tests/lineno_trailing.l
+++ b/tests/lineno_trailing.l
@@ -71,9 +71,7 @@ count_newlines (FILE* in)
int main ( int, char**);
int
-main ( argc, argv )
- int argc;
- char** argv;
+main ( int argc, char **argv )
{
(void)argv;
diff --git a/tests/mem_nr.l b/tests/mem_nr.l
index f25848f..b7cf343 100644
--- a/tests/mem_nr.l
+++ b/tests/mem_nr.l
@@ -96,7 +96,7 @@ void * yyalloc(yy_size_t n)
if( nptrs >= arrsz){
/* increase array size by 1 */
arrsz++;
- ptrs = realloc(ptrs, arrsz * sizeof(struct memsz));
+ ptrs = realloc(ptrs, (size_t) arrsz * sizeof(struct memsz));
ptrs[nptrs].p = 0;
ptrs[nptrs].sz = 0;
}
@@ -158,7 +158,7 @@ void yyfree(void* p)
int main(void);
int
-main ()
+main (void)
{
arrsz = 1;
ptrs = calloc(1, sizeof(struct memsz));
@@ -166,8 +166,8 @@ main ()
yyin = stdin;
yyout = stdout;
- yylex();
- yylex_destroy();
+ testlex();
+ testlex_destroy();
free(ptrs);
if ( nptrs > 0 || total_mem > 0){
diff --git a/tests/mem_r.l b/tests/mem_r.l
index 33b9888..06ae2e7 100644
--- a/tests/mem_r.l
+++ b/tests/mem_r.l
@@ -85,7 +85,7 @@ static void dump_mem(FILE* fp){
fprintf(fp,"}\n");
}
-void * yyalloc(yy_size_t n , void* yyscanner)
+void * testalloc(yy_size_t n , void* yyscanner)
{
(void)yyscanner;
@@ -98,7 +98,7 @@ void * yyalloc(yy_size_t n , void* yyscanner)
if( nptrs >= arrsz){
/* increase array size by 1 */
arrsz++;
- ptrs = realloc(ptrs, arrsz * sizeof(struct memsz));
+ ptrs = realloc(ptrs, (size_t) arrsz * sizeof(struct memsz));
ptrs[nptrs].p = 0;
ptrs[nptrs].sz = 0;
}
@@ -116,7 +116,7 @@ void * yyalloc(yy_size_t n , void* yyscanner)
return p;
}
-void * yyrealloc(void* p, yy_size_t n , void* yyscanner)
+void * testrealloc(void* p, yy_size_t n , void* yyscanner)
{
(void)yyscanner;
@@ -139,7 +139,7 @@ void * yyrealloc(void* p, yy_size_t n , void* yyscanner)
exit(1);
}
-void yyfree(void* p , void* yyscanner)
+void testfree(void* p , void* yyscanner)
{
(void)yyscanner;
@@ -164,18 +164,18 @@ void yyfree(void* p , void* yyscanner)
int main(void);
int
-main ()
+main (void)
{
yyscan_t scanner;
arrsz = 1;
ptrs = calloc(1, sizeof(struct memsz));
nptrs = 0;
- yylex_init(&scanner);
- yyset_in(stdin,scanner);
- yyset_out(stdout,scanner);
- yylex(scanner);
- yylex_destroy(scanner);
+ testlex_init(&scanner);
+ testset_in(stdin,scanner);
+ testset_out(stdout,scanner);
+ testlex(scanner);
+ testlex_destroy(scanner);
free(ptrs);
if ( nptrs > 0 || total_mem > 0){
diff --git a/tests/multiple_scanners_r_main.c b/tests/multiple_scanners_r_main.c
index ea73806..9c3fa8d 100644
--- a/tests/multiple_scanners_r_main.c
+++ b/tests/multiple_scanners_r_main.c
@@ -31,7 +31,6 @@ main ( int argc, char** argv )
(void)argv;
int S1_ok=1, S2_ok=1;
- FILE * fp;
YY_BUFFER_STATE buff1, buff2;
yyscan_t scan1, scan2;
diff --git a/tests/no_bison_stub.c b/tests/no_bison_stub.c
new file mode 100644
index 0000000..5fb3a9d
--- /dev/null
+++ b/tests/no_bison_stub.c
@@ -0,0 +1,39 @@
+/* This stub will be used when Bison is not available on the user's host. */
+
+/* This file is part of flex.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE.
+ */
+#include <stdio.h>
+
+int main (int argc, char *argv[])
+{
+ (void)argc;
+ (void)argv;
+ puts(
+ "This test requires Bison. Install Bison and re-run \"configure && make check\"\n"
+ "to perform this test. (This file is stub code.)"
+ );
+
+ /* Exit status for a skipped test */
+ return 77;
+}
+
+/* vim:set tabstop=8 softtabstop=4 shiftwidth=4: */
diff --git a/tests/noansi_nr.txt b/tests/noansi_nr.txt
deleted file mode 100644
index 642e0fb..0000000
--- a/tests/noansi_nr.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-# this is a comment
-foo = "bar"
-num = 43
-setting = false
-
diff --git a/tests/noansi_r.l b/tests/noansi_r.l
deleted file mode 100644
index 5a3b778..0000000
--- a/tests/noansi_r.l
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * This file is part of flex.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- *
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
- * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE.
- */
-
-/* A reentrant scanner.
- This file will not compile under flex version <= 2.5.4.
- Sample Input:
- # this is a comment
- foo = true
- bar = "string value"
- integer = 43
-*/
-%{
-#include "config.h"
-%}
-
-%option prefix="test"
-%option nounput noyywrap noyylineno warn nodefault noinput
-%option reentrant
-%option noansi-definitions noansi-prototypes
-
-IDENT [[:alnum:]_-]
-WS [[:blank:]]
-%%
-
-^{IDENT}+{WS}*={WS}*(true|false){WS}*\r?\n { return 100;}
-^{IDENT}+{WS}*={WS}*\"[^\"\n\r]*\"{WS}*\r?\n { return 101;}
-^{IDENT}+{WS}*={WS}*[[:digit:]]+{WS}*\r?\n { return 102;}
-^{WS}*#.*\r?\n { }
-^{WS}*\r?\n { }
-.|\n { fprintf(stderr,"Invalid line.\n"); exit(-1);}
-
-%%
-
-int main(void);
-
-int main ()
-{
- yyscan_t lexer;
- yylex_init( &lexer );
- yyset_out ( stdout,lexer);
- yyset_in ( stdin, lexer);
- while( yylex(lexer) )
- {
- }
- yylex_destroy( lexer );
- printf("TEST RETURNING OK.\n");
- return 0;
-}
-
diff --git a/tests/noansi_r.txt b/tests/noansi_r.txt
deleted file mode 100644
index 2160628..0000000
--- a/tests/noansi_r.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-# this is a comment
-foo = "bar"
-num = 43
-setting = false
diff --git a/tests/options.cn b/tests/options.cn
index 2f592e9..5af60ea 100755
--- a/tests/options.cn
+++ b/tests/options.cn
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/bin/sh
# Test that flex handles the grouped noop options -c and -n properly.
diff --git a/tests/posix.l b/tests/posix.l
index 38e8d3b..f1851d8 100644
--- a/tests/posix.l
+++ b/tests/posix.l
@@ -53,7 +53,7 @@ ab{3} tests_ok[0] = 1; return 0;
%%
-int main ()
+int main (void)
{
YY_BUFFER_STATE state;
int i;
@@ -63,9 +63,9 @@ int main ()
/* Run the tests */
for (i=0; i < NUM_TESTS; i++){
- printf("Testing: yy_scan_string(%s): ", tests[i]);
- state = yy_scan_string(tests[i]);
- yylex();
+ printf("Testing: test_scan_string(%s): ", tests[i]);
+ state = test_scan_string(tests[i]);
+ testlex();
yy_delete_buffer(state);
printf("... %s\n", tests_ok[i] ? "OK" : "FAILED");
}
diff --git a/tests/posixly_correct.l b/tests/posixly_correct.l
index aff9cbd..715bb27 100644
--- a/tests/posixly_correct.l
+++ b/tests/posixly_correct.l
@@ -53,7 +53,7 @@ ab{3} tests_ok[0] = 1; return 0;
%%
-int main ()
+int main (void)
{
YY_BUFFER_STATE state;
int i;
@@ -63,9 +63,9 @@ int main ()
/* Run the tests */
for (i=0; i < NUM_TESTS; i++){
- printf("Testing: yy_scan_string(%s): ", tests[i]);
- state = yy_scan_string(tests[i]);
- yylex();
+ printf("Testing: test_scan_string(%s): ", tests[i]);
+ state = test_scan_string(tests[i]);
+ testlex();
yy_delete_buffer(state);
printf("... %s\n", tests_ok[i] ? "OK" : "FAILED");
}
diff --git a/tests/prefix_nr.l b/tests/prefix_nr.l
index c1665df..2208ae0 100644
--- a/tests/prefix_nr.l
+++ b/tests/prefix_nr.l
@@ -64,7 +64,7 @@
int main(void);
int
-main ()
+main (void)
{
yyin = stdin;
yyout = stdout;
diff --git a/tests/prefix_r.l b/tests/prefix_r.l
index a2d4c1a..210a4de 100644
--- a/tests/prefix_r.l
+++ b/tests/prefix_r.l
@@ -71,7 +71,7 @@
int main(void);
int
-main ()
+main (void)
{
yyscan_t scanner;
FOOlex_init( &scanner);
diff --git a/tests/pthread.l b/tests/pthread.l
index c40c024..eb99778 100644
--- a/tests/pthread.l
+++ b/tests/pthread.l
@@ -27,7 +27,7 @@
We create N_THREADS number of threads. Each thread has it's own scanner.
Each thread selects one of the files specified in ARGV, scans it, then
- closes it. This is repeated N_SCANS numebr of times for each thread.
+ closes it. This is repeated N_SCANS number of times for each thread.
The idea is to press the scanner to break under threads.
If we see "Scanner Jammed", then we know
@@ -78,30 +78,30 @@ static int process_text(char* s, yyscan_t scanner);
<INITIAL,STATE_1,STATE_2>[[:space:]\r\n]+ { }
%%
-int yywrap( yyscan_t scanner) {
+int testwrap( yyscan_t scanner) {
(void)scanner;
return 1;
}
static int process_text(char* s, yyscan_t scanner)
{
(void)scanner;
- return (int)(*s) + (int) *(s + yyget_leng(scanner)-1);
+ return (int)(*s) + (int) *(s + testget_leng(scanner)-1);
}
int main(int ARGC, char *ARGV[]);
-#ifndef HAVE_LIBPTHREAD
- int main (int ARGC, char *ARGV[]) {
- printf(
+#ifndef HAVE_PTHREAD_H
+int main (int ARGC, char *ARGV[]) {
+ puts(
"TEST ABORTED because pthread library not available \n"
- "-- This is expected on some systems. It is not a flex error.\n" );
- return 0;
- }
+ "-- This is expected on some systems. It is not a flex error.");
+ /* Exit status for a skipped test */
+ return 77;
+}
#else
#define N_THREADS 4
#define N_SCANS 20
-#define INPUT_FILE "test.input"
/* Each thread selects the next file to scan in round-robin fashion.
If there are less files than threads, some threads may block. */
@@ -114,7 +114,7 @@ static pthread_mutex_t *file_locks;
static char **filenames;
-void * thread_func ( void* arg )
+static void * thread_func ( void* arg )
{
int i;
@@ -126,8 +126,6 @@ void * thread_func ( void* arg )
for( i =0 ; i < N_SCANS ; i++ )
{
- int main(int ARGC, char *ARGV[]);
-
int next;
yyscan_t scanner;
FILE * fp;
@@ -138,19 +136,19 @@ void * thread_func ( void* arg )
pthread_mutex_lock ( &file_locks[ next ] );
- yylex_init( &scanner );
+ testlex_init( &scanner );
/*printf("Scanning file %s #%d\n",filenames[next],i); fflush(stdout); */
if((fp = fopen(filenames[next],"r"))==NULL) {
perror("fopen");
return NULL;
}
- yyset_in(fp,scanner);
+ testset_in(fp,scanner);
- while( yylex( scanner) != 0)
+ while( testlex( scanner) != 0)
{
}
fclose(fp);
- yylex_destroy(scanner);
+ testlex_destroy(scanner);
pthread_mutex_unlock ( &file_locks[ next ] );
}
return NULL;
@@ -167,7 +165,7 @@ int main (int ARGC, char *ARGV[])
}
/* Allocate and initialize the locks. One for each filename in ARGV. */
- file_locks = malloc((ARGC-1) * sizeof(pthread_mutex_t));
+ file_locks = malloc((size_t) (ARGC-1) * sizeof(pthread_mutex_t));
for( i = 0; i < ARGC-1; i++)
pthread_mutex_init( &file_locks[i], NULL );
@@ -206,5 +204,5 @@ int main (int ARGC, char *ARGV[])
return 0;
}
-#endif /* HAVE_LIBPTHREAD */
+#endif /* HAVE_PTHREAD_H */
diff --git a/tests/quote_in_comment.l b/tests/quote_in_comment.l
new file mode 100644
index 0000000..a5743c2
--- /dev/null
+++ b/tests/quote_in_comment.l
@@ -0,0 +1,16 @@
+%option 8bit noyywrap
+%%
+.|\n { ECHO;
+ //' "
+ }
+%%
+int
+main (void)
+{
+ yyin = stdin;
+ yyout = stdout;
+ while (yylex())
+ ;
+ printf("TEST RETURNING OK.\n");
+ return 0;
+}
diff --git a/tests/quote_in_comment.txt b/tests/quote_in_comment.txt
new file mode 100644
index 0000000..9daeafb
--- /dev/null
+++ b/tests/quote_in_comment.txt
@@ -0,0 +1 @@
+test
diff --git a/tests/quotes.l b/tests/quotes.l
index c1386c3..d1b97eb 100644
--- a/tests/quotes.l
+++ b/tests/quotes.l
@@ -38,6 +38,7 @@
#include <stdio.h>
#include <stdlib.h>
#include "config.h"
+#include <assert.h>
/*#include "parser.h" */
/* sect 1 block [ 1 ] TEST_XXX */
@@ -61,6 +62,17 @@ static int foo (int i){
%%
+ /* indented code [ 1 ] */
+ /* indented code [[ 2 ]] */
+ /* indented code [[[ 3 ]]] */
+ /* indented code [[[[ 4 ]]]] */
+ /* indented code ]] unmatched [[ */
+%{
+// non-indented code [ 1 ]
+// non-indented code [[ 2 ]]
+// non-indented code [[[ 3 ]]]
+// non-indented code [[[[ 4 ]]]]
+%}
a /* action comment [ 1 ] */ ;
b /* action comment [[ 2 ]] */ ;
@@ -68,13 +80,27 @@ c /* action comment [[[ 3 ]]] */ ;
d /* action comment [[[[ 4 ]]]] */ ;
e /* action comment ]] unmatched [[ */ ;
f return 1+foo(a[b[c[0]]]);
-.|\n {
+.|\n {
+
+#if 0
+ action code [ 1 ] TEST_XXX
+ action code [[ 2 ]] TEST_XXX
+ action code [[[ 3 ]]] TEST_XXX
+ action code [[[[ 4 ]]]] TEST_XXX
+ action code ]] unmatched [[ TEST_XXX
+#endif
/* action block [ 1 ] TEST_XXX */
/* action block [[ 2 ]] TEST_XXX */
/* action block [[[ 3 ]]] TEST_XXX */
/* action block [[[[ 4 ]]]] TEST_XXX */
/* action block ]] unmatched [[ TEST_XXX */
- return 1+foo(a[b[c[0]]]); // TEST_XXX
+ assert(!strcmp("[[ 2 ]]", "[""[ 2 ]""]"));
+ assert(!strcmp("[[[ 3 ]]]", "[""[""[ 3 ]""]""]"));
+ assert(!strcmp("[[[[ 4 ]]]]", "[""[""[""[ 4 ]""]""]""]"));
+ assert(!strcmp("]] unmatched [[", "]""] unmatched [""["));
+ assert(!strcmp("]]m4_define(alpha, beta)[[",
+ "]""]m4_""define(alpha, beta)[""["));
+ return 1+foo(a[b[c[0]]]); /* TEST_XXX */
}
%%
@@ -88,13 +114,17 @@ static int bar (int i){
}
int main(void);
+#define CONCAT_IDENTS(a, b) a##b
int
-main ()
+main (void)
{
- yyin = stdin;
+ /* m4_m4exit(100) */
+ FILE *M4_YY_NOT_IN_HEADER = stdin;
+ yyin = CONCAT_IDENTS(M4_, YY_NOT_IN_HEADER);
yyout = stdout;
while (yylex())
;
+ assert(!strcmp("YY_G( alpha)", "Y""Y_G( alpha)"));
printf("TEST RETURNING OK.\n");
return bar(0);
}
diff --git a/tests/reject.l4 b/tests/reject.l4
index 7eda4a5..9bcde22 100644
--- a/tests/reject.l4
+++ b/tests/reject.l4
@@ -47,7 +47,7 @@ int main ( int argc, char** argv )
M4_YY_DECL_GUTS_VAR();
#ifdef TEST_IS_REENTRANT
- yylex_init(&yyscanner);
+ testlex_init(&yyscanner);
#else
(void)yyscanner;
#endif
@@ -67,13 +67,13 @@ int main ( int argc, char** argv )
YY_FATAL_ERROR("could not open input file for reading");
yyin = fp;
}
- while(yylex(M4_YY_CALL_ONLY_ARG) != 0)
+ while(testlex(M4_YY_CALL_ONLY_ARG) != 0)
;
#ifdef TEST_HAS_TABLES_EXTERNAL
- yytables_destroy(M4_YY_CALL_ONLY_ARG);
+ testtables_destroy(M4_YY_CALL_ONLY_ARG);
#endif
- yylex_destroy(M4_YY_CALL_ONLY_ARG);
+ testlex_destroy(M4_YY_CALL_ONLY_ARG);
if(argc < 0) /* silence the compiler */
yyscanner = (void*)fp;
diff --git a/tests/rescan_nr.direct.l b/tests/rescan_nr.direct.l
index 86103aa..536ba78 100644
--- a/tests/rescan_nr.direct.l
+++ b/tests/rescan_nr.direct.l
@@ -58,14 +58,14 @@ main (int argc, char* const argv[])
return 1;
}
- yyset_out ( stdout);
+ testset_out ( stdout);
for (i=0; i < 4; ++i){
rewind(fp);
- yyset_in ( fp);
- while( yylex() )
+ testset_in ( fp);
+ while( testlex() )
;
- yylex_destroy();
+ testlex_destroy();
}
printf("TEST RETURNING OK.\n");
return 0;
diff --git a/tests/rescan_r.direct.l b/tests/rescan_r.direct.l
index 2255ee2..ceebc40 100644
--- a/tests/rescan_r.direct.l
+++ b/tests/rescan_r.direct.l
@@ -60,18 +60,18 @@ main (int argc, char* const argv[])
}
printf("Test 1: Reusing same scanner.\n");
- yylex_init( &yyscanner );
- yyset_out ( stdout, yyscanner);
+ testlex_init( &yyscanner );
+ testset_out ( stdout, yyscanner);
for (i=0; i < 4; ++i){
rewind(fp);
- yyset_in ( fp, yyscanner);
+ testset_in ( fp, yyscanner);
- while( yylex(yyscanner) )
+ while( testlex(yyscanner) )
;
}
- yylex_destroy( yyscanner );
+ testlex_destroy( yyscanner );
printf("Test 1 OK\n\n");
printf("Test 2: Rescanning with new scanner each time.\n");
@@ -80,14 +80,14 @@ main (int argc, char* const argv[])
for (i=0; i < 4; ++i){
yyscan_t s;
- yylex_init( &s );
- yyset_out ( stdout, s);
+ testlex_init( &s );
+ testset_out ( stdout, s);
rewind(fp);
- yyset_in ( fp, s);
+ testset_in ( fp, s);
- while( yylex(s) )
+ while( testlex(s) )
;
- yylex_destroy( s );
+ testlex_destroy( s );
}
printf("Test 2 OK\n\n");
diff --git a/tests/string_nr.l b/tests/string_nr.l
index e909b2d..8352b09 100644
--- a/tests/string_nr.l
+++ b/tests/string_nr.l
@@ -59,37 +59,37 @@
int main(void);
int
-main ()
+main (void)
{
char * buf;
- int len;
+ size_t len;
YY_BUFFER_STATE state;
/* Scan a good string. */
- printf("Testing: yy_scan_string(%s): ",INPUT_STRING_1); fflush(stdout);
- state = yy_scan_string ( INPUT_STRING_1 );
- yylex();
+ printf("Testing: test_scan_string(%s): ",INPUT_STRING_1); fflush(stdout);
+ state = test_scan_string ( INPUT_STRING_1 );
+ testlex();
yy_delete_buffer(state);
/* Scan only the first 12 chars of a string. */
- printf("Testing: yy_scan_bytes(%s): ",INPUT_STRING_2); fflush(stdout);
- state = yy_scan_bytes ( INPUT_STRING_2, 12 );
- yylex();
- yy_delete_buffer(state);
+ printf("Testing: test_scan_bytes(%s): ",INPUT_STRING_2); fflush(stdout);
+ state = test_scan_bytes ( INPUT_STRING_2, 12 );
+ testlex();
+ test_delete_buffer(state);
/* Scan directly from a buffer.
We make a copy, since the buffer will be modified by flex.*/
- printf("Testing: yy_scan_buffer(%s): ",INPUT_STRING_1); fflush(stdout);
+ printf("Testing: test_scan_buffer(%s): ",INPUT_STRING_1); fflush(stdout);
len = strlen(INPUT_STRING_1) + 2;
buf = malloc(len);
strcpy( buf, INPUT_STRING_1);
buf[ len -2 ] = 0; /* Flex requires two NUL bytes at end of buffer. */
buf[ len -1 ] =0;
- state = yy_scan_buffer( buf, len );
- yylex();
- yy_delete_buffer(state);
+ state = test_scan_buffer( buf, len );
+ testlex();
+ test_delete_buffer(state);
printf("TEST RETURNING OK.\n");
return 0;
diff --git a/tests/string_r.l b/tests/string_r.l
index 633004a..174eb6c 100644
--- a/tests/string_r.l
+++ b/tests/string_r.l
@@ -59,44 +59,44 @@
int main(void);
int
-main ()
+main (void)
{
char * buf;
- int len;
+ size_t len;
YY_BUFFER_STATE state;
yyscan_t scanner=NULL;
/* Scan a good string. */
- printf("Testing: yy_scan_string(%s): ",INPUT_STRING_1); fflush(stdout);
- yylex_init(&scanner);
- state = yy_scan_string ( INPUT_STRING_1 ,scanner);
- yylex(scanner);
- yy_delete_buffer(state, scanner);
- yylex_destroy(scanner);
+ printf("Testing: test_scan_string(%s): ",INPUT_STRING_1); fflush(stdout);
+ testlex_init(&scanner);
+ state = test_scan_string ( INPUT_STRING_1 ,scanner);
+ testlex(scanner);
+ test_delete_buffer(state, scanner);
+ testlex_destroy(scanner);
/* Scan only the first 12 chars of a string. */
- printf("Testing: yy_scan_bytes(%s): ",INPUT_STRING_2); fflush(stdout);
- yylex_init(&scanner);
- state = yy_scan_bytes ( INPUT_STRING_2, 12 ,scanner);
- yylex(scanner);
- yy_delete_buffer(state,scanner);
- yylex_destroy(scanner);
+ printf("Testing: test_scan_bytes(%s): ",INPUT_STRING_2); fflush(stdout);
+ testlex_init(&scanner);
+ state = test_scan_bytes ( INPUT_STRING_2, 12 ,scanner);
+ testlex(scanner);
+ test_delete_buffer(state,scanner);
+ testlex_destroy(scanner);
/* Scan directly from a buffer.
We make a copy, since the buffer will be modified by flex.*/
- printf("Testing: yy_scan_buffer(%s): ",INPUT_STRING_1); fflush(stdout);
+ printf("Testing: test_scan_buffer(%s): ",INPUT_STRING_1); fflush(stdout);
len = strlen(INPUT_STRING_1) + 2;
buf = malloc(len);
strcpy( buf, INPUT_STRING_1);
buf[ len -2 ] = 0; /* Flex requires two NUL bytes at end of buffer. */
buf[ len -1 ] =0;
- yylex_init(&scanner);
- state = yy_scan_buffer( buf, len ,scanner);
- yylex(scanner);
- yy_delete_buffer(state,scanner);
- yylex_destroy(scanner);
+ testlex_init(&scanner);
+ state = test_scan_buffer( buf, len ,scanner);
+ testlex(scanner);
+ test_delete_buffer(state,scanner);
+ testlex_destroy(scanner);
printf("TEST RETURNING OK.\n");
return 0;
diff --git a/tests/tableopts.am b/tests/tableopts.am
index bbb20d0..099870b 100644
--- a/tests/tableopts.am
+++ b/tests/tableopts.am
@@ -1,332 +1,332 @@
tableopts_opt_nr_Ca_opt_SOURCES = tableopts.l4
tableopts_opt_nr-Ca.opt$(EXEEXT): tableopts_opt_nr-Ca.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_nr_Ce_opt_SOURCES = tableopts.l4
tableopts_opt_nr-Ce.opt$(EXEEXT): tableopts_opt_nr-Ce.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_nr_Cf_opt_SOURCES = tableopts.l4
tableopts_opt_nr-Cf.opt$(EXEEXT): tableopts_opt_nr-Cf.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_nr_CF_opt_SOURCES = tableopts.l4
tableopts_opt_nr-CF.opt$(EXEEXT): tableopts_opt_nr-CF.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_nr_Cm_opt_SOURCES = tableopts.l4
tableopts_opt_nr-Cm.opt$(EXEEXT): tableopts_opt_nr-Cm.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_nr_Cem_opt_SOURCES = tableopts.l4
tableopts_opt_nr-Cem.opt$(EXEEXT): tableopts_opt_nr-Cem.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_nr_Cae_opt_SOURCES = tableopts.l4
tableopts_opt_nr-Cae.opt$(EXEEXT): tableopts_opt_nr-Cae.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_nr_Caef_opt_SOURCES = tableopts.l4
tableopts_opt_nr-Caef.opt$(EXEEXT): tableopts_opt_nr-Caef.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_nr_CaeF_opt_SOURCES = tableopts.l4
tableopts_opt_nr-CaeF.opt$(EXEEXT): tableopts_opt_nr-CaeF.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_nr_Cam_opt_SOURCES = tableopts.l4
tableopts_opt_nr-Cam.opt$(EXEEXT): tableopts_opt_nr-Cam.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_nr_Caem_opt_SOURCES = tableopts.l4
tableopts_opt_nr-Caem.opt$(EXEEXT): tableopts_opt_nr-Caem.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_r_Ca_opt_SOURCES = tableopts.l4
tableopts_opt_r-Ca.opt$(EXEEXT): tableopts_opt_r-Ca.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_r_Ce_opt_SOURCES = tableopts.l4
tableopts_opt_r-Ce.opt$(EXEEXT): tableopts_opt_r-Ce.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_r_Cf_opt_SOURCES = tableopts.l4
tableopts_opt_r-Cf.opt$(EXEEXT): tableopts_opt_r-Cf.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_r_CF_opt_SOURCES = tableopts.l4
tableopts_opt_r-CF.opt$(EXEEXT): tableopts_opt_r-CF.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_r_Cm_opt_SOURCES = tableopts.l4
tableopts_opt_r-Cm.opt$(EXEEXT): tableopts_opt_r-Cm.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_r_Cem_opt_SOURCES = tableopts.l4
tableopts_opt_r-Cem.opt$(EXEEXT): tableopts_opt_r-Cem.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_r_Cae_opt_SOURCES = tableopts.l4
tableopts_opt_r-Cae.opt$(EXEEXT): tableopts_opt_r-Cae.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_r_Caef_opt_SOURCES = tableopts.l4
tableopts_opt_r-Caef.opt$(EXEEXT): tableopts_opt_r-Caef.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_r_CaeF_opt_SOURCES = tableopts.l4
tableopts_opt_r-CaeF.opt$(EXEEXT): tableopts_opt_r-CaeF.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_r_Cam_opt_SOURCES = tableopts.l4
tableopts_opt_r-Cam.opt$(EXEEXT): tableopts_opt_r-Cam.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_opt_r_Caem_opt_SOURCES = tableopts.l4
tableopts_opt_r-Caem.opt$(EXEEXT): tableopts_opt_r-Caem.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_nr_Ca_ser_SOURCES = tableopts.l4
tableopts_ser_nr-Ca.ser$(EXEEXT): tableopts_ser_nr-Ca.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_nr_Ce_ser_SOURCES = tableopts.l4
tableopts_ser_nr-Ce.ser$(EXEEXT): tableopts_ser_nr-Ce.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_nr_Cf_ser_SOURCES = tableopts.l4
tableopts_ser_nr-Cf.ser$(EXEEXT): tableopts_ser_nr-Cf.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_nr_CF_ser_SOURCES = tableopts.l4
tableopts_ser_nr-CF.ser$(EXEEXT): tableopts_ser_nr-CF.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_nr_Cm_ser_SOURCES = tableopts.l4
tableopts_ser_nr-Cm.ser$(EXEEXT): tableopts_ser_nr-Cm.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_nr_Cem_ser_SOURCES = tableopts.l4
tableopts_ser_nr-Cem.ser$(EXEEXT): tableopts_ser_nr-Cem.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_nr_Cae_ser_SOURCES = tableopts.l4
tableopts_ser_nr-Cae.ser$(EXEEXT): tableopts_ser_nr-Cae.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_nr_Caef_ser_SOURCES = tableopts.l4
tableopts_ser_nr-Caef.ser$(EXEEXT): tableopts_ser_nr-Caef.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_nr_CaeF_ser_SOURCES = tableopts.l4
tableopts_ser_nr-CaeF.ser$(EXEEXT): tableopts_ser_nr-CaeF.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_nr_Cam_ser_SOURCES = tableopts.l4
tableopts_ser_nr-Cam.ser$(EXEEXT): tableopts_ser_nr-Cam.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_nr_Caem_ser_SOURCES = tableopts.l4
tableopts_ser_nr-Caem.ser$(EXEEXT): tableopts_ser_nr-Caem.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_r_Ca_ser_SOURCES = tableopts.l4
tableopts_ser_r-Ca.ser$(EXEEXT): tableopts_ser_r-Ca.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_r_Ce_ser_SOURCES = tableopts.l4
tableopts_ser_r-Ce.ser$(EXEEXT): tableopts_ser_r-Ce.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_r_Cf_ser_SOURCES = tableopts.l4
tableopts_ser_r-Cf.ser$(EXEEXT): tableopts_ser_r-Cf.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_r_CF_ser_SOURCES = tableopts.l4
tableopts_ser_r-CF.ser$(EXEEXT): tableopts_ser_r-CF.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_r_Cm_ser_SOURCES = tableopts.l4
tableopts_ser_r-Cm.ser$(EXEEXT): tableopts_ser_r-Cm.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_r_Cem_ser_SOURCES = tableopts.l4
tableopts_ser_r-Cem.ser$(EXEEXT): tableopts_ser_r-Cem.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_r_Cae_ser_SOURCES = tableopts.l4
tableopts_ser_r-Cae.ser$(EXEEXT): tableopts_ser_r-Cae.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_r_Caef_ser_SOURCES = tableopts.l4
tableopts_ser_r-Caef.ser$(EXEEXT): tableopts_ser_r-Caef.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_r_CaeF_ser_SOURCES = tableopts.l4
tableopts_ser_r-CaeF.ser$(EXEEXT): tableopts_ser_r-CaeF.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_r_Cam_ser_SOURCES = tableopts.l4
tableopts_ser_r-Cam.ser$(EXEEXT): tableopts_ser_r-Cam.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ser_r_Caem_ser_SOURCES = tableopts.l4
tableopts_ser_r-Caem.ser$(EXEEXT): tableopts_ser_r-Caem.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_nr_Ca_ver_SOURCES = tableopts.l4
tableopts_ver_nr-Ca.ver$(EXEEXT): tableopts_ver_nr-Ca.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_nr_Ce_ver_SOURCES = tableopts.l4
tableopts_ver_nr-Ce.ver$(EXEEXT): tableopts_ver_nr-Ce.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_nr_Cf_ver_SOURCES = tableopts.l4
tableopts_ver_nr-Cf.ver$(EXEEXT): tableopts_ver_nr-Cf.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_nr_CF_ver_SOURCES = tableopts.l4
tableopts_ver_nr-CF.ver$(EXEEXT): tableopts_ver_nr-CF.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_nr_Cm_ver_SOURCES = tableopts.l4
tableopts_ver_nr-Cm.ver$(EXEEXT): tableopts_ver_nr-Cm.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_nr_Cem_ver_SOURCES = tableopts.l4
tableopts_ver_nr-Cem.ver$(EXEEXT): tableopts_ver_nr-Cem.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_nr_Cae_ver_SOURCES = tableopts.l4
tableopts_ver_nr-Cae.ver$(EXEEXT): tableopts_ver_nr-Cae.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_nr_Caef_ver_SOURCES = tableopts.l4
tableopts_ver_nr-Caef.ver$(EXEEXT): tableopts_ver_nr-Caef.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_nr_CaeF_ver_SOURCES = tableopts.l4
tableopts_ver_nr-CaeF.ver$(EXEEXT): tableopts_ver_nr-CaeF.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_nr_Cam_ver_SOURCES = tableopts.l4
tableopts_ver_nr-Cam.ver$(EXEEXT): tableopts_ver_nr-Cam.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_nr_Caem_ver_SOURCES = tableopts.l4
tableopts_ver_nr-Caem.ver$(EXEEXT): tableopts_ver_nr-Caem.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_r_Ca_ver_SOURCES = tableopts.l4
tableopts_ver_r-Ca.ver$(EXEEXT): tableopts_ver_r-Ca.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_r_Ce_ver_SOURCES = tableopts.l4
tableopts_ver_r-Ce.ver$(EXEEXT): tableopts_ver_r-Ce.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_r_Cf_ver_SOURCES = tableopts.l4
tableopts_ver_r-Cf.ver$(EXEEXT): tableopts_ver_r-Cf.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_r_CF_ver_SOURCES = tableopts.l4
tableopts_ver_r-CF.ver$(EXEEXT): tableopts_ver_r-CF.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_r_Cm_ver_SOURCES = tableopts.l4
tableopts_ver_r-Cm.ver$(EXEEXT): tableopts_ver_r-Cm.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_r_Cem_ver_SOURCES = tableopts.l4
tableopts_ver_r-Cem.ver$(EXEEXT): tableopts_ver_r-Cem.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_r_Cae_ver_SOURCES = tableopts.l4
tableopts_ver_r-Cae.ver$(EXEEXT): tableopts_ver_r-Cae.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_r_Caef_ver_SOURCES = tableopts.l4
tableopts_ver_r-Caef.ver$(EXEEXT): tableopts_ver_r-Caef.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_r_CaeF_ver_SOURCES = tableopts.l4
tableopts_ver_r-CaeF.ver$(EXEEXT): tableopts_ver_r-CaeF.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_r_Cam_ver_SOURCES = tableopts.l4
tableopts_ver_r-Cam.ver$(EXEEXT): tableopts_ver_r-Cam.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
tableopts_ver_r_Caem_ver_SOURCES = tableopts.l4
tableopts_ver_r-Caem.ver$(EXEEXT): tableopts_ver_r-Caem.$(OBJEXT)
- $(LINK) -o $@ $<
+ $(AM_V_CCLD)$(LINK) -o $@ $<
TABLEOPTS_TESTS = tableopts_opt_nr-Ca.opt tableopts_opt_nr-Ce.opt tableopts_opt_nr-Cf.opt tableopts_opt_nr-CF.opt tableopts_opt_nr-Cm.opt tableopts_opt_nr-Cem.opt tableopts_opt_nr-Cae.opt tableopts_opt_nr-Caef.opt tableopts_opt_nr-CaeF.opt tableopts_opt_nr-Cam.opt tableopts_opt_nr-Caem.opt tableopts_opt_r-Ca.opt tableopts_opt_r-Ce.opt tableopts_opt_r-Cf.opt tableopts_opt_r-CF.opt tableopts_opt_r-Cm.opt tableopts_opt_r-Cem.opt tableopts_opt_r-Cae.opt tableopts_opt_r-Caef.opt tableopts_opt_r-CaeF.opt tableopts_opt_r-Cam.opt tableopts_opt_r-Caem.opt tableopts_ser_nr-Ca.ser tableopts_ser_nr-Ce.ser tableopts_ser_nr-Cf.ser tableopts_ser_nr-CF.ser tableopts_ser_nr-Cm.ser tableopts_ser_nr-Cem.ser tableopts_ser_nr-Cae.ser tableopts_ser_nr-Caef.ser tableopts_ser_nr-CaeF.ser tableopts_ser_nr-Cam.ser tableopts_ser_nr-Caem.ser tableopts_ser_r-Ca.ser tableopts_ser_r-Ce.ser tableopts_ser_r-Cf.ser tableopts_ser_r-CF.ser tableopts_ser_r-Cm.ser tableopts_ser_r-Cem.ser tableopts_ser_r-Cae.ser tableopts_ser_r-Caef.ser tableopts_ser_r-CaeF.ser tableopts_ser_r-Cam.ser tableopts_ser_r-Caem.ser tableopts_ver_nr-Ca.ver tableopts_ver_nr-Ce.ver tableopts_ver_nr-Cf.ver tableopts_ver_nr-CF.ver tableopts_ver_nr-Cm.ver tableopts_ver_nr-Cem.ver tableopts_ver_nr-Cae.ver tableopts_ver_nr-Caef.ver tableopts_ver_nr-CaeF.ver tableopts_ver_nr-Cam.ver tableopts_ver_nr-Caem.ver tableopts_ver_r-Ca.ver tableopts_ver_r-Ce.ver tableopts_ver_r-Cf.ver tableopts_ver_r-CF.ver tableopts_ver_r-Cm.ver tableopts_ver_r-Cem.ver tableopts_ver_r-Cae.ver tableopts_ver_r-Caef.ver tableopts_ver_r-CaeF.ver tableopts_ver_r-Cam.ver tableopts_ver_r-Caem.ver
diff --git a/tests/tableopts.sh b/tests/tableopts.sh
index 63a36d3..c1ac19e 100755
--- a/tests/tableopts.sh
+++ b/tests/tableopts.sh
@@ -1,12 +1,15 @@
-#!/bin/bash
-set -euo pipefail
-IFS=$'\n\t'
+#!/bin/sh
+set -eu
+# IFS=$'\n\t'
+IFS='
+'' '
# This script is present to generate the automake _SOURCES variables
# for the tableopts_* tests. It also generates the linking rules for
# each test since automake isn't able to handle the pattern rules that
# would be natural to use. Output is written to standard output for
-# inclusion in a Makefile.am, typically by redirecting the output and then an automake include directive.
+# inclusion in a Makefile.am, typically by redirecting the output and
+# then an automake include directive.
TABLEOPTS_TESTS=""
tableopts_tables=""
@@ -17,12 +20,12 @@ for kind in opt ser ver ; do
testname=tableopts_${kind}_${threading}${opt}.${kind}
if [ "${TABLEOPTS_TESTS}" = "" ] ;then
TABLEOPTS_TESTS=${testname}
- if [ "$kind" = "ser" -o "$kind" = "ver" ] ; then
+ if [ "$kind" = "ser" ] || [ "$kind" = "ver" ] ; then
tableopts_tables=${testname}.tables
fi
else
TABLEOPTS_TESTS="${TABLEOPTS_TESTS} ${testname}"
- if [ "$kind" = "ser" -o "$kind" = "ver" ] ; then
+ if [ "$kind" = "ser" ] || [ "$kind" = "ver" ] ; then
tableopts_tables="${tableopts_tables} ${testname}.tables"
fi
fi
@@ -32,7 +35,7 @@ for kind in opt ser ver ; do
tableopts_${kind}_${threading}_${bare_opt}_${kind}_SOURCES = tableopts.l4
${testname}\$(EXEEXT): tableopts_${kind}_${threading}${opt}.\$(OBJEXT)
- \$(LINK) -o \$@ \$<
+ \$(AM_V_CCLD)\$(LINK) -o \$@ \$<
EOF
done
diff --git a/tests/testwrapper-direct.sh b/tests/testwrapper-direct.sh
new file mode 100755
index 0000000..589ad33
--- /dev/null
+++ b/tests/testwrapper-direct.sh
@@ -0,0 +1,20 @@
+#!/bin/sh
+set -vx
+set -euvx
+
+# testwrapper-direct.sh: run some specialized flex tests that care where
+# they're run from.
+
+while getopts :b:s: OPTION ; do
+ case $OPTION in
+ b) BINARY_DIR=$OPTARG ;;
+ s) SOURCE_DIR=$OPTARG ;;
+ esac
+ done
+
+shift $(($OPTIND-1))
+TESTNAME=$1
+
+INPUT_NAME=`basename "${TESTNAME%.exe}"`.txt
+
+cd ${SOURCE_DIR} && ${BINARY_DIR}/${TESTNAME} ${INPUT_NAME}
diff --git a/tests/testwrapper.sh b/tests/testwrapper.sh
index 051e20b..6a7e666 100755
--- a/tests/testwrapper.sh
+++ b/tests/testwrapper.sh
@@ -1,9 +1,11 @@
-#!/bin/bash -vx
-set -euo pipefail
+#!/bin/sh
+set -vx
+set -euvx
# testwrapper.sh: run a flex test, typically called by a Makefile
-# Each test will exercise some feature or aspect of flex. Run the test with any input it may need.
+# Each test will exercise some feature or aspect of flex. Run the test with any
+# input it may need.
INPUT_DIRECTORY=""
INPUT_NAME=""
@@ -15,7 +17,7 @@ while getopts :d:i:rt1 OPTION ; do
case $OPTION in
d) INPUT_DIRECTORY=$OPTARG ;;
i)
- if [ "$INPUT_NAME" == "" ] ; then
+ if [ "$INPUT_NAME" = "" ] ; then
INPUT_NAME="$OPTARG"
else
INPUT_NAME="$INPUT_NAME $OPTARG"
@@ -26,27 +28,30 @@ while getopts :d:i:rt1 OPTION ; do
t) USE_TABLES=1 ;;
1) DO_COMPARISON=1 ;;
esac
- done
+done
-TESTNAME="${!OPTIND}"
+shift $(($OPTIND-1))
+TESTNAME=$1
-INPUT_NAME=${INPUT_NAME:-$INPUT_DIRECTORY/`basename $TESTNAME`.txt}
+INPUT_NAME=${INPUT_NAME:-$INPUT_DIRECTORY/`basename "${TESTNAME%.exe}"`.txt}
-if [ "$DO_COMPARISON" -eq "1" ] ; then
- test `$TESTNAME 1 < $INPUT_NAME` -eq `$TESTNAME < $INPUT_NAME`
+if [ $DO_COMPARISON = 1 ] ; then
+ TEST_OUTPUT=`$TESTNAME < $INPUT_NAME`
+ REF_OUTPUT=`$TESTNAME 1 < $INPUT_NAME`
+ test "$TEST_OUTPUT" -eq "$REF_OUTPUT"
exit $?
- fi
+fi
if [ $INPUT_COUNT -gt 1 ] ; then
- $TESTNAME ${USE_TABLES:+${INPUT_DIRECTORY}/${TESTNAME}.tables} ${INPUT_NAME}
+ $TESTNAME ${USE_TABLES:+${INPUT_DIRECTORY}/${TESTNAME%.exe}.tables} ${INPUT_NAME}
exit $?
- fi
+fi
if [ -f ${INPUT_NAME} ] ; then
- if [ $USE_REDIRECT == 1 ] ; then
- $TESTNAME ${USE_TABLES:+${INPUT_DIRECTORY}/${TESTNAME}.tables} < $INPUT_NAME
+ if [ $USE_REDIRECT = 1 ] ; then
+ $TESTNAME ${USE_TABLES:+${INPUT_DIRECTORY}/${TESTNAME%.exe}.tables} < $INPUT_NAME
else
- $TESTNAME ${USE_TABLES:+${INPUT_DIRECTORY}/${TESTNAME}.tables} $INPUT_NAME
+ $TESTNAME ${USE_TABLES:+${INPUT_DIRECTORY}/${TESTNAME%.exe}.tables} $INPUT_NAME
fi
else
$TESTNAME
diff --git a/tests/yyextra.l b/tests/yyextra.l
index 8957cbb..bf2a6eb 100644
--- a/tests/yyextra.l
+++ b/tests/yyextra.l
@@ -62,7 +62,7 @@ static void append_char (char c, yyscan_t scanner );
int main(void);
int
-main ()
+main (void)
{
yyscan_t scanner;
struct Buffer * buf;
@@ -72,7 +72,7 @@ main ()
buf->curr_len =0;
buf->max_len = 4;
buf->grow_len = 100;
- buf->data = malloc(buf->max_len);
+ buf->data = malloc((size_t) buf->max_len);
testlex_init(&scanner);
testset_in( stdin, scanner);
@@ -103,7 +103,7 @@ static void append_char (char c, yyscan_t scanner )
new_buf = malloc(sizeof(struct Buffer));
new_buf->max_len = buf->max_len + buf->grow_len;
new_buf->grow_len = buf->grow_len;
- new_buf->data = malloc(new_buf->max_len);
+ new_buf->data = malloc((size_t) new_buf->max_len);
for( new_buf->curr_len = 0;
new_buf->curr_len < buf->curr_len;
new_buf->curr_len++ )