Skip to content

Commit e61836b

Browse files
committed
removal of string literals from lists of access paths (from LVA).
1 parent 64d2e0f commit e61836b

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

src/goto-analyzer/taint_summary.cpp

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -894,8 +894,22 @@ static void collect_lvsa_access_paths(
894894
//std::cerr << "Warning: ignoring unknown value-set entry for now.\n";
895895
continue;
896896
}
897+
897898
assert(target.id()==ID_object_descriptor);
898-
result.insert(transform_external_objects(to_object_descriptor_expr(target).object()));
899+
exprt const transformed_object =
900+
transform_external_objects(
901+
to_object_descriptor_expr(target).object()
902+
);
903+
904+
if (transformed_object.id()==ID_symbol)
905+
{
906+
std::string const& ident =
907+
as_string(transformed_object.get(ID_identifier));
908+
if (ident.find(".String.Literal.") != std::string::npos)
909+
continue;
910+
}
911+
912+
result.insert(transformed_object);
899913
}
900914
}
901915
else

0 commit comments

Comments
 (0)