File tree 1 file changed +20
-0
lines changed
1 file changed +20
-0
lines changed Original file line number Diff line number Diff line change @@ -582,13 +582,33 @@ void taint_algorithm_computing_summary_of_functiont::initialise_domain(
582
582
lvsa,
583
583
it,
584
584
*numbering);
585
+ if (asgn.rhs ().id ()==ID_side_effect)
586
+ {
587
+ const side_effect_exprt see=to_side_effect_expr (asgn.rhs ());
588
+ if (see.get_statement ()==ID_nondet)
589
+ {
590
+ const auto replace_it=
591
+ program->get_NONDET_retvals_replacements ().find (it);
592
+ assert (replace_it!=program->get_NONDET_retvals_replacements ().cend ());
593
+ collect_lvsa_access_paths (
594
+ replace_it->second ,
595
+ program->get_namespace (),
596
+ environment,
597
+ lvsa,
598
+ it,
599
+ *numbering);
600
+ }
601
+ }
602
+ else
603
+ {
585
604
collect_lvsa_access_paths (
586
605
asgn.rhs (),
587
606
program->get_namespace (),
588
607
environment,
589
608
lvsa,
590
609
it,
591
610
*numbering);
611
+ }
592
612
}
593
613
else if (it->type == ASSERT)
594
614
{
You can’t perform that action at this time.
0 commit comments