Skip to content
Snippets Groups Projects
Commit f70cb658 authored by Jan Rochel's avatar Jan Rochel
Browse files

[e-acsl] fix logic variable escaping its scope

When translating a function we must ensure that it cannot re-use any
expressions resulting from translating logic variables from its call
site. One might think that this may not occur, since logic variables are
unique. However sometimes the same logic function needs to be translated
twice (with different signatures). In that case there are indeed
indentical logic variables for different C code to be generated, and
re-using that code would be erroneous.

See the pathological example from the previous commit.

This commit fixes this by clearing the map of logic bindings before
translating a function body.
parent 2ea357b6
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment