File tree Expand file tree Collapse file tree 5 files changed +3
-19
lines changed
regression/smv/syntax-errors Expand file tree Collapse file tree 5 files changed +3
-19
lines changed Original file line number Diff line number Diff line change 1
1
CORE
2
2
syntax2.smv
3
3
4
- ^file .* line 3: syntax error, unexpected VAR before 'VAR'$
4
+ ^file .* line 3: syntax error, unexpected VAR, expecting MODULE before 'VAR'$
5
5
^EXIT=1$
6
6
^SIGNAL=0$
7
7
--
Original file line number Diff line number Diff line change @@ -140,7 +140,6 @@ static void new_module(YYSTYPE &module)
140
140
PARSER.module =&PARSER.parse_tree .modules [name];
141
141
PARSER.module ->name =name;
142
142
PARSER.module ->base_name =stack_expr (module ).id_string ();
143
- PARSER.module ->used =true ;
144
143
}
145
144
146
145
/* ------------------------------------------------------------------------*/
@@ -236,8 +235,6 @@ static void new_module(YYSTYPE &module)
236
235
%%
237
236
238
237
start : modules
239
- | formula { PARSER.module ->add_ctlspec (stack_expr($1 ));
240
- PARSER.module ->used=true ; }
241
238
;
242
239
243
240
modules : module
Original file line number Diff line number Diff line change @@ -34,21 +34,11 @@ bool smv_languaget::parse(
34
34
{
35
35
smv_parsert smv_parser (message_handler);
36
36
37
- const std::string main_name=smv_module_symbol (" main" );
38
- smv_parser.module =&smv_parser.parse_tree .modules [main_name];
39
- smv_parser.module ->name =main_name;
40
- smv_parser.module ->base_name =" main" ;
41
-
42
37
smv_parser.set_file (path);
43
38
smv_parser.in =&instream;
44
39
45
40
bool result=smv_parser.parse ();
46
41
47
- // see if we used main
48
-
49
- if (!smv_parser.parse_tree .modules [main_name].used )
50
- smv_parser.parse_tree .modules .erase (main_name);
51
-
52
42
smv_parse_tree.swap (smv_parser.parse_tree );
53
43
54
44
return result;
Original file line number Diff line number Diff line change @@ -175,11 +175,8 @@ class smv_parse_treet
175
175
176
176
mc_varst vars;
177
177
enum_sett enum_set;
178
- bool used;
179
-
178
+
180
179
std::list<irep_idt> ports;
181
-
182
- modulet ():used(false ) { }
183
180
};
184
181
185
182
typedef std::unordered_map<irep_idt, modulet, irep_id_hash> modulest;
Original file line number Diff line number Diff line change @@ -34,7 +34,7 @@ class smv_parsert:public parsert
34
34
35
35
smv_parse_treet parse_tree;
36
36
smv_parse_treet::modulet *module ;
37
-
37
+
38
38
virtual bool parse ()
39
39
{
40
40
return yysmvparse ();
You can’t perform that action at this time.
0 commit comments