Skip to content

Commit 7c49dd9

Browse files
authored
Merge pull request #908 from diffblue/smv-grammar-token-strings
SMV: add strings for tokens
2 parents f8aa6bd + 55785fd commit 7c49dd9

File tree

1 file changed

+69
-13
lines changed

1 file changed

+69
-13
lines changed

src/smvlang/parser.y

Lines changed: 69 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
%define parse.error verbose
2+
13
%{
24
#include "smv_parser.h"
35
#include "smv_typecheck.h"
@@ -153,19 +155,73 @@ static void new_module(YYSTYPE &module)
153155

154156
%}
155157

156-
%token AG_Token AX_Token AF_Token EG_Token EX_Token EF_Token
157-
158-
%token G_Token X_Token F_Token R_Token U_Token
159-
160-
%token INIT_Token TRANS_Token SPEC_Token LTLSPEC_Token VAR_Token DEFINE_Token ASSIGN_Token
161-
%token INVAR_Token FAIRNESS_Token MODULE_Token ARRAY_Token OF_Token
162-
%token DOTDOT_Token BOOLEAN_Token EXTERN_Token
163-
164-
%token NEXT_Token INC_Token DEC_Token CASE_Token ESAC_Token BECOMES_Token
165-
%token ADD_Token SUB_Token SWITCH_Token init_Token PLUS_Token
166-
167-
%token STRING_Token QSTRING_Token QUOTE_Token
168-
%token NUMBER_Token FALSE_Token TRUE_Token
158+
%token AG_Token "AG"
159+
%token AX_Token "AX"
160+
%token AF_Token "AF"
161+
%token EG_Token "EG"
162+
%token EX_Token "EX"
163+
%token EF_Token "EF"
164+
165+
%token G_Token "G"
166+
%token X_Token "X"
167+
%token F_Token "F"
168+
%token R_Token "R"
169+
%token U_Token "U"
170+
171+
%token INIT_Token "INIT"
172+
%token TRANS_Token "TRANS"
173+
%token SPEC_Token "SPEC"
174+
%token LTLSPEC_Token "LTLSPEC"
175+
%token VAR_Token "VAR"
176+
%token DEFINE_Token "DEFINE"
177+
%token ASSIGN_Token "ASSIGN"
178+
%token INVAR_Token "INVAR"
179+
%token FAIRNESS_Token "FAIRNESS"
180+
%token MODULE_Token "MODULE"
181+
%token ARRAY_Token "array"
182+
%token OF_Token "of"
183+
%token DOTDOT_Token ".."
184+
%token BOOLEAN_Token "boolean"
185+
%token EXTERN_Token "EXTERN"
186+
187+
%token IMPLIES_Token "->"
188+
%token EQUIV_Token "<->"
189+
%token IF_Token "?"
190+
%token XOR_Token "XOR"
191+
%token OR_Token "|"
192+
%token AND_Token "&"
193+
%token NOT_Token "!"
194+
%token MOD_Token "mod"
195+
%token UNION_Token "union"
196+
%token IN_Token "in"
197+
%token NOTIN_Token "notin"
198+
%token DOT_Token "."
199+
%token PLUS_Token "+"
200+
%token MINUS_Token "-"
201+
%token EQUAL_Token "="
202+
%token LE_Token "<="
203+
%token GE_Token ">="
204+
%token LT_Token "<"
205+
%token GT_Token ">"
206+
%token NOTEQUAL_Token "!="
207+
208+
%token INC_Token
209+
%token DEC_Token
210+
%token NEXT_Token "next"
211+
%token CASE_Token "case"
212+
%token ESAC_Token "esac"
213+
%token BECOMES_Token ":="
214+
%token ADD_Token
215+
%token SUB_Token
216+
%token SWITCH_Token "switch"
217+
%token init_Token "init"
218+
219+
%token STRING_Token "string"
220+
%token QSTRING_Token "quoted string"
221+
%token QUOTE_Token "'"
222+
%token NUMBER_Token "number"
223+
%token FALSE_Token "false"
224+
%token TRUE_Token "true"
169225

170226
/* operator precedence, low to high */
171227
%right IMPLIES_Token

0 commit comments

Comments
 (0)