summaryrefslogtreecommitdiff
path: root/tests/local.at
diff options
context:
space:
mode:
authorAkim Demaille <akim@lrde.epita.fr>2013-01-28 16:05:09 +0100
committerAkim Demaille <akim@lrde.epita.fr>2013-01-28 16:07:51 +0100
commitdc8e535c37dffc57e5bc9f97108db6f5eb7a77ce (patch)
tree12066e8226b1b0525f60b6bce52e9eafa06336b2 /tests/local.at
parent66fb016e1d51afdb767f24e5818b083bc73a8827 (diff)
downloadbison-dc8e535c37dffc57e5bc9f97108db6f5eb7a77ce.tar.gz
tests: check that using variants is exception safe
* tests/local.at: (Slightly) improve the regexp by escaping '.' when it denotes a point. (AT_VARIANT_IF): New. * tests/c++.at (Exception Safety): Run it for variants too.
Diffstat (limited to 'tests/local.at')
-rw-r--r--tests/local.at11
1 files changed, 7 insertions, 4 deletions
diff --git a/tests/local.at b/tests/local.at
index 103887d0..74eea7e6 100644
--- a/tests/local.at
+++ b/tests/local.at
@@ -186,10 +186,12 @@ m4_pushdef([AT_NAME_PREFIX],
[m4_bregexp([$3], [\(%define api\.\(namespace\|prefix\)\|%name-prefix\) "\([^""]*\)"], [\3])],
[yy])])
m4_pushdef([AT_TOKEN_CTOR_IF],
-[m4_bmatch([$3], [%define api.token.constructor], [$1], [$2])])
+[m4_bmatch([$3], [%define api\.token\.constructor], [$1], [$2])])
m4_pushdef([AT_TOKEN_PREFIX],
-[m4_bmatch([$3], [%define api.token.prefix ".*"],
- [m4_bregexp([$3], [%define api.token.prefix "\(.*\)"], [\1])])])
+[m4_bmatch([$3], [%define api\.token\.prefix ".*"],
+ [m4_bregexp([$3], [%define api\.token\.prefix "\(.*\)"], [\1])])])
+m4_pushdef([AT_VARIANT_IF],
+[m4_bmatch([$3], [%define api\.value\.type "?variant"?], [$1], [$2])])
m4_pushdef([AT_API_prefix],
[m4_bmatch([$3], [%define api\.prefix ".*"],
[m4_bregexp([$3], [%define api\.prefix "\([^""]*\)"], [\1])],
@@ -203,7 +205,7 @@ m4_pushdef([AT_API_PREFIX],
m4_pushdef([AT_YYERROR_ARG_LOC_IF],
[AT_LOCATION_IF([AT_PURE_IF([m4_bmatch([$3],
m4_quote(m4_join([\|],
- [%define api.pure "?full"?],
+ [%define api\.pure "?full"?],
[%glr-parser],
[%parse-param],
[%skeleton "?glr.c"?])),
@@ -288,6 +290,7 @@ m4_popdef([AT_YYERROR_SEES_LOC_IF])
m4_popdef([AT_YYERROR_ARG_LOC_IF])
m4_popdef([AT_API_PREFIX])
m4_popdef([AT_API_prefix])
+m4_popdef([AT_VARIANT_IF])
m4_popdef([AT_TOKEN_PREFIX])
m4_popdef([AT_TOKEN_CTOR_IF])
m4_popdef([AT_NAME_PREFIX])