Check usage of Assignment blocks
Check ID:
mathworks.misra.AssignmentBlocks
Identify Assignment blocks that do not have block parameter Action if any output element is not assigned set to Error or Warning.
Description
This check applies to the Assignment block that is available in the Simulink block library under Simulink > Math Operations.
Following the recommendations of this check increases the likelihood of generating MISRA C:2012 compliant code for embedded applications, as well as code that complies with the CERT C, CWE, ISO/IEC TS 17961 standards.
Available with Embedded Coder® and Simulink® Check™.
Results and Recommended Actions
Condition | Recommended Action |
---|---|
The model or subsystem might contain Assignment blocks with incomplete array initialization that do not have block parameter Action if any output element is not assigned set to Error or Warning. | Set block parameter Action if any output element is not assigned to one of the recommended values:
|
Capabilities and Limitations
Runs on library models.
Analyzes content of library linked blocks.
Analyzes content in masked subsystems.
If you have a Simulink Check license, allows exclusions of blocks and charts.
Edit-Time Checking
This check is supported by edit-time checking. However, the following check condition is not supported because edit-time checking is unable to determine whether the Assignment block is in an Iterator subsystem.
Set block parameter Action if any output element is not assigned to one of the recommended values:
Error, if Assignment block is not in an Iterator subsystem.
Warning, if Assignment block is in an Iterator subsystem.
See Also
MISRA C:2012, Rule 9.1
ISO/IEC TS 17961: 2013, uninitref
CERT C, EXP33-C
CWE, CWE-908
MISRA C (Embedded Coder)