| Real-Time Workshop® Embedded Coder™ | ![]() |

| On this page… |
|---|
Control optimizations for readability in generated code.
This tab appears only if you specify an ERT based system target file.
Specify parenthesization style for generated code.
Default: Nominal (Optimize for readability)
Inserts parentheses only where required by ANSI®[1] C or C++, or needed to override default precedence. For example:
isZero = var == 0;
if (isZero == 1 && (value < 3.7 ||value > 9.27)) {
/* code */
}Inserts parentheses in a way that compromises between readability and visual complexity. The exact definition can change between releases.
Includes parentheses everywhere needed to specify meaning without relying on operator precedence. Code generated with this setting conforms to MISRA®[2] requirements. For example:
isZero = (var == 0);
if ((isZero == 1) && ((value < 3.7) || (value > 9.27))) {
/* code */
}
| Parameter: ParenthesesLevel |
| Type: string |
| Value: 'Minimum' | 'Nominal' | 'Maximum' |
| Default: 'Nominal' |
| Application | Setting |
|---|---|
| Debugging | Nominal (Optimized for readability) |
| Traceability | Nominal (Optimized for readability) |
| Efficiency | Minimum (Rely on C/C++ operators for precedence) |
| Safety precaution | Maximum (Specify precedence with parentheses) |
Specify whether to preserve order of operands in expressions.
Default: off
Preserves the expression order specified in the model. Select this option to increase readability of the code or for code traceability purposes.
A*(B+C)
Optimizes efficiency of code for nonoptimized compilers by reordering commutable operands to make expressions left-recursive. For example:
(B+C)*A
| Parameter: PreserveExpressionOrder |
| Type: string |
| Value: 'on' | 'off' |
| Default: 'off' |
| Application | Setting |
|---|---|
| Debugging | On |
| Traceability | On |
| Efficiency | Off |
| Safety precaution | On |
Specify whether to preserve empty primary condition expressions in if statements.
Default: off
Preserves empty primary condition expressions in if statements, such as the following, to increase the readability of the code or for code traceability purposes.
if expression1
else
statements2;
endOptimizes empty primary condition expressions in if statements by negating them. For example, consider the following if statement:
if expression1
else
statements2;
endBy default, the code generator negates this statement as follows:
if ~expression1
statements2;
end| Parameter: PreserveIfCondition |
| Type: string |
| Value: 'on' | 'off' |
| Default: 'off' |
| Application | Setting |
|---|---|
| Debugging | On |
| Traceability | On |
| Efficiency | Off |
| Safety precaution | Off |
[1] ANSI is a registered trademark of the American National Standards Institute, Inc.
[2] "MISRA" is a registered trademarks of MIRA Ltd, held on behalf of the MISRA Consortium.
![]() | Configuration Parameters | Real-Time Workshop Pane: Templates | ![]() |
| © 1984-2008- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |