File tree Expand file tree Collapse file tree 1 file changed +10
-1
lines changed
Expand file tree Collapse file tree 1 file changed +10
-1
lines changed Original file line number Diff line number Diff line change @@ -71,12 +71,21 @@ void unwindsett::parse_unwindset_one_loop(
7171 std::string function_id = id.substr (0 , last_dot_pos);
7272 std::string loop_nr_label = id.substr (last_dot_pos + 1 );
7373
74- if (loop_nr_label.empty () || !goto_model. can_produce_function (function_id) )
74+ if (loop_nr_label.empty ())
7575 {
7676 throw invalid_command_line_argument_exceptiont{
7777 " invalid loop identifier " + id, " unwindset" };
7878 }
7979
80+ if (!goto_model.can_produce_function (function_id))
81+ {
82+ messaget log{message_handler};
83+ log.warning () << " loop identifier " << id
84+ << " for non-existent function provided with unwindset"
85+ << messaget::eom;
86+ return ;
87+ }
88+
8089 const goto_functiont &goto_function =
8190 goto_model.get_goto_function (function_id);
8291 if (isdigit (loop_nr_label[0 ]))
You can’t perform that action at this time.
0 commit comments