]> git.saurik.com Git - bison.git/blobdiff - tests/output.at
lalr1.cc: location.hh and position.hh are not generated without %defines
[bison.git] / tests / output.at
index b63753e93d8a345867cde9ce67eb37a8a4d814b8..e8019c2a50dac4c9ba801a9857d3d52287ee459a 100644 (file)
@@ -72,7 +72,7 @@ AT_CHECK_OUTPUT([foo.y], [%defines %verbose %yacc],[],
 AT_CHECK_OUTPUT([foo.yy], [%defines %verbose %yacc],[],
                 [y.output y.tab.c y.tab.h])
 
-# Exercise %output and %file-prefix including deprecated `='
+# Exercise %output and %file-prefix including deprecated '='
 AT_CHECK_OUTPUT([foo.y], [%file-prefix "bar" %defines %verbose],      [],
                 [bar.output bar.tab.c bar.tab.h])
 AT_CHECK_OUTPUT([foo.y], [%output="bar.c" %defines %verbose %yacc],[],
@@ -113,9 +113,15 @@ AT_CHECK([grep 'include .subdir/' $1.cc], 1, [])
 AT_CHECK([grep 'include .subdir/' $1.hh], 1, [])
 ])
 
+AT_CHECK_OUTPUT([foo.yy], [%skeleton "lalr1.cc" %verbose], [],
+                [foo.tab.cc foo.output stack.hh])
+
 AT_CHECK_OUTPUT([foo.yy], [%skeleton "lalr1.cc" %defines %verbose], [],
                 [foo.tab.cc foo.tab.hh foo.output stack.hh])
 
+AT_CHECK_OUTPUT([foo.yy], [%skeleton "lalr1.cc" %verbose %locations], [],
+                [foo.tab.cc foo.output stack.hh])
+
 AT_CHECK_OUTPUT([foo.yy], [%skeleton "lalr1.cc" %defines %verbose %locations], [],
                 [foo.tab.cc foo.tab.hh foo.output location.hh stack.hh position.hh])
 
@@ -165,22 +171,22 @@ AT_CLEANUP
 
 AT_CHECK_CONFLICTING_OUTPUT([foo.y],
 [], [--graph="foo.tab.c"],
-[foo.y: warning: conflicting outputs to file `foo.tab.c'
-])
+[[foo.y: warning: conflicting outputs to file 'foo.tab.c' [-Wother]
+]])
 
 AT_CHECK_CONFLICTING_OUTPUT([foo.y],
 [%defines "foo.output"], [-v],
-[foo.y: warning: conflicting outputs to file `foo.output'
-])
+[[foo.y: warning: conflicting outputs to file 'foo.output' [-Wother]
+]])
 
 AT_CHECK_CONFLICTING_OUTPUT([foo.y],
 [%skeleton "lalr1.cc" %defines %locations], [--graph="location.hh"],
-[foo.y: warning: conflicting outputs to file `location.hh'
-])
+[[foo.y: warning: conflicting outputs to file 'location.hh' [-Wother]
+]])
 
 AT_CHECK_CONFLICTING_OUTPUT([foo.y], [], [-o foo.y],
-[foo.y: refusing to overwrite the input file `foo.y'
-], 1)
+[[foo.y: refusing to overwrite the input file 'foo.y'
+]], 1)
 
 
 # AT_CHECK_OUTPUT_FILE_NAME(FILE-NAME-PREFIX, [ADDITIONAL-TESTS])
@@ -188,6 +194,7 @@ AT_CHECK_CONFLICTING_OUTPUT([foo.y], [], [-o foo.y],
 m4_define([AT_CHECK_OUTPUT_FILE_NAME],
 [AT_SETUP([Output file name: $1])
 
+AT_BISON_OPTION_PUSHDEFS
 # Skip if platform doesn't support file name.  For example, Cygwin
 # doesn't support file names containing ":" or "\".
 AT_CHECK([[touch "]AS_ESCAPE([$1[.tmp]])[" || exit 77]])
@@ -195,8 +202,8 @@ AT_CHECK([[touch "]AS_ESCAPE([$1[.tmp]])[" || exit 77]])
 AT_DATA_GRAMMAR([glr.y],
 [[%glr-parser
 %code {
-  int yylex (void);
-  void yyerror (const char *);
+]AT_YYERROR_DECLARE_EXTERN[
+]AT_YYLEX_DECLARE_EXTERN[
 }
 %%
 start: {};
@@ -217,11 +224,12 @@ AT_CHECK([ls "AS_ESCAPE([$1.c])" "AS_ESCAPE([$1.h])"], [], [ignore])
 AT_COMPILE_CXX([cxx.o], [-c "AS_ESCAPE([$1.c])"])
 $2
 
+AT_BISON_OPTION_POPDEFS
 AT_CLEANUP
 ])
 
 # Notice that the header file name here cannot contain
-# `"' since FILENAME in `#include "FILENAME"' cannot.
+# '"' since FILENAME in '#include "FILENAME"' cannot.
 AT_CHECK_OUTPUT_FILE_NAME([[`~!@#$%^&*()-=_+{}[]|\:;<>, .']])
 dnl Work around a bug in m4_expand that broke AT_SETUP in autoconf 2.62,
 dnl by using the definition from 2.63.