21 Commits
Author SHA1 Message Date
Will Estes 83d5d1695a Declared version 2.6.0 2015-11-17 11:16:43 -05:00
Will Estes d34b6160af Dated, described flex release 2.6.0 2015-11-17 11:14:05 -05:00
Will Estes 5263986825 Declared version 2.6.0rc1 2015-11-13 14:56:25 -05:00
lukeallardyce 54201ab377 Supplied versioning information in flex libraries.
Resolves sourceforge bug #182. On OSX, and possibly other platforms, building the libfl libraries without versioning information caused a build failures.
2015-11-13 14:48:19 -05:00
Will Estes 0be145eea8 Cleaned up more precisely after make check.
BUILT_SOURCES is now just the list of headers built as per the
automake manual. We provide the list of files to clean to make
rebuilding the test suite programs easier. We then use the CLEANFILES
list in a dist-hook to clean up the distribution that automake gathers
since not distributing flex generated files is foreign to automake's
mindset, but we need exactly that.

Additionally, we locate inputs to the tables-related tests more
precisely. Some files are in srcdir and some are in builddir, which
the arguments to the log compiler are now made aware of.
2015-11-12 21:44:07 -05:00
Will Estes 4864c4f23a Pulled out scripts in tests/Makefile.am 2015-11-11 19:08:26 -05:00
Will Estes 83006c65f8 Added srcdir to tableopts.am include 2015-11-11 18:22:17 -05:00
Will Estes b54685ff22 Changed man page dependencies.
The man page is just the --help output as reformatted by help2man. The
--help option is most likely to change when the flex skeleton changes
or one of the option parsing files changes or the configure.ac script
itself changes. The dependencies reflect this now.

It is still necessary, under some circumstances, to rebuild flex
explicitly before building the man page. In theory, it's possible to
have automake arrange to do this all the time, but doing so works out
to be fragile, given the rest of the build system.
2015-11-11 15:20:56 -05:00
Will Estes 589bb43094 Called libtoolize directly because autoreconf fails to pick up LT_INIT properly 2015-11-10 17:26:39 -05:00
Will Estes b382a56bf3 Added tableopts.sh to EXTRA_DIST 2015-11-10 17:24:28 -05:00
Mightyjo 461f987f09 Made tests depend on the built flex binary. 2015-11-10 14:28:17 -05:00
Mightyjo a6ceb756d9 Merge branch 'master' into streamrefs 2015-11-08 15:43:09 -08:00
Mightyjo cf6cb4dce7 Cleaned more generated sources.
Added skel.c explicitly to MAINTAINERCLEANFILES in src/Makefile.am.

Added a bunch of files to built_SOURCES in tests/Makefile.am so that the
suite is easier to clean up.
2015-11-08 14:59:29 -05:00
Mightyjo 1f4c0e67fe Updated documentation to reflect the revisions to FlexLexer.h 2015-11-07 23:28:09 -08:00
Mightyjo 336a1deaa5 Changed several pointers to istream (and ostream) to references in c++-only sections of the skeleton.
Patched up a variety of expected errors caused by changing istream* to istream&.

Added a stray 'make' at line 545.  Oops.

Changed the buffer_state struct to store std::streambuf* instead of std::istream* for C++ mode.  Changed interfaces in FlexLexer.h to take std::istream& instead of *.  Backward compatibility temporarily broken.

Patched up backward compatibility with reasonable behavior in the presence of null pointers.

