/usr/share/doc/libopentoken-doc/examples/wisi/test/empty_production_6.wy is in libopentoken-doc 6.0b-7.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | ;;; finding bug in parse table generator; nonterm followed by possibly empty nonterm
;;
;; also testing pending actions during conflict resolution; label_opt
;; action is not output until one parser terminates.
%{
(require 'wisi)
(require 'semantic/lex)
(require 'wisi-compile)
%}
%token <punctuation> COLON ":"
%token <punctuation> COLON_EQUAL ":="
%token <punctuation> SEMICOLON ";"
%keyword BEGIN "begin"
%keyword END "end"
%token <symbol> IDENTIFIER
%token <whitespace> WHITESPACE ""
%start compilation_unit
%conflict SHIFT/REDUCE in state label_opt, label_opt on token IDENTIFIER
%%
compilation_unit
: BEGIN sequence_of_statements END SEMICOLON
(setq wisi-test-success t)
;
statement
: label_opt IDENTIFIER COLON_EQUAL IDENTIFIER SEMICOLON
;
sequence_of_statements
: statement ;; label is included in statement
| sequence_of_statements statement
;
label_opt
: ;; empty
| IDENTIFIER COLON ;; on blocks, loops
(wisi-statement-action [1 block-start])
;
%%
;;; end of file
|