AT_FULL_COMPILE.

* tests/local.at (AT_FULL_COMPILE): New.
	* tests/actions.at, tests/calc.at, tests/regression.at: Use it.
This commit is contained in:
Akim Demaille
2008-08-25 13:43:00 +02:00
parent 1a7a65f9d5
commit 7ca2266adc
5 changed files with 24 additions and 23 deletions

View File

@@ -1,3 +1,9 @@
2008-11-11 Akim Demaille <demaille@gostai.com>
AT_FULL_COMPILE.
* tests/local.at (AT_FULL_COMPILE): New.
* tests/actions.at, tests/calc.at, tests/regression.at: Use it.
2008-11-11 Akim Demaille <demaille@gostai.com>
Support parens in calc++.

View File

@@ -1,5 +1,5 @@
# Executing Actions. -*- Autotest -*-
# Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software
# Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software
# Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
@@ -367,11 +367,7 @@ main (int argc, const char *argv[])
}
]])
AT_LALR1_CC_IF(
[AT_BISON_CHECK([-o input.cc input.y])
AT_COMPILE_CXX([input])],
[AT_BISON_CHECK([-o input.c input.y])
AT_COMPILE([input])])
AT_FULL_COMPILE([input])
# Check the location of "empty"

View File

@@ -453,12 +453,7 @@ m4_ifval([$2], [AT_CHECK([exit 77])])
AT_BISON_OPTION_PUSHDEFS([$1])
AT_DATA_CALC_Y([$1])
AT_SKEL_CC_IF(
[AT_BISON_CHECK([-o calc.cc calc.y])
AT_COMPILE_CXX([calc])],
[AT_BISON_CHECK([-o calc.c calc.y])
AT_COMPILE([calc])])
AT_FULL_COMPILE([calc])
# Test the priorities.
_AT_CHECK_CALC([$1],

View File

@@ -1,7 +1,7 @@
# Process this -*- Autotest -*- file with autom4te.
# Macros for the GNU Bison Test suite.
# Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
# Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -268,6 +268,18 @@ AT_CHECK([$CXX $CXXFLAGS $CPPFLAGS m4_bmatch([$1], [[.]], [], [$LDFLAGS ])-o $1
0, [ignore], [ignore])])
# AT_FULL_COMPILE(OUTPUT)
# -----------------------
# Compile OUTPUT.y to OUTPUT.c or OUTPUT.cc, and compile it to OUTPUT.
# Relies on AT_SKEL_CC_IF.
m4_define([AT_FULL_COMPILE],
[AT_SKEL_CC_IF(
[AT_BISON_CHECK([-o $1.cc $1.y])
AT_COMPILE_CXX([$1])],
[AT_BISON_CHECK([-o $1.c $1.y])
AT_COMPILE([$1])])
])
## ---------------------------- ##
## Running a generated parser. ##

View File

@@ -939,11 +939,7 @@ m4_define([AT_CHECK_DANCER],
AT_BISON_OPTION_PUSHDEFS([$1])
_AT_DATA_DANCER_Y([$1])
AT_BISON_CHECK([-o dancer.c dancer.y])
AT_LALR1_CC_IF(
[AT_BISON_CHECK([-o dancer.cc dancer.y])
AT_COMPILE_CXX([dancer])],
[AT_BISON_CHECK([-o dancer.c dancer.y])
AT_COMPILE([dancer])])
AT_FULL_COMPILE([dancer])
AT_PARSER_CHECK([./dancer], 1, [],
[syntax error, unexpected ':'
])
@@ -1039,11 +1035,7 @@ m4_define([AT_CHECK_EXPECT2],
AT_BISON_OPTION_PUSHDEFS([$1])
_AT_DATA_EXPECT2_Y([$1])
AT_BISON_CHECK([-o expect2.c expect2.y])
AT_LALR1_CC_IF(
[AT_BISON_CHECK([-o expect2.cc expect2.y])
AT_COMPILE_CXX([expect2])],
[AT_BISON_CHECK([-o expect2.c expect2.y])
AT_COMPILE([expect2])])
AT_FULL_COMPILE([expect2])
AT_PARSER_CHECK([./expect2], 1, [],
[syntax error, unexpected '+', expecting A or B
])