From 33e523878b3b395eee8b32b886b67bfbfbcbbcb8 Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Sun, 26 Aug 2018 18:51:31 +0200 Subject: [PATCH] C++: make sure the generated header is self container See the previous commit. * data/lalr1.cc: Be sure to define YY_NULLPTR. * tests/headers.at: Check the case that was failing. --- data/lalr1.cc | 1 + tests/headers.at | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/data/lalr1.cc b/data/lalr1.cc index 95bc61d9..143f3d4b 100644 --- a/data/lalr1.cc +++ b/data/lalr1.cc @@ -159,6 +159,7 @@ m4_define([b4_shared_declarations], ]b4_variant_if([b4_variant_includes])[ ]b4_attribute_define[ +]b4_null_define[ ]b4_YYDEBUG_define[ ]b4_namespace_open[ diff --git a/tests/headers.at b/tests/headers.at index bade94ed..93b70b73 100644 --- a/tests/headers.at +++ b/tests/headers.at @@ -178,7 +178,7 @@ AT_TEST([%define api.pure %define api.push-pull both]) AT_TEST([%language "c++"]) AT_TEST([%locations %debug %language "c++"]) -# AT_TEST([%language "c++" %define api.value.type variant %define parse.assert]) +AT_TEST([%language "c++" %define api.value.type variant %define parse.assert]) AT_TEST([%locations %language "c++" %glr-parser]) @@ -193,8 +193,8 @@ AT_SETUP([Several parsers]) # AT_TEST([PREFIX], [DIRECTIVES]) # ------------------------------- # Generate and compile to *.o. Make sure there is no (allowed) YY* -# nor yy* identifiers in the header. Check that headers can be -# compiled by a C++ compiler. +# nor yy* identifiers in the header after applying api.prefix. Check +# that headers can be compiled by a C++ compiler. m4_pushdef([AT_TEST], [AT_BISON_OPTION_PUSHDEFS([%define api.prefix {$1_} $2]) AT_DATA_GRAMMAR([$1.y],