C and C++


LANG.STRUCT.DECL.ML : Multiple Declarations On Line

Summary

A single code line or statement contains more than one declaration.

Properties

Class Name Multiple Declarations On Line
Significance style
Mnemonic LANG.STRUCT.DECL.ML
Categories
AUTOSARC++14 AUTOSARC++14:A7-1-7 Each expression statement and identifier declaration shall be placed on a separate line.
MisraC++2023 MisraC++2023:10.0.1 A declaration shall not declare more than one variable or member variable
CWE CWE:1078 Inappropriate Source Code Style or Formatting
CERT-C CERT-C:DCL04-C Do not declare more than one variable per declaration
JSF++ JSF++:152 Multiple variable declarations shall not be allowed on the same line.
JPL JPL:24 Place no more than one statement or declaration per line of text.
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="Multiple Declarations On Line"
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 i, j; /* 'Multiple Declarations On Line' warning issued here */

int a,    /* 'Multiple Declarations On Line' warning issued here */
    b;

Relevant Configuration File Parameters

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