Polyspace assumption regarding global/static variable
1 view (last 30 days)
Show older comments
Dimo
on 7 Dec 2017
Edited: Alexandre De Barros
on 8 Dec 2017
Hello,
In R2015a in codeprov_ref.pdf (page 5-10) under External Variables topic is written:
Polyspace verification works on the principle that a global or static external variable could take any value within the range of its type.
I don't understand the meaning of the words * or static* here. Does it mean that static variable with file scope will also have full range?
0 Comments
Accepted Answer
Alexandre De Barros
on 8 Dec 2017
Edited: Alexandre De Barros
on 8 Dec 2017
Hello,
This notion of extern static variable is a little bit strange indeed. It no longer appears in the current version of the documentation.
Static variables are considered local to the file, and so they will not have full-range. A static variable is initialized to its initial value, if there is one, or to 0 without explicit initialization and keep this value unless it is assigned to a new value.
Static variables can still be set to full-range thanks to the main generator option "Variables to initialize" with the value 'all'. With this parameter, the global and static variables are considered as modified and can then take any value.
Alex
0 Comments
More Answers (0)
See Also
Categories
Find more on Code Prover Analysis Assumptions in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!