]> granicus.if.org Git - flex/commitdiff
add test-c++-basic
authorWill Estes <wlestes@users.sourceforge.net>
Wed, 21 Aug 2002 13:41:41 +0000 (13:41 +0000)
committerWill Estes <wlestes@users.sourceforge.net>
Wed, 21 Aug 2002 13:41:41 +0000 (13:41 +0000)
tests/Makefile.am
tests/test-c++-basic/.cvsignore [new file with mode: 0644]
tests/test-c++-basic/Makefile.am [new file with mode: 0644]
tests/test-c++-basic/scanner.l [new file with mode: 0644]
tests/test-c++-basic/test.input [new file with mode: 0644]

index 109bd5cc2f3078858a68ded389d0bfb0fd73c0d5..e9a648858d3d413c6d4a70e0c45ddade427b239a 100644 (file)
@@ -26,6 +26,7 @@ noinst_SCRIPTS = \
        create-test
 
 SUBDIRS = \
+       test-c++-basic \
        test-table-opts \
        test-posixly-correct \
        test-posix \
diff --git a/tests/test-c++-basic/.cvsignore b/tests/test-c++-basic/.cvsignore
new file mode 100644 (file)
index 0000000..aa90b44
--- /dev/null
@@ -0,0 +1,6 @@
+Makefile
+Makefile.in
+scanner.cpp
+OUTPUT
+.deps
+test-c++-basic
diff --git a/tests/test-c++-basic/Makefile.am b/tests/test-c++-basic/Makefile.am
new file mode 100644 (file)
index 0000000..ad57cf7
--- /dev/null
@@ -0,0 +1,46 @@
+# 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 parser.c parser.h test-c++-basic OUTPUT $(OBJS)
+OBJS = scanner.o # parser.o
+
+INCLUDES = -I $(srcdir) -I $(top_srcdir) -I $(top_builddir) -I .
+#LDFLAGS = $(top_srcdir)/libfl.a 
+LFLAGS = -+
+#YFLAGS = --defines --output=parser.c
+
+testname = test-c++-basic
+
+scanner.cpp: $(srcdir)/scanner.l
+       $(FLEX) $(LFLAGS) $<
+
+$(testname)$(EXEEXT): $(OBJS)
+       $(CC) -o $@ $(LDFLAGS) $(OBJS) $(LOADLIBES)
+
+test: $(testname)$(EXEEXT)
+       ./$(testname)$(EXEEXT) < $(srcdir)/test.input
+
+.cpp.o:
+       $(CXX) -c -o $@ $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $<
diff --git a/tests/test-c++-basic/scanner.l b/tests/test-c++-basic/scanner.l
new file mode 100644 (file)
index 0000000..4955acb
--- /dev/null
@@ -0,0 +1,53 @@
+/*
+ * 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>
+#include <stdlib.h>
+#include "config.h"
+
+%}
+
+%option 8bit outfile="scanner.cpp" prefix="test"
+%option nounput nomain noyywrap 
+%option warn
+
+
+%%
+
+.              { }
+
+%%
+
+int main(void);
+
+int
+main ()
+{
+    yyin = stdin;
+    yyout = stdout;
+    yylex();
+    printf("TEST RETURNING OK.\n");
+    return 0;
+}
diff --git a/tests/test-c++-basic/test.input b/tests/test-c++-basic/test.input
new file mode 100644 (file)
index 0000000..7288a40
--- /dev/null
@@ -0,0 +1,2 @@
+0000 foo 1111 foo 0000 bar
+0000 foo 1111 foo 0000 bar