C and C++


LANG.FUNCS.MODP : Modified Parameter

Summary

A function parameter is modified, or has its address taken, in the body of the function.

Properties

Class Name Modified Parameter
Significance style
Mnemonic LANG.FUNCS.MODP
Categories
MisraC2023 MisraC2023:17.8 A function parameter should not be modified
Misra2012 Misra2012:17.8 A function parameter should not be modified
Availability Available for C and C++.
Enabling Checks for this warning class are disabled by default, and require the unnormalized C ASTs for the project. To enable them, add the following WARNING_FILTER rule and RETAIN_UNNORMALIZED_C_AST specification to the project configuration file.
RETAIN_UNNORMALIZED_C_AST = Yes
WARNING_FILTER += allow class="Modified Parameter"
Note that retaining the unnormalized ASTs will increase the disk space used to store the project representation, and may make the analysis take longer.

Example

int lang_funcs_modp(int a,   /* 'Modified Parameter' warning issued here */
                    int b,   /* 'Modified Parameter' warning issued here */
                    int c){                                 /* not modified in body */
    int x = a++;
    int *y = &b;
    return x + *y + a + c;
}

Relevant Configuration File Parameters

The following configuration file parameters affect checks for this warning class.