Re-added backward-compatible versions of the yyFlexLexer methods that take iostream pointers.  All tests passing.
2015-11-07 23:25:24 -08:00
Translation Project 5acd407ed4 new zh_CN translation from the translation project 2015-09-29 15:53:33 -04:00
Jaska Uimonen b4b8b7ed81 fix possible resource leak with yynultrans_tbl 2015-08-06 09:28:21 -04:00
Jaska Uimonen 5f23fc0033 fix possible uninitialized array values 2015-08-06 09:27:30 -04:00
Will Estes 4f2ae90b28 add %{...%} block to example in manual 2015-08-05 15:27:37 -04:00
Will Estes b6fa146a0f initialize libtool earlier in build system generation 2015-07-15 15:20:11 -04:00
Translation Project 341bfbd389 new da translation from the Translation Project 2015-05-08 15:15:56 -04:00
13 changed files with 970 additions and 519 deletions
+35 -1
View File
@@ -3,7 +3,41 @@ changes between releases of flex.
See the file COPYING for copying conditions.
* version 2.6.0-pre
* version 2.6.0 released 2015-11-17
** User Visible Changes
*** C++ scanners now use references instead of pointers. See the manual for details.
*** A number of compiler warnings were addressed, so flex generated scanners should be quieter under compiler warning scenarios.
*** Allow error reporting routines to accept varying number of arguments
*** Removed deprecated 'register' storage class specifier
*** Changeed output formats from octal to hexadecimal
*** check limits before using array index cclp; resolves sf-166
*** Suppress clang warning about empty @param paragraph; resolves sf#158
*** Fixed malloc/realloc replacement, resolves sf bug#151.
*** Adjusted buffer sizes on ia64.
*** various documentation and code clean up fixes: resolves sf bugs #167, #168, among other patches.
** Flex Internals
*** flex is now organized into subdirectories. This keeps the tree neater at the top level and puts like things near each other and unlike things away from each other.
*** The test suite has been reorganized and is now run with the parallel test suite harness from automake.
*** Cleaned up the automake parts of the build system to better reflect what automake does on its own. Also added a call to libtoolize in autogen.sh because autoreconf gets confused without a prior run of libtoolize.
*** po/Makefile now includes a rule to fetch the latest translations from the translation project. "make -f po/Makefile getpo" from the top level of the flex tree will fetch the files.
*** New da translation from the translation project
* flex version 2.5.39 released 2014-03-26
+2 -1
View File
@@ -29,4 +29,5 @@
#Makefile first.)
touch ChangeLog
autoreconf --install --verbose --force
libtoolize --install --force
autoreconf --install --force
+2 -2
View File
@@ -24,15 +24,15 @@
# autoconf requirements and initialization
AC_INIT([the fast lexical analyser generator], [2.6.0-pre],
AC_INIT([the fast lexical analyser generator], [2.6.0],
[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-bzip2 dist-xz parallel-tests 1.14.1])
AC_CONFIG_HEADER([src/config.h])
AC_CONFIG_LIBOBJ_DIR([lib])
AC_CONFIG_MACRO_DIR([m4])
LT_INIT
SHARED_VERSION_INFO="2:0:0"
AC_SUBST(SHARED_VERSION_INFO)
+1 -1
View File
@@ -23,7 +23,7 @@ CLEANFILES = \
flex.vr \
flex.vrs
$(dist_man_MANS): $(top_srcdir)/src/main.c
$(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/'` \
+16 -7
View File
@@ -3764,8 +3764,7 @@ defaults to generating the scanner to the file @file{lex.yy.cc} instead
of @file{lex.yy.c}. The generated scanner includes the header file
@file{FlexLexer.h}, which defines the interface to two C++ classes.
The first class,
@code{FlexLexer},
The first class in @file{FlexLexer.h}, @code{FlexLexer},
provides an abstract base class defining the general scanner class
interface. It provides the following member functions:
@@ -3799,10 +3798,10 @@ returns the current setting of the debugging flag.
Also provided are member functions equivalent to
@code{yy_switch_to_buffer()}, @code{yy_create_buffer()} (though the
first argument is an @code{istream*} object pointer and not a
first argument is an @code{istream&} object reference and not a
@code{FILE*)}, @code{yy_flush_buffer()}, @code{yy_delete_buffer()}, and
@code{yyrestart()} (again, the first argument is a @code{istream*}
object pointer).
@code{yyrestart()} (again, the first argument is a @code{istream&}
object reference).
@tindex yyFlexLexer (C++ only)
@tindex FlexLexer (C++ only)
@@ -3813,9 +3812,12 @@ additional member functions:
@table @code
@findex yyFlexLexer constructor (C++ only)
@item yyFlexLexer( istream* arg_yyin = 0, ostream* arg_yyout = 0 )
@item yyFlexLexer( istream& arg_yyin, ostream& arg_yyout )
constructs a @code{yyFlexLexer} object using the given streams for input
and output. If not specified, the streams default to @code{cin} and
@code{cout}, respectively.
@code{cout}, respectively. @code{yyFlexLexer} does not take ownership of
its stream arguments. It's up to the user to ensure the streams pointed
to remain alive at least as long as the @code{yyFlexLexer} instance.
@findex yylex (C++ version)
@item virtual int yylex()
@@ -3832,11 +3834,13 @@ instead of @code{yyFlexLexer}. In this case, rather than generating
@findex switch_streams (C++ only)
@item virtual void switch_streams(istream* new_in = 0, ostream* new_out = 0)
@item virtual void switch_streams(istream& new_in, ostream& new_out)
reassigns @code{yyin} to @code{new_in} (if non-null) and @code{yyout} to
@code{new_out} (if non-null), deleting the previous input buffer if
@code{yyin} is reassigned.
@item int yylex( istream* new_in, ostream* new_out = 0 )
@item int yylex( istream& new_in, ostream& new_out )
first switches the input streams via @code{switch_streams( new_in,
new_out )} and then returns the value of @code{yylex()}.
@end table
@@ -3893,7 +3897,7 @@ Here is an example of a simple C++ scanner:
int mylineno = 0;
%}
%option noyywrap
%option noyywrap c++
string \"[^\n"]+\"
@@ -3938,6 +3942,9 @@ Here is an example of a simple C++ scanner:
%%
// This include is required if main() is an another source file.
//#include <FlexLexer.h>
int main( int /* argc */, char** /* argv */ )
{
FlexLexer* lexer = new yyFlexLexer;
@@ -4910,8 +4917,10 @@ custom allocator through @code{yyextra}.
%option reentrant
/* Initialize the allocator. */
%{
#define YY_EXTRA_TYPE struct allocator*
#define YY_USER_INIT yyextra = allocator_create();
%}
%%
.|\n ;
+139 -101
View File
@@ -2,20 +2,37 @@
# 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.
# Keld Simonsen <keld@keldix.com>, 2000-2011, 2015.
#
msgid ""
msgstr ""
"Project-Id-Version: flex-2.5.35\n"
"Project-Id-Version: flex-2.5.38\n"
"Report-Msgid-Bugs-To: flex-devel@lists.sourceforge.net\n"
"POT-Creation-Date: 2008-02-26 16:34-0500\n"
"PO-Revision-Date: 2011-01-11 09:12+0100\n"
"POT-Creation-Date: 2014-02-11 16:15-0500\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"
"Language: da\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO-8859-1\n"
"Content-Transfer-Encoding: 8-bit\n"
#: buf.c:78
msgid "Allocation of buffer to print string failed"
msgstr "Tildeling af buffer til udskrivningsstreng mislykkedes"
#: buf.c:100
msgid "Allocation of buffer for line directive failed"
msgstr "Tildeling af buffer til linjedirektiv mislykkedes"
#: buf.c:177
msgid "Allocation of buffer for m4 def failed"
msgstr "Tildeling af buffer til m4 def mislykkedes"
#: buf.c:197
msgid "Allocation of buffer for m4 undef failed"
msgstr "Tildeling af buffer til m4 undef mislykkedes"
#: dfa.c:61
#, c-format
msgid "State #%d is non-accepting -\n"
@@ -75,7 +92,7 @@ msgstr "tilstand %d:\n"
msgid "Could not write yynxt_tbl[][]"
msgstr "Kunne ikke skrive yynxt_tbl[][]"
#: dfa.c:1052
#: dfa.c:1049
msgid "bad transition character detected in sympartition()"
msgstr "forkert overgangstegn fundet i sympartition()"
@@ -159,353 +176,357 @@ msgstr "Kunne ikke skrive eoltbl"
msgid "Could not write yynultrans_tbl"
msgstr "Kunne ikke skrive yynultrans_tbl"
#: main.c:189
#: main.c:191
msgid "rule cannot be matched"
msgstr "reglen kan ikke matches"
#: main.c:194
#: main.c:196
msgid "-s option given but default rule can be matched"
msgstr "flaget -s angivet, men standardreglen kan følges"
#: main.c:234
#: main.c:236
msgid "Can't use -+ with -l option"
msgstr "-+ kan ikke bruges sammen med flaget -l"
#: main.c:237
#: main.c:239
msgid "Can't use -f or -F with -l option"
msgstr "-f eller -F kan ikke bruges sammen med -l"
#: main.c:241
#: main.c:243
msgid "Can't use --reentrant or --bison-bridge with -l option"
msgstr "Kan ikke bruge --reentrant eller --bison-bridge sammen med flaget -l"
#: main.c:278
#: main.c:275
msgid "-Cf/-CF and -Cm don't make sense together"
msgstr "-Cf/-CF og -Cm kan ikke bruges sammen"
#: main.c:281
#: main.c:278
msgid "-Cf/-CF and -I are incompatible"
msgstr "-Cf/-CF og -I kan ikke bruges sammen"
#: main.c:285
#: main.c:282
msgid "-Cf/-CF are incompatible with lex-compatibility mode"
msgstr "-Cf/-CF kan ikke bruges i lex-kompatibilitetstilstand"
#: main.c:290
#: main.c:287
msgid "-Cf and -CF are mutually exclusive"
msgstr "-Cf og -CF er gensidigt udelukkende"
#: main.c:294
#: main.c:291
msgid "Can't use -+ with -CF option"
msgstr "-+ kan ikke bruges sammen med flaget -CF"
#: main.c:297
#: main.c:294
#, c-format
msgid "%array incompatible with -+ option"
msgstr "-+ kan ikke bruges sammen med %array"
#: main.c:302
#: main.c:299
msgid "Options -+ and --reentrant are mutually exclusive."
msgstr "Flagene -+ og --reentrant er gensidigt udelukkende."
#: main.c:305
#: main.c:302
msgid "bison bridge not supported for the C++ scanner."
msgstr "bisonbro understøttes ikke for C++-skanneren."
#: main.c:360 main.c:406
#: main.c:357 main.c:403
#, c-format
msgid "could not create %s"
msgstr "kunne ikke oprette %s"
#: main.c:419
#: main.c:416
msgid "could not write tables header"
msgstr "kunne ikke skrive tabellhoved"
#: main.c:423
#: main.c:420
#, c-format
msgid "can't open skeleton file %s"
msgstr "kan ikke åbne skabelonfilen %s"
#: main.c:505
#: main.c:456
msgid "allocation of macro definition failed"
msgstr "tildeling af makro-definition mislykkedes"
#: main.c:504
#, c-format
msgid "input error reading skeleton file %s"
msgstr "fejl ved læsning af skabelonsfilen %s"
#: main.c:509
#: main.c:508
#, c-format
msgid "error closing skeleton file %s"
msgstr "fejl ved lukning af skabelonfilen %s"
#: main.c:694
#: main.c:693
#, c-format
msgid "error creating header file %s"
msgstr "fejl ved oprettelsen af headerfilen %s"
#: main.c:702
#: main.c:701
#, c-format
msgid "error writing output file %s"
msgstr "fejl ved skrivning af udfilen %s"
#: main.c:706
#: main.c:705
#, c-format
msgid "error closing output file %s"
msgstr "fejl ved lukning af udfilen %s"
#: main.c:710
#: main.c:709
#, c-format
msgid "error deleting output file %s"
msgstr "fejl ved sletning af udfilen %s"
#: main.c:717
#: main.c:716
#, c-format
msgid "No backing up.\n"
msgstr "Ingen sikkerhedskopiering.\n"
#: main.c:721
#: main.c:720
#, c-format
msgid "%d backing up (non-accepting) states.\n"
msgstr "%d sikkerhedskopierer (ikke-accepterende) tilstande.\n"
#: main.c:725
#: main.c:724
#, c-format
msgid "Compressed tables always back up.\n"
msgstr "Komprimerete tabeller backer alltid tillbaka.\n"
#: main.c:728
#: main.c:727
#, c-format
msgid "error writing backup file %s"
msgstr "fejl ved skrivning af sikkerhedskopifilen %s"
#: main.c:732
#: main.c:731
#, c-format
msgid "error closing backup file %s"
msgstr "fejl ved lukning af sikerhedskopifilen %s"
#: main.c:737
#: main.c:736
#, c-format
msgid "%s version %s usage statistics:\n"
msgstr "Statistik over brugaf %s version %s:\n"
#: main.c:740
#: main.c:739
#, c-format
msgid " scanner options: -"
msgstr " fortolkningsflag: -"
#: main.c:819
#: main.c:818
#, c-format
msgid " %d/%d NFA states\n"
msgstr " %d/%d NFA-tilstand\n"
#: main.c:821
#: main.c:820
#, c-format
msgid " %d/%d DFA states (%d words)\n"
msgstr " %d/%d DFA-tilstand (%d ord)\n"
#: main.c:823
#: main.c:822
#, c-format
msgid " %d rules\n"
msgstr " %d regler\n"
#: main.c:828
#: main.c:827
#, c-format
msgid " No backing up\n"
msgstr " Ingen sikkerhedskopiering\n"
#: main.c:832
#: main.c:831
#, c-format
msgid " %d backing-up (non-accepting) states\n"
msgstr " %d sikkerhedskopierer (ikke-accepterende) tilstande.\n"
#: main.c:837
#: main.c:836
#, c-format
msgid " Compressed tables always back-up\n"
msgstr " Komprimerede tabeller bakker altid tilbake\n"
#: main.c:841
#: main.c:840
#, c-format
msgid " Beginning-of-line patterns used\n"
msgstr " Begyndelse-af-linje-mønster brugt\n"
#: main.c:843
#: main.c:842
#, c-format
msgid " %d/%d start conditions\n"
msgstr " %d/%d startbetingelse\n"
#: main.c:847
#: main.c:846
#, c-format
msgid " %d epsilon states, %d double epsilon states\n"
msgstr " %d epsilontilstande, %d dobbelte epsilontilstande\n"
#: main.c:851
#: main.c:850
#, c-format
msgid " no character classes\n"
msgstr " ingen tegnklasser\n"
#: main.c:855
#: main.c:854
#, 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"
#: main.c:860
#: main.c:859
#, c-format
msgid " %d state/nextstate pairs created\n"
msgstr " %d par med tilstand/næste-tilstand oprettede\n"
#: main.c:863
#: main.c:862
#, c-format
msgid " %d/%d unique/duplicate transitions\n"
msgstr " %d/%d unikke/duplikerede overgange\n"
#: main.c:868
#: main.c:867
#, c-format
msgid " %d table entries\n"
msgstr " %d tabelposter\n"
#: main.c:876
#: main.c:875
#, c-format
msgid " %d/%d base-def entries created\n"
msgstr " %d/%d base/standard-poster oprettede\n"
#: main.c:880
#: main.c:879
#, c-format
msgid " %d/%d (peak %d) nxt-chk entries created\n"
msgstr " %d/%d (max %d) næste/test-poster oprettede\n"
#: main.c:884
#: main.c:883
#, 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"
#: main.c:888
#: main.c:887
#, c-format
msgid " %d empty table entries\n"
msgstr " %d tomme tabelposter\n"
#: main.c:890
#: main.c:889
#, c-format
msgid " %d protos created\n"
msgstr " %d prototyper oprettede\n"
#: main.c:893
#: main.c:892
#, c-format
msgid " %d templates created, %d uses\n"
msgstr " %d skabloner oprettede, %d formål\n"
#: main.c:901
#: main.c:900
#, c-format
msgid " %d/%d equivalence classes created\n"
msgstr " %d/%d ækvivalensklasser oprettet\n"
#: main.c:909
#: main.c:908
#, c-format
msgid " %d/%d meta-equivalence classes created\n"
msgstr " %d/%d meta-ækvivalensklasser oprettede\n"
#: main.c:915
#: main.c:914
#, c-format
msgid " %d (%d saved) hash collisions, %d DFAs equal\n"
msgstr " %d (%d gemte) hash-kollisioner, %d DFA'er er ens\n"
#: main.c:917
#: main.c:916
#, c-format
msgid " %d sets of reallocations needed\n"
msgstr " %d opsætninger med omallokeringer krævedes\n"
#: main.c:919
#: main.c:918
#, c-format
msgid " %d total table entries needed\n"
msgstr " %d totale tabelposter kræves\n"
#: main.c:996
#: main.c:995
#, c-format
msgid "Internal error. flexopts are malformed.\n"
msgstr "Intern fejl. flexopts er fejlbehæftede.\n"
#: main.c:1006
#: main.c:1005
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr "Prøv '%s --help' for mere information.\n"
#: main.c:1063
#: main.c:1062
#, c-format
msgid "unknown -C option '%c'"
msgstr "ukendt flag til -C '%c'"
#: main.c:1192
#: main.c:1191
#, c-format
msgid "%s %s\n"
msgstr "%s %s\n"
#: main.c:1467
#: main.c:1466
msgid "fatal parse error"
msgstr "uoprettelig fejl ved analysen"
#: main.c:1499
#: main.c:1498
#, c-format
msgid "could not create backing-up info file %s"
msgstr "kunne ikke oprette sikkerhedskopi af info-fil %s"
#: main.c:1520
#: main.c:1519
#, 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"
#: main.c:1523
#: main.c:1522
#, 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"
#: main.c:1529
#: main.c:1528
#, c-format
msgid "%%option yylineno entails a performance penalty ONLY on rules that can match newline characters\n"
msgstr "%%option yylineno medfører et præstationstab KUN på regler der kan matche nylinje-tegn\n"
#: main.c:1536
#: main.c:1535
#, c-format
msgid "-I (interactive) entails a minor performance penalty\n"
msgstr "-I (interaktiv) medfører et mindre præstationstab\n"
#: main.c:1541
#: main.c:1540
#, c-format
msgid "yymore() entails a minor performance penalty\n"
msgstr "yymore() medfører et mindre præstationstab\n"
#: main.c:1547
#: main.c:1546
#, c-format
msgid "REJECT entails a large performance penalty\n"
msgstr "REJECT medfører et væsentligt præstationstab\n"
#: main.c:1552
#: main.c:1551
#, 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"
#: main.c:1564
#: main.c:1563
msgid "REJECT cannot be used with -f or -F"
msgstr "REJECT kan ikke bruges sammen med -f eller -F"
#: main.c:1567
#: main.c:1566
#, c-format
msgid "%option yylineno cannot be used with REJECT"
msgstr "%option yylineno kan ikke bruges sammen med REJECT"
#: main.c:1570
#: main.c:1569
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"
#: main.c:1691
#: main.c:1692
#, c-format
msgid "%option yyclass only meaningful for C++ scanners"
msgstr "%option yyclass er kun meningsfyldt for C++-fortolkere"
#: main.c:1798
#: main.c:1799
#, c-format
msgid "Usage: %s [OPTIONS] [FILE]...\n"
msgstr "Brug: %s [FLAG] [FIL]...\n"
#: main.c:1801
#: main.c:1802
#, c-format
msgid ""
"Generates programs that perform pattern-matching on text.\n"
@@ -630,43 +651,47 @@ msgstr ""
" -h, --help udskriv denne hjælpebesked\n"
" -V, --version udskriv %s version\n"
#: misc.c:100 misc.c:126
#: misc.c:65
msgid "allocation of sko_stack failed"
msgstr "tildeling af sko_stack mislykkedes"
#: misc.c:102 misc.c:128
#, c-format
msgid "name \"%s\" ridiculously long"
msgstr "navnet '%s' er latterligt langt"
#: misc.c:175
#: misc.c:177
msgid "memory allocation failed in allocate_array()"
msgstr "hukommelsestildelingen mislykkedes i allocate_array()"
#: misc.c:250
#: misc.c:230
#, c-format
msgid "bad character '%s' detected in check_char()"
msgstr "forkert tegn '%s' fundet i check_char()"
#: misc.c:255
#: misc.c:235
#, c-format
msgid "scanner requires -8 flag to use the character %s"
msgstr "skanneren kræver flaget -8 for at kunne bruge tegnet %s"
#: misc.c:288
#: misc.c:268
msgid "dynamic memory failure in copy_string()"
msgstr "dynamisk hukommelsesfejl i copy_string()"
#: misc.c:422
#: misc.c:367
#, c-format
msgid "%s: fatal internal error, %s\n"
msgstr "%s: uoprettelig intern fejl, %s\n"
#: misc.c:875
#: misc.c:803
msgid "attempt to increase array size failed"
msgstr "forsøg på at øge arraystørrelse mislykkedes"
#: misc.c:1002
#: misc.c:930
msgid "bad line in skeleton file"
msgstr "forkert linje i skeletfilen"
#: misc.c:1051
#: misc.c:979
msgid "memory allocation failed in yy_flex_xmalloc()"
msgstr "hukommelsestildelingen mislykkedes i yy_flex_xmalloc()"
@@ -700,20 +725,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"
#: nfa.c:353
#: nfa.c:364
msgid "bad state type in mark_beginning_as_normal()"
msgstr "forkert tilstandstype i mark_beginning_as_normal()"
#: nfa.c:598
#: nfa.c:609
#, c-format
msgid "input rules are too complicated (>= %d NFA states)"
msgstr "inddatareglerne er for komplicerede (>= %d NFA-tilstand)"
#: nfa.c:677
#: nfa.c:688
msgid "found too many transitions in mkxtion()"
msgstr "fandt for mange overgange i mkxtion()"
#: nfa.c:703
#: nfa.c:714
#, c-format
msgid "too many rules (> %d)!"
msgstr "for mange regler (> %d)!"
@@ -742,24 +767,24 @@ msgstr "fejlagtige iterationsv
msgid "iteration value must be positive"
msgstr "iterationsværdi skal være positiv"
#: parse.y:806 parse.y:816
#: parse.y:804 parse.y:814
#, 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"
#: parse.y:821
#: parse.y:819
msgid "negative range in character class"
msgstr "negativt interval i tegnklasse"
#: parse.y:918
#: parse.y:916
msgid "[:^lower:] is ambiguous in case insensitive scanner"
msgstr "[:^lower:] er flertydigt i en versalufølsom skanner"
#: parse.y:924
#: parse.y:922
msgid "[:^upper:] ambiguous in case insensitive scanner"
msgstr "[:^upper:] er flertydigt i en versalufølsom skanner"
#: scan.l:75 scan.l:192 scan.l:300 scan.l:443 scan.l:618 scan.l:676
#: scan.l:75 scan.l:618 scan.l:676
msgid "Input line too long\n"
msgstr "For lang inddatalinje\n"
@@ -773,14 +798,27 @@ msgstr "fejlagtigt '%top'-direktiv"
msgid "unrecognized '%' directive"
msgstr "ukendt '%'-direktiv"
#: scan.l:192
msgid "Definition name too long\n"
msgstr "For langt definitionsnavn\n"
#: scan.l:284
msgid "Unmatched '{'"
msgstr "Ensomt '{'"
#: scan.l:300
#, c-format
msgid "Definition value for {%s} too long\n"
msgstr "Definitionsværdi for (%s) for langt\n"
#: scan.l:317
msgid "incomplete name definition"
msgstr "ufuldstændig navnedefinition"
#: scan.l:443
msgid "Option line too long\n"
msgstr "For lang valgmulighedslinje\n"
#: scan.l:451
#, c-format
msgid "unrecognized %%option: %s"
@@ -840,27 +878,27 @@ msgstr "kan ikke
msgid "Usage: %s [OPTIONS]...\n"
msgstr "Brug: %s [FLAG]...\n"
#: scanopt.c:565
#: scanopt.c:564
#, c-format
msgid "option `%s' doesn't allow an argument\n"
msgstr "flaget '%s' tager ikke noget argument\n"
#: scanopt.c:570
#: scanopt.c:569
#, c-format
msgid "option `%s' requires an argument\n"
msgstr "flaget '%s' kræver et argument\n"
#: scanopt.c:574
#: scanopt.c:573
#, c-format
msgid "option `%s' is ambiguous\n"
msgstr "flaget '%s' er flertydig\n"
#: scanopt.c:578
#: scanopt.c:577
#, c-format
msgid "Unrecognized option `%s'\n"
msgstr "Ukendt flag: '%s'\n"
#: scanopt.c:582
#: scanopt.c:581
#, c-format
msgid "Unknown error=(%d)\n"
msgstr "Ukendt fejl=(%d)\n"
+523 -314
View File
File diff suppressed because it is too large Load Diff
+30 -11
View File
@@ -69,22 +69,33 @@ public:
yy_switch_to_buffer( struct yy_buffer_state* new_buffer ) = 0;
virtual struct yy_buffer_state*
yy_create_buffer( FLEX_STD istream* s, int size ) = 0;
virtual struct yy_buffer_state*
yy_create_buffer( FLEX_STD istream& s, int size ) = 0;
virtual void yy_delete_buffer( struct yy_buffer_state* b ) = 0;
virtual void yyrestart( FLEX_STD istream* s ) = 0;
virtual void yyrestart( FLEX_STD istream* s ) = 0;
virtual void yyrestart( FLEX_STD istream& s ) = 0;
virtual int yylex() = 0;
// Call yylex with new input/output sources.
int yylex( FLEX_STD istream* new_in, FLEX_STD ostream* new_out = 0 )
{
int yylex( FLEX_STD istream& new_in, FLEX_STD ostream& new_out )
{
switch_streams( new_in, new_out );
return yylex();
}
}
int yylex( FLEX_STD istream* new_in, FLEX_STD ostream* new_out = 0)
{
switch_streams( new_in, new_out );
return yylex();
}
// Switch to new input/output streams. A nil stream pointer
// indicates "keep the current one".
virtual void switch_streams( FLEX_STD istream* new_in = 0,
FLEX_STD ostream* new_out = 0 ) = 0;
virtual void switch_streams( FLEX_STD istream* new_in,
FLEX_STD ostream* new_out ) = 0;
virtual void switch_streams( FLEX_STD istream& new_in,
FLEX_STD ostream& new_out ) = 0;
int lineno() const { return yylineno; }
@@ -113,20 +124,28 @@ class yyFlexLexer : public FlexLexer {
public:
// arg_yyin and arg_yyout default to the cin and cout, but we
// only make that assignment when initializing in yylex().
yyFlexLexer( FLEX_STD istream& arg_yyin, FLEX_STD ostream& arg_yyout );
yyFlexLexer( FLEX_STD istream* arg_yyin = 0, FLEX_STD ostream* arg_yyout = 0 );
private:
void ctor_common();
public:
virtual ~yyFlexLexer();
void yy_switch_to_buffer( struct yy_buffer_state* new_buffer );
struct yy_buffer_state* yy_create_buffer( FLEX_STD istream* s, int size );
struct yy_buffer_state* yy_create_buffer( FLEX_STD istream* s, int size );
struct yy_buffer_state* yy_create_buffer( FLEX_STD istream& s, int size );
void yy_delete_buffer( struct yy_buffer_state* b );
void yyrestart( FLEX_STD istream* s );
void yyrestart( FLEX_STD istream& s );
void yypush_buffer_state( struct yy_buffer_state* new_buffer );
void yypop_buffer_state();
virtual int yylex();
virtual void switch_streams( FLEX_STD istream* new_in, FLEX_STD ostream* new_out = 0 );
virtual void switch_streams( FLEX_STD istream& new_in, FLEX_STD ostream& new_out );
virtual void switch_streams( FLEX_STD istream* new_in = 0, FLEX_STD ostream* new_out = 0 );
virtual int yywrap();
protected:
@@ -138,7 +157,7 @@ protected:
int yyinput();
void yy_load_buffer_state();
void yy_init_buffer( struct yy_buffer_state* b, FLEX_STD istream* s );
void yy_init_buffer( struct yy_buffer_state* b, FLEX_STD istream& s );
void yy_flush_buffer( struct yy_buffer_state* b );
int yy_start_stack_ptr;
@@ -153,8 +172,8 @@ protected:
yy_state_type yy_try_NUL_trans( yy_state_type current_state );
int yy_get_next_buffer();
FLEX_STD istream* yyin; // input source for default LexerInput
FLEX_STD ostream* yyout; // output sink for default LexerOutput
FLEX_STD istream yyin; // input source for default LexerInput
FLEX_STD ostream yyout; // output sink for default LexerOutput
// yy_hold_char holds the character lost when yytext is formed.
char yy_hold_char;
+4 -2
View File
@@ -39,13 +39,13 @@ libfl_la_SOURCES = \
libmain.c \
libyywrap.c
libfl_la_LDFLAGS = -no-undefined -version-info @SHARED_VERSION_INFO@
libfl_la_LDFLAGS = -version-info @SHARED_VERSION_INFO@
libfl_pic_la_SOURCES = \
libmain.c \
libyywrap.c
libfl_pic_la_LDFLAGS = -no-undefined -version-info @SHARED_VERSION_INFO@
libfl_pic_la_LDFLAGS = -version-info @SHARED_VERSION_INFO@
noinst_HEADERS = \
flexdef.h \
@@ -67,6 +67,8 @@ EXTRA_DIST = \
BUILT_SOURCES = \
skel.c
MAINTAINERCLEANFILES = skel.c
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 -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
+1 -1
View File
@@ -400,7 +400,7 @@ void ntod ()
* from 1 to CSIZE, so their size must be CSIZE + 1.
*/
int duplist[CSIZE + 1], state[CSIZE + 1];
int targfreq[CSIZE + 1], targstate[CSIZE + 1];
int targfreq[CSIZE + 1] = {0}, targstate[CSIZE + 1];
/* accset needs to be large enough to hold all of the rules present
* in the input, *plus* their YY_TRAILING_HEAD_MASK variants.
+97 -26
View File
@@ -556,7 +556,7 @@ struct yy_buffer_state
%endif
%if-c++-only
std::istream* yy_input_file;
std::streambuf* yy_input_file;
%endif
@@ -1338,7 +1338,7 @@ m4_ifdef( [[M4_YY_USES_REJECT]],
yyin = stdin;
%endif
%if-c++-only
yyin = & std::cin;
yyin.rdbuf(std::cin.rdbuf());
%endif
if ( ! yyout )
@@ -1346,7 +1346,7 @@ m4_ifdef( [[M4_YY_USES_REJECT]],
yyout = stdout;
%endif
%if-c++-only
yyout = & std::cout;
yyout.rdbuf(std::cout.rdbuf());
%endif
if ( ! YY_CURRENT_BUFFER ) {
@@ -1412,7 +1412,12 @@ do_action: /* This label is used only to access EOF actions. */
* back-up) that will match for the new input source.
*/
YY_G(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
%if-c-only
YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
%endif
%if-c++-only
YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin.rdbuf();
%endif
YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
}
@@ -1525,11 +1530,29 @@ do_action: /* This label is used only to access EOF actions. */
%if-c++-only
%not-for-header
/* The contents of this function are C++ specific, so the YY_G macro is not used.
* This constructor simply maintains backward compatibility.
* DEPRECATED
*/
yyFlexLexer::yyFlexLexer( std::istream* arg_yyin, std::ostream* arg_yyout )
yyFlexLexer::yyFlexLexer( FLEX_STD istream* arg_yyin, FLEX_STD ostream* arg_yyout ):
yyin(arg_yyin ? arg_yyin->rdbuf() : std::cin.rdbuf()),
yyout(arg_yyout ? arg_yyout->rdbuf() : std::cout.rdbuf())
{
ctor_common();
}
/* The contents of this function are C++ specific, so the YY_G macro is not used.
*/
yyFlexLexer::yyFlexLexer( std::istream& arg_yyin, std::ostream& arg_yyout ):
yyin(arg_yyin.rdbuf()),
yyout(arg_yyout.rdbuf())
{
ctor_common();
}
/* The contents of this function are C++ specific, so the YY_G macro is not used.
*/
void yyFlexLexer::ctor_common()
{
yyin = arg_yyin;
yyout = arg_yyout;
yy_c_buf_p = 0;
yy_init = 0;
yy_start = 0;
@@ -1570,18 +1593,31 @@ yyFlexLexer::~yyFlexLexer()
yyfree( yy_buffer_stack M4_YY_CALL_LAST_ARG );
}
/* The contents of this function are C++ specific, so the YY_G macro is not used.
*/
void yyFlexLexer::switch_streams( std::istream& new_in, std::ostream& new_out )
{
// was if( new_in )
yy_delete_buffer( YY_CURRENT_BUFFER M4_YY_CALL_LAST_ARG);
yy_switch_to_buffer( yy_create_buffer( new_in, YY_BUF_SIZE M4_YY_CALL_LAST_ARG) M4_YY_CALL_LAST_ARG);
// was if( new_out )
yyout.rdbuf(new_out.rdbuf());
}
/* The contents of this function are C++ specific, so the YY_G macro is not used.
*/
void yyFlexLexer::switch_streams( std::istream* new_in, std::ostream* new_out )
{
if ( new_in )
{
yy_delete_buffer( YY_CURRENT_BUFFER M4_YY_CALL_LAST_ARG);
yy_switch_to_buffer( yy_create_buffer( new_in, YY_BUF_SIZE M4_YY_CALL_LAST_ARG) M4_YY_CALL_LAST_ARG);
}
if( ! new_in ) {
new_in = &yyin;
}
if ( new_out )
yyout = new_out;
if ( ! new_out ) {
new_out = &yyout;
}
switch_streams(*new_in, *new_out);
}
#ifdef YY_INTERACTIVE
@@ -1590,33 +1626,33 @@ int yyFlexLexer::LexerInput( char* buf, int /* max_size */ )
int yyFlexLexer::LexerInput( char* buf, int max_size )
#endif
{
if ( yyin->eof() || yyin->fail() )
if ( yyin.eof() || yyin.fail() )
return 0;
#ifdef YY_INTERACTIVE
yyin->get( buf[0] );
yyin.get( buf[0] );
if ( yyin->eof() )
if ( yyin.eof() )
return 0;
if ( yyin->bad() )
if ( yyin.bad() )
return -1;
return 1;
#else
(void) yyin->read( buf, max_size );
(void) yyin.read( buf, max_size );
if ( yyin->bad() )
if ( yyin.bad() )
return -1;
else
return yyin->gcount();
return yyin.gcount();
#endif
}
void yyFlexLexer::LexerOutput( const char* buf, int size )
{
(void) yyout->write( buf, size );
(void) yyout.write( buf, size );
}
%ok-for-header
%endif
@@ -1973,7 +2009,7 @@ m4_ifdef( [[M4_YY_USE_LINENO]],
void yyrestart YYFARGS1( FILE *,input_file)
%endif
%if-c++-only
void yyFlexLexer::yyrestart( std::istream* input_file )
void yyFlexLexer::yyrestart( std::istream& input_file )
%endif
{
M4_YY_DECL_GUTS_VAR();
@@ -1988,6 +2024,18 @@ m4_ifdef( [[M4_YY_USE_LINENO]],
yy_load_buffer_state( M4_YY_CALL_ONLY_ARG );
}
%if-c++-only
/** Delegate to the new version that takes an istream reference.
* @param input_file A readable stream.
* M4_YY_DOC_PARAM
* @note This function does not reset the start condition to @c INITIAL .
*/
void yyFlexLexer::yyrestart( std::istream* input_file )
{
yyrestart( *input_file );
}
%endif
/** Switch to a different input buffer.
* @param new_buffer The new input buffer.
* M4_YY_DOC_PARAM
@@ -2040,7 +2088,12 @@ static void yy_load_buffer_state YYFARGS0(void)
M4_YY_DECL_GUTS_VAR();
YY_G(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
YY_G(yytext_ptr) = YY_G(yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
%if-c-only
yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
%endif
%if-c++-only
yyin.rdbuf(YY_CURRENT_BUFFER_LVALUE->yy_input_file);
%endif
YY_G(yy_hold_char) = *YY_G(yy_c_buf_p);
}
@@ -2054,7 +2107,7 @@ static void yy_load_buffer_state YYFARGS0(void)
YY_BUFFER_STATE yy_create_buffer YYFARGS2( FILE *,file, int ,size)
%endif
%if-c++-only
YY_BUFFER_STATE yyFlexLexer::yy_create_buffer( std::istream* file, int size )
YY_BUFFER_STATE yyFlexLexer::yy_create_buffer( std::istream& file, int size )
%endif
{
YY_BUFFER_STATE b;
@@ -2080,6 +2133,19 @@ static void yy_load_buffer_state YYFARGS0(void)
return b;
}
%if-c++-only
/** Delegate creation of buffers to the new version that takes an istream reference.
* @param file A readable stream.
* @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
* M4_YY_DOC_PARAM
* @return the allocated buffer state.
*/
YY_BUFFER_STATE yyFlexLexer::yy_create_buffer( std::istream* file, int size )
{
return yy_create_buffer( *file, size );
}
%endif
/** Destroy the buffer.
* @param b a buffer created with yy_create_buffer()
* M4_YY_DOC_PARAM
@@ -2114,7 +2180,7 @@ static void yy_load_buffer_state YYFARGS0(void)
static void yy_init_buffer YYFARGS2( YY_BUFFER_STATE ,b, FILE *,file)
%endif
%if-c++-only
void yyFlexLexer::yy_init_buffer( YY_BUFFER_STATE b, std::istream* file )
void yyFlexLexer::yy_init_buffer( YY_BUFFER_STATE b, std::istream& file )
%endif
{
@@ -2123,7 +2189,12 @@ static void yy_load_buffer_state YYFARGS0(void)
yy_flush_buffer( b M4_YY_CALL_LAST_ARG);
%if-c-only
b->yy_input_file = file;
%endif
%if-c++-only
b->yy_input_file = file.rdbuf();
%endif
b->yy_fill_buffer = 1;
/* If b is the current buffer, then yy_init_buffer was _probably_
@@ -2279,7 +2350,7 @@ void yyFlexLexer::yyensure_buffer_stack(void)
* scanner will even need a stack. We use 2 instead of 1 to avoid an
* immediate realloc on the next call.
*/
num_to_alloc = 1;
num_to_alloc = 1; // After all that talk, this was set to 1 anyways...
YY_G(yy_buffer_stack) = (struct yy_buffer_state**)yyalloc
(num_to_alloc * sizeof(struct yy_buffer_state*)
M4_YY_CALL_LAST_ARG);
@@ -2862,7 +2933,7 @@ int yylex_init_extra( YY_EXTRA_TYPE yy_user_defined, yyscan_t* ptr_yy_globals )
}
%endif if-c-only
%# Actually, that ended an if-rentrant section
%if-c-only
static int yy_init_globals YYFARGS0(void)
+6 -2
View File
@@ -1525,7 +1525,7 @@ void make_tables (void)
{
int i;
int did_eof_rule = false;
struct yytbl_data *yynultrans_tbl;
struct yytbl_data *yynultrans_tbl = NULL;
skelout (); /* %% [2.0] - break point in skel */
@@ -1755,9 +1755,13 @@ void make_tables (void)
0)
flexerror (_
("Could not write yynultrans_tbl"));
}
if (yynultrans_tbl != NULL) {
yytbl_data_destroy (yynultrans_tbl);
yynultrans_tbl = NULL;
}
}
/* End generating yy_NUL_trans */
}
+114 -50
View File
@@ -36,7 +36,7 @@ REJECT_LOG_COMPILER = $(srcdir)/testwrapper.sh
AM_REJECT_LOG_FLAGS = -d $(srcdir) -i reject.txt -r
TABLE_LOG_COMPILER = $(srcdir)/testwrapper.sh
AM_TABLE_LOG_FLAGS = -d $(srcdir) -i reject.txt -t
AM_TABLE_LOG_FLAGS = -d $(builddir) -i $(srcdir)/reject.txt -t
DIRECT_LOG_COMPILER=$(srcdir)/testwrapper.sh
AM_DIRECT_LOG_FLAGS = -d $(srcdir)
@@ -88,7 +88,7 @@ simple_tests = \
prefix_r \
quotes \
string_nr \
string_r \
string_r \
top \
yyextra
@@ -107,7 +107,7 @@ DIRECT_TESTS = \
rescan_nr.direct \
rescan_r.direct
I3_TESTS = \
I3_TESTS = \
cxx_yywrap.i3
if want_pthread
@@ -169,44 +169,117 @@ top_SOURCES = top.l top_main.c
yyextra_SOURCES = yyextra.l
BUILT_SOURCES = \
bison_nr_scanner.h \
bison_nr_parser.h \
bison_nr_scanner.h \
bison_yylloc_parser.h \
bison_yylloc_scanner.h \
bison_yylval_parser.h \
bison_yylval_scanner.h \
c_cxx_nr.cc \
c_cxx_r.cc \
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
# without having a flex binary, we want to not distribute the files
# built by flex in the test suite. The dist-hook target accomplishes
# this goal. It's also handy to have the list of files to clean since
# automake doesn't know about the whacky ways in which we're abusing
# it.
CLEANFILES = \
array_nr.c \
array_r.c \
basic_nr.c \
basic_r.c \
bison_nr_parser.c \
bison_nr_parser.h \
bison_nr_scanner.c \
bison_nr_scanner.h \
bison_yylloc_parser.c \
bison_yylloc_parser.h \
bison_yylloc_scanner.c \
bison_yylloc_scanner.h \
bison_yylval_parser.c \
bison_yylval_parser.h \
bison_yylval_scanner.c \
bison_yylval_scanner.h \
c_cxx_nr.cc \
c_cxx_r.cc \
ccl.c \
cxx_basic.cc \
cxx_multiple_scanners_1.cc \
cxx_multiple_scanners_2.cc \
cxx_yywrap.cc \
debug_nr.c \
debug_r.c \
extended.c \
header_nr_scanner.c \
header_nr_scanner.h \
header_r_scanner.c \
header_r_scanner.h \
include_by_buffer.direct.c \
include_by_push.direct.c \
include_by_reentrant.direct.c \
lineno_nr.c \
lineno_r.c \
lineno_trailing.c \
mem_nr.c \
mem_r.c \
multiple_scanners_nr_1.c \
multiple_scanners_nr_1.h \
multiple_scanners_nr_2.c \
multiple_scanners_nr_2.h \
multiple_scanners_r_1.c \
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 \
quotes.c \
reject_nr.reject.c \
reject_r.reject.c \
reject_ver.table.c \
reject_ser.table.c \
top.h \
$(tableopts_c)
reject_ser.table.tables \
reject_ver.table.c \
reject_ver.table.tables \
rescan_nr.direct.c \
rescan_r.direct.c \
string_nr.c \
string_r.c \
top.c \
top.h \
yyextra.c \
alloc_extra.c \
$(tableopts_c) \
$(tableopts_tables)
dist-hook:
for file in $(CLEANFILES) ; do \
rm -f $(distdir)/$$file \
; done
EXTRA_DIST = \
README \
testwrapper.sh \
alloc_extra.txt \
array_nr.txt \
array_r.txt \
basic_nr.txt \
basic_nr.txt \
basic_r.txt \
bison_nr_scanner.h \
bison_nr.txt \
bison_yylloc_scanner.h \
bison_yylloc.txt \
bison_yylval_scanner.h \
bison_yylval.txt \
c_cxx_nr.cc \
c_cxx_nr.txt \
c_cxx_r.cc \
c_cxx_r.txt \
ccl.txt \
cxx_basic.txt \
@@ -215,9 +288,7 @@ basic_nr.txt \
debug_nr.txt \
debug_r.txt \
extended.txt \
header_nr_scanner.h \
header_nr.txt \
header_r_scanner.h \
header_r.txt \
include_by_buffer.direct.txt \
include_by_buffer.direct_2.txt \
@@ -234,10 +305,6 @@ basic_nr.txt \
mem_nr.txt \
mem_r.txt \
noansi_nr.txt \
multiple_scanners_nr_1.h \
multiple_scanners_nr_2.h \
multiple_scanners_r_1.h \
multiple_scanners_r_2.h \
noansi_r.txt \
prefix_nr.txt \
prefix_r.txt \
@@ -247,22 +314,19 @@ basic_nr.txt \
pthread_4.txt \
pthread_5.txt \
reject.txt \
reject_nr.reject.c \
reject_r.reject.c \
reject_ver.table.c \
reject_ver.table.tables \
reject_ser.table.c \
reject_ser.table.tables \
rescan_nr.direct.txt \
rescan_r.direct.txt \
quotes.txt \
top.h \
top.txt \
yyextra.txt \
$(tableopts_c) \
$(tableopts_tables) \
tableopts.txt \
options.cn
tableopts.txt
dist_noinst_SCRIPTS = \
tableopts.sh
dist_check_SCRIPTS = \
options.cn \
testwrapper.sh
pthread_pthread_LDADD = -lpthread
@@ -270,10 +334,10 @@ pthread_pthread_LDADD = -lpthread
FLEX = $(top_builddir)/src/flex
.l.c:
.l.c: $(FLEX)
$(FLEX) -o $@ $<
.ll.cc:
.ll.cc: $(FLEX)
$(FLEX) -+ -o $@ $<
bison_nr_main.($OBJEXT): bison_nr_parser.h bison_nr_scanner.h
@@ -288,7 +352,7 @@ bison_yylval_scanner.h: bison_yylval_scanner.c
# 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:
.lll.cc: $(FLEX)
$(FLEX) -o $@ $<
header_nr_main.$(OBJEXT): header_nr_scanner.h
@@ -311,16 +375,16 @@ multiple_scanners_r_main.$(OBJEXT): multiple_scanners_r_1.h multiple_scanners_r_
multiple_scanners_r_1.h: multiple_scanners_r_1.c
multiple_scanners_r_2.h: multiple_scanners_r_2.c
posixly_correct.c: posixly_correct.l
posixly_correct.c: posixly_correct.l $(FLEX)
POSIXLY_CORRECT=1 $(FLEX) -o $@ $<
reject_nr.reject.c: reject.l4
reject_nr.reject.c: reject.l4 $(FLEX)
$(FLEX) -o $@ $<
reject_nr.reject$(EXEEXT): reject_nr.reject.$(OBJEXT)
$(LINK) $^
reject_r.reject.c: reject.l4
reject_r.reject.c: reject.l4 $(FLEX)
$(FLEX) --reentrant -o $@ $<
reject_r.reject.$(OBJEXT): reject_r.reject.c
@@ -329,7 +393,7 @@ reject_r.reject.$(OBJEXT): reject_r.reject.c
reject_r.reject$(EXEEXT): reject_r.reject.$(OBJEXT)
$(LINK) $^
reject_ver.table.c: reject.l4
reject_ver.table.c: reject.l4 $(FLEX)
$(FLEX) -o $@ --tables-verify --tables-file=$(basename $@).tables $<
reject_ver.table.$(OBJEXT): reject_ver.table.c
@@ -338,7 +402,7 @@ reject_ver.table.$(OBJEXT): reject_ver.table.c
reject_ver.table$(EXEEXT): reject_ver.table.$(OBJEXT)
$(LINK) $^
reject_ser.table.c: reject.l4
reject_ser.table.c: reject.l4 $(FLEX)
$(FLEX) -o $@ --tables-file=$(basename $@).tables $<
reject_ser.table.$(OBJEXT): reject_ser.table.c
@@ -359,7 +423,7 @@ top.h: top.c
tableopts.am: tableopts.sh
$(srcdir)/tableopts.sh > $(srcdir)/tableopts.am
include tableopts.am
include $(srcdir)/tableopts.am
tableopts := -Ca -Ce -Cf -CF -Cm -Cem -Cae -Caef -CaeF -Cam -Caem
tableopts_opt_tests := $(foreach opt,$(tableopts), tableopts_opt_nr$(opt) tableopts_opt_r$(opt))
@@ -372,37 +436,37 @@ tableopts_c := $(addsuffix .c,$(tableopts_tests))
OPT_LOG_COMPILER = $(srcdir)/testwrapper.sh
AM_OPT_LOG_FLAGS = -d $(srcdir) -i tableopts.txt -r
tableopts_opt_nr%.c: tableopts.l4
tableopts_opt_nr%.c: tableopts.l4 $(FLEX)
$(FLEX) -P $(subst -,_,$(basename $(*F))) $* -o $@ $<
tableopts_opt_nr%.$(OBJEXT): tableopts_opt_nr%.c
$(COMPILE) -c -o $@ $<
tableopts_opt_r%.c: tableopts.l4
tableopts_opt_r%.c: tableopts.l4 $(FLEX)
$(FLEX) -P $(subst -,_,$(basename $(*F))) --reentrant $* -o $@ $<
tableopts_opt_r%.$(OBJEXT): tableopts_opt_r%.c
$(COMPILE) -DTEST_IS_REENTRANT -c -o $@ $<
SER_LOG_COMPILER = $(srcdir)/testwrapper.sh
AM_SER_LOG_FLAGS = -d $(srcdir) -i tableopts.txt -r -t
AM_SER_LOG_FLAGS = -d $(builddir) -i $(srcdir)/tableopts.txt -r -t
tableopts_ser_nr%.c: tableopts.l4
tableopts_ser_nr%.c: tableopts.l4 $(FLEX)
$(FLEX) -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 $@ $<
tableopts_ser_r%.c: tableopts.l4
tableopts_ser_r%.c: tableopts.l4 $(FLEX)
$(FLEX) -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 $@ $<
VER_LOG_COMPILER = $(srcdir)/testwrapper.sh
AM_VER_LOG_FLAGS = -d $(srcdir) -i tableopts.txt -r -t
AM_VER_LOG_FLAGS = -d $(builddir) -i $(srcdir)/tableopts.txt -r -t
tableopts_ver_nr%.c: tableopts.l4
tableopts_ver_nr%.c: tableopts.l4 $(FLEX)
$(FLEX) -P $(subst -,_,$(basename $(*F))) --tables-file="tableopts_ver_nr$*.ver.tables" --tables-verify $* -o $@ $<
tableopts_ver_nr%.$(OBJEXT): tableopts_ver_nr%.c
@@ -411,7 +475,7 @@ tableopts_ver_nr%.$(OBJEXT): tableopts_ver_nr%.c
tableopts_ver_nr%.ver$(EXEEXT): tableopts_ver_nr%.$(OBJEXT)
$(LINK) -o $@ $^
tableopts_ver_r%.c: tableopts.l4
tableopts_ver_r%.c: tableopts.l4 $(FLEX)
$(FLEX) -P $(subst -,_,$(basename $(*F))) -R --tables-file="tableopts_ver_r$*.ver.tables" --tables-verify $* -o $@ $<
tableopts_ver_r%.$(OBJEXT): tableopts_ver_r%.c