Files
bison/tests
Akim Demaille 6376364120 muscles: fix handling of the "@'" escape
When we use `b4_` or `m4_` somewhere in the input, it is escaped as
`b4@'_`/`m4@'_` so that the warning about unexpanded b4_foo/m4_foo
macros does not fire.

But in the case of muscles, the `@'` escape was not recognized, and an
assertion was triggered.

Reported by Han Zheng.
<https://github.com/akimd/bison/issues/91>

* src/muscle-tab.c (COMMON_DECODE): Handle `@'`.
* tests/skeletons.at (Suspicious sequences): Check that case.
2022-09-04 08:51:53 +02:00
..
2021-01-30 14:32:00 +01:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00
2022-01-15 11:16:30 -08:00

AT_BISON_OPTION_PUSHDEFS/AT_BISON_OPTION_POPDEFS

These two macros must be given the (main) directives so that they define a number of other macros to:

  • what the language is (so what compiler tool chain to use, what definition of yylex/yyerror, etc.)
  • what skeleton is used

Keywords

The following keywords are used to label tests (with AT_KEYWORDS(category)). Please follow them and avoid creating synonyms.

  • action
  • api.value.type
  • c++: c++ language
  • cex: counterexamples.
  • d: d language
  • deprec: deprecated features.
  • diagnostics
  • glr
  • graph
  • html: html reports
  • java
  • lac
  • %merge
  • multistart
  • push
  • report: for automaton dumps
  • %union
  • variant
  • yacc: POSIX yacc (%yacc)

Calculator

The grammar features several special directives:

  • !! YYERROR
  • !+ YYACCEPT
  • !- YYABORT
  • !* YYNOMEM