X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/4982f078bfd98d50b9c97d2bcddb7a89d20ff3df..b506d9bfcb9e96d07264a43da7bdf136329dbc86:/data/c.m4 diff --git a/data/c.m4 b/data/c.m4 index 3954613b..ccb4969e 100644 --- a/data/c.m4 +++ b/data/c.m4 @@ -17,6 +17,7 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . +m4_include(b4_pkgdatadir/[c-like.m4]) # b4_tocpp(STRING) # ---------------- @@ -35,13 +36,15 @@ m4_define([b4_cpp_guard], # b4_cpp_guard_open(FILE) # b4_cpp_guard_close(FILE) # ------------------------ -# Open/close CPP inclusion guards for FILE. +# If FILE does not expand to nothing, open/close CPP inclusion guards for FILE. m4_define([b4_cpp_guard_open], +[m4_ifval(m4_quote($1), [#ifndef b4_cpp_guard([$1]) -# define b4_cpp_guard([$1])]) +# define b4_cpp_guard([$1])])]) m4_define([b4_cpp_guard_close], -[#endif b4_comment([!b4_cpp_guard([$1])])]) +[m4_ifval(m4_quote($1), +[#endif b4_comment([!b4_cpp_guard([$1])])])]) ## ---------------- ## @@ -417,17 +420,6 @@ m4_define([b4_case], $2 break;]) -# b4_dollar_dollar_(NAME, FIELD, DEFAULT-FIELD) -# --------------------------------------------- -# If FIELD (or DEFAULT-FIELD) is non-null, read it in pointer NAME, -# otherwise just dereference. -m4_define([b4_dollar_dollar_], -[m4_if([$2], [[]], - [m4_ifval([$3], [($1->$3)], - [(*$1)])], - [($1->$2)])]) - - # b4_symbol_actions(FILENAME, LINENO, # SYMBOL-TAG, SYMBOL-NUM, # SYMBOL-ACTION, SYMBOL-TYPENAME) @@ -437,16 +429,13 @@ m4_define([b4_dollar_dollar_], # Define b4_dollar_dollar([TYPE-NAME]), and b4_at_dollar, which are # invoked where $$ and @$ were specified by the user. m4_define([b4_symbol_actions], -[m4_pushdef([b4_dollar_dollar], - [b4_dollar_dollar_([yyvaluep], m4_dquote($][1), [$6])])dnl -m4_pushdef([b4_at_dollar], [(*yylocationp)])dnl +[b4_dollar_pushdef([(*yyvaluep)], [$6], [(*yylocationp)])dnl case $4: /* $3 */ b4_syncline([$2], [$1]) $5; b4_syncline([@oline@], [@ofile@]) break; -m4_popdef([b4_at_dollar])dnl -m4_popdef([b4_dollar_dollar])dnl +b4_dollar_popdef[]dnl ])