Skip to content

Commit

Permalink
SMV: clean up parser code
Browse files Browse the repository at this point in the history
This removes an unused functionality to read a CTL formula.
  • Loading branch information
kroening committed Feb 6, 2025
1 parent e6f0621 commit aa01c8f
Show file tree
Hide file tree
Showing 5 changed files with 3 additions and 19 deletions.
2 changes: 1 addition & 1 deletion regression/smv/syntax-errors/syntax2.desc
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
CORE
syntax2.smv

^file .* line 3: syntax error, unexpected VAR before 'VAR'$
^file .* line 3: syntax error, unexpected VAR, expecting MODULE before 'VAR'$
^EXIT=1$
^SIGNAL=0$
--
3 changes: 0 additions & 3 deletions src/smvlang/parser.y
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,6 @@ static void new_module(YYSTYPE &module)
PARSER.module=&PARSER.parse_tree.modules[name];
PARSER.module->name=name;
PARSER.module->base_name=stack_expr(module).id_string();
PARSER.module->used=true;
}

/*------------------------------------------------------------------------*/
Expand Down Expand Up @@ -236,8 +235,6 @@ static void new_module(YYSTYPE &module)
%%

start : modules
| formula { PARSER.module->add_ctlspec(stack_expr($1));
PARSER.module->used=true; }
;

modules : module
Expand Down
10 changes: 0 additions & 10 deletions src/smvlang/smv_language.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -34,21 +34,11 @@ bool smv_languaget::parse(
{
smv_parsert smv_parser(message_handler);

const std::string main_name=smv_module_symbol("main");
smv_parser.module=&smv_parser.parse_tree.modules[main_name];
smv_parser.module->name=main_name;
smv_parser.module->base_name="main";

smv_parser.set_file(path);
smv_parser.in=&instream;

bool result=smv_parser.parse();

// see if we used main

if(!smv_parser.parse_tree.modules[main_name].used)
smv_parser.parse_tree.modules.erase(main_name);

smv_parse_tree.swap(smv_parser.parse_tree);

return result;
Expand Down
5 changes: 1 addition & 4 deletions src/smvlang/smv_parse_tree.h
Original file line number Diff line number Diff line change
Expand Up @@ -175,11 +175,8 @@ class smv_parse_treet

mc_varst vars;
enum_sett enum_set;
bool used;


std::list<irep_idt> ports;

modulet():used(false) { }
};

typedef std::unordered_map<irep_idt, modulet, irep_id_hash> modulest;
Expand Down
2 changes: 1 addition & 1 deletion src/smvlang/smv_parser.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ class smv_parsert:public parsert

smv_parse_treet parse_tree;
smv_parse_treet::modulet *module;

virtual bool parse()
{
return yysmvparse();
Expand Down

0 comments on commit aa01c8f

Please sign in to comment.