summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorJohn Millaway <john43@users.sourceforge.net>2002-07-09 16:37:04 +0000
committerJohn Millaway <john43@users.sourceforge.net>2002-07-09 16:37:04 +0000
commit6822400f32e05ba0f5a00499ddb4e8ba0ebd9202 (patch)
tree6f75207a3da33803233747b4f3e32e84522c14f3 /tests
parentfeebeead86c59ab3ee13f0bd0e7a9fd830701caa (diff)
Made yy_flex_debug non-global in reentrant scanner.
Created get/set functions for yy_flex_debug. Defined prefixes for new yy_flex_debug symbols. Added tests/ for yy_flex_debug.
Diffstat (limited to 'tests')
-rw-r--r--tests/Makefile.am2
-rw-r--r--tests/test-debug-nr/.cvsignore9
-rw-r--r--tests/test-debug-nr/Makefile.am44
-rw-r--r--tests/test-debug-nr/scanner.l50
-rw-r--r--tests/test-debug-nr/test.input2
-rw-r--r--tests/test-debug-r/.cvsignore9
-rw-r--r--tests/test-debug-r/Makefile.am44
-rw-r--r--tests/test-debug-r/scanner.l57
-rw-r--r--tests/test-debug-r/test.input2
9 files changed, 219 insertions, 0 deletions
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 895dd72..4a32c24 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -26,6 +26,8 @@ noinst_SCRIPTS = \
create-test
SUBDIRS = \
+ test-debug-nr \
+ test-debug-r \
test-lineno-r \
test-lineno-nr \
TEMPLATE \
diff --git a/tests/test-debug-nr/.cvsignore b/tests/test-debug-nr/.cvsignore
new file mode 100644
index 0000000..689066f
--- /dev/null
+++ b/tests/test-debug-nr/.cvsignore
@@ -0,0 +1,9 @@
+Makefile
+Makefile.in
+parser.c
+parser.h
+scanner.c
+TEMPLATE
+OUTPUT
+.deps
+test-debug-nr
diff --git a/tests/test-debug-nr/Makefile.am b/tests/test-debug-nr/Makefile.am
new file mode 100644
index 0000000..4096694
--- /dev/null
+++ b/tests/test-debug-nr/Makefile.am
@@ -0,0 +1,44 @@
+# 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.
+
+BISON = @BISON@
+FLEX = $(top_builddir)/flex
+
+EXTRA_DIST = scanner.l test.input
+CLEANFILES = scanner.c scanner.h test-debug-nr OUTPUT $(OBJS)
+OBJS = scanner.o
+
+INCLUDES = -I $(srcdir) -I $(top_srcdir) -I $(top_builddir) -I .
+#LDFLAGS = $(top_srcdir)/libfl.a
+
+testname = test-debug-nr
+
+scanner.c: $(srcdir)/scanner.l
+ $(FLEX) $(LFLAGS) $<
+
+$(testname)$(EXEEXT): $(OBJS)
+ $(CC) -o $@ $(OBJS) $(LDFLAGS)
+
+test: $(testname)$(EXEEXT)
+ ./$(testname)$(EXEEXT) < $(srcdir)/test.input
+
+.c.o:
+ $(CC) -c -o $@ $(INCLUDES) $<
diff --git a/tests/test-debug-nr/scanner.l b/tests/test-debug-nr/scanner.l
new file mode 100644
index 0000000..4a4a26f
--- /dev/null
+++ b/tests/test-debug-nr/scanner.l
@@ -0,0 +1,50 @@
+/*
+ * 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 template scanner file to build "scanner.c". */
+#include <stdio.h>
+#include <stdlib.h>
+#include "config.h"
+
+%}
+
+%option 8bit outfile="scanner.c" prefix="test"
+%option nounput nomain noyywrap
+%option warn debug
+
+%%
+.+ { }
+\n { }
+%%
+
+int
+main ( int argc, char** argv )
+{
+ yyin = stdin;
+ yyout = stdout;
+ yy_flex_debug = 1;
+ yylex();
+ printf("TEST RETURNING OK.\n");
+ return 0;
+}
diff --git a/tests/test-debug-nr/test.input b/tests/test-debug-nr/test.input
new file mode 100644
index 0000000..8d6476c
--- /dev/null
+++ b/tests/test-debug-nr/test.input
@@ -0,0 +1,2 @@
+Any input will do for this test.
+We are only testing if it actually runs in debug mode.
diff --git a/tests/test-debug-r/.cvsignore b/tests/test-debug-r/.cvsignore
new file mode 100644
index 0000000..d2b0c7c
--- /dev/null
+++ b/tests/test-debug-r/.cvsignore
@@ -0,0 +1,9 @@
+Makefile
+Makefile.in
+parser.c
+parser.h
+scanner.c
+TEMPLATE
+OUTPUT
+.deps
+test-debug-r
diff --git a/tests/test-debug-r/Makefile.am b/tests/test-debug-r/Makefile.am
new file mode 100644
index 0000000..76595cd
--- /dev/null
+++ b/tests/test-debug-r/Makefile.am
@@ -0,0 +1,44 @@
+# 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.
+
+BISON = @BISON@
+FLEX = $(top_builddir)/flex
+
+EXTRA_DIST = scanner.l test.input
+CLEANFILES = scanner.c test-debug-r OUTPUT $(OBJS)
+OBJS = scanner.o
+
+INCLUDES = -I $(srcdir) -I $(top_srcdir) -I $(top_builddir) -I .
+#LDFLAGS = $(top_srcdir)/libfl.a
+
+testname = test-debug-r
+
+scanner.c: $(srcdir)/scanner.l
+ $(FLEX) $(LFLAGS) $<
+
+$(testname)$(EXEEXT): $(OBJS)
+ $(CC) -o $@ $(OBJS) $(LDFLAGS)
+
+test: $(testname)$(EXEEXT)
+ ./$(testname)$(EXEEXT) < $(srcdir)/test.input
+
+.c.o:
+ $(CC) -c -o $@ $(INCLUDES) $<
diff --git a/tests/test-debug-r/scanner.l b/tests/test-debug-r/scanner.l
new file mode 100644
index 0000000..af85722
--- /dev/null
+++ b/tests/test-debug-r/scanner.l
@@ -0,0 +1,57 @@
+/*
+ * 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 template scanner file to build "scanner.c". */
+#include <stdio.h>
+#include <stdlib.h>
+#include "config.h"
+
+%}
+
+%option 8bit outfile="scanner.c" prefix="test"
+%option nounput nomain noyywrap
+%option warn debug reentrant
+
+%%
+.+ { }
+\n { }
+%%
+
+int main (int argc, char** argv )
+{
+ yyscan_t lexer;
+ yylex_init( &lexer );
+ yyset_out ( stdout,lexer);
+ yyset_in ( stdin, lexer);
+
+ /* Just see if the next line compiles. */
+ testset_debug (testget_debug(lexer), lexer);
+
+ while( yylex(lexer) )
+ {
+ }
+ yylex_destroy( lexer );
+ printf("TEST RETURNING OK.\n");
+ return 0;
+}
diff --git a/tests/test-debug-r/test.input b/tests/test-debug-r/test.input
new file mode 100644
index 0000000..8d6476c
--- /dev/null
+++ b/tests/test-debug-r/test.input
@@ -0,0 +1,2 @@
+Any input will do for this test.
+We are only testing if it actually runs in debug mode.