- Shared variables : potentially unprotected (warning shown in orange), protected (benign and shown in green)
- Unshared variables : unused (shown in grey), used (benign and not shown in any color since the proof aspect of Code Prover was not invoked)
Global variables - Used non-shared variable
37 views (last 30 days)
I would like to get more information on a polyspace warning that occurs in every source file (.c file) which has static global variables defined in it. The warning occurs for each defined global variable. The warning is as follows:
"Operations on variable <global_variable_name> do not interfere with each other."
The source file contains different functions that would be called from a different translation unit, and these functions can both read from and write to the global variables. I do not see any issue in defining them as static global variables inside the source file.
What is the reason for this warning and is something expected from my side as a software developer to fix this warning?
Note: This code is not intended for multitasking
Anirban on 16 Mar 2021
Edited: Anirban on 16 Mar 2021
Used non-shared variables are somewhat like green checks in Code Prover. They are not warnings. Since Code Prover reports all global variables, it does the following classification:
For more information, see Global Variables in Code Prover.
As you can see, shared protected globals and unshared used globals are benign, and you do not need to fix anything. Just like green checks on divisions tell that Code Prover did evaluate the status of all divisions for division by zero, these are a way to tell the user that Code Prover did evaluate the status of all global variables.
More Answers (0)
Code Verification Polyspace Code Prover Review Analysis Results Review Polyspace Code Prover Results in Polyspace User Interface Reports and Metrics Generate Reports