"One declaration per line" "..\ref\CRules\CodePres_1_DeclarationPerLine.rl" "Limited number of statements" "..\ref\CRules\CodePres_2_NumberStatements.rl" "Length of files." "..\ref\CRules\CodePres_3_FileLength.rl" "Limited number of first level statements per switch branch" "..\ref\CRules\CodePres_4_StatementSwitch.rl" "Limited total number of statements per switch branch" "..\ref\CRules\CodePres_5_StatementSwitch.rl" "No comment and statement on the same line." "..\ref\CRules\CodePres_6_CommentStatementLine.rl" "Included files have the extension .h." "..\ref\CRules\CodePres_7_ExtensionHeader.rl" "Enum boolean type" "..\ref\CRules\CodePres_8_EnumBoolean.rl" "Maximum number of parameters" "..\ref\CRules\CodePres_9_ParamFunction.rl" "One statement per line" "..\ref\CRules\CodePres_10_StatementPerLine.rl" "Control structure starts on a new line" "..\ref\CRules\CodePres_11_ControlStructure.rl" "Blank line after definition" "..\ref\CRules\CodePres_12_BlankLine.rl" "{ and } one the same line" "..\ref\CRules\CodePres_13_Brace.rl" "Comment for each declaration" "..\ref\CRules\CodePres_14_CommentDeclaration.rl" "Pointer declaration (*)" "..\ref\CRules\CodePres_15_PointerDeclaration.rl" "No space before and after '.' and '->'" "..\ref\CRules\CodePres_16_SpacingRef.rl" "No space between operators and operand" "..\ref\CRules\CodePres_17_SpacingOperator.rl" "Function parameters spacing" "..\ref\CRules\CodePres_18_SpacingParameter.rl" "Length of lines." "..\ref\CRules\CodePres_19_LineLength.rl" "Use of comments." "..\ref\CRules\CodePres_25_SingleLineComment.rl" "Definition comment." "..\ref\CRules\CodePres_26_CommentDefinition.rl" "Definitions" "..\ref\CRules\CodePres_28_Definitions.rl" "No space after unary operator" "..\ref\CRules\CodePres_29_SpacingUnaryOperator.rl" "Multiple assignments not recommended" "..\ref\CRules\Complexity_1_MultipleAssignment.rl" "Ternary operator not recommended (?:)" "..\ref\CRules\Complexity_2_NoTernaryOp.rl" "Unary + operator not recommended" "..\ref\CRules\Complexity_3_NoUnary+.rl" "Assignment operators not recommended" "..\ref\CRules\Complexity_4_NoAssignmentOp.rl" "use of the result of the call of a function" "..\ref\CRules\Complexity_5_CallResult.rl" "Use of ++ and -- " "..\ref\CRules\Complexity_6_++--Operators.rl" "Explicit cast forbidden" "..\ref\CRules\Complexity_7_NoCast.rl" "Initializations in multiple declarations are forbidden. " "..\ref\CRules\Complexity_8_NoMultipleInit.rl" "Only one instruction by macro" "..\ref\CRules\Complexity_9_Macro.rl" "No (*ptr).field" "..\ref\CRules\Complexity_10_FieldAddressing.rl" "(?:) and (,) operators " "..\ref\CRules\Complexity_11_NoCommaAndTernary.rl" "Operator_Unicity" "..\ref\CRules\Complexity_12_OperatorInCondition.rl" "Simple test statement not authorized" "..\ref\CRules\Complexity_13_SimpleTest.rl" "Only one inclusion level." "..\ref\CRules\Complexity_14_InclusionLevel.rl" "Inaccessible code not authorized" "..\ref\CRules\ControlFlow_1_NoDeadCode.rl" "Use of return" "..\ref\CRules\ControlFlow_2_FunctionReturn.rl" "Goto statement not authorized" "..\ref\CRules\ControlFlow_3_NoGoto.rl" "Then and else parts of if statements must not be void" "..\ref\CRules\ControlFlow_4_ThenElse.rl" "Break and continue statements not authorized in iterative structures" "..\ref\CRules\ControlFlow_5_NoBreakContinue.rl" "Default statement mandatory in a switch" "..\ref\CRules\ControlFlow_6_DefaultInSwitch.rl" "Break statement mandatory in the case clauses of a switch" "..\ref\CRules\ControlFlow_7_BreakInSwitch.rl" "Break mandatory in each path of the case clauses of a switch" "..\ref\CRules\ControlFlow_8_BreakPathInSwitch.rl" "Control structure nesting" "..\ref\CRules\ControlFlow_9_ControlStructureNesting.rl" "Switch is better than several if." "..\ref\CRules\ControlFlow_10_SwitchBetterThanIf.rl" "Not more than one break or continue in a loop." "..\ref\CRules\ControlFlow_11_OneBreakContinue.rl" "Identifiers must exceed X characters" "..\ref\CRules\Naming_1_MinLength.rl" "It is illegal to use the '_' character at the beginning or at the end of an identifier" "..\ref\CRules\Naming_2_Underscore.rl" "It is illegal to use two '_' characters consecutively in an identifier" "..\ref\CRules\Naming_3_DoubleUnderscore.rl" "It is illegal to use the '_' character in an identifier" "..\ref\CRules\Naming_4_NoUnderscore.rl" "Use of uppercase and lowercase characters in global variable identifiers" "..\ref\CRules\Naming_5_GlobalVariable.rl" "Use of uppercase and lowercase characters in local variable identifiers" "..\ref\CRules\Naming_6_LocalVariable.rl" "Use of uppercase and lowercase characters in function identifiers" "..\ref\CRules\Naming_7_Function.rl" "Use of characters in named constant identifiers" "..\ref\CRules\Naming_8_Constant.rl" "Use of characters in macro identifiers" "..\ref\CRules\Naming_9_Macro.rl" "Use of characters in type identifiers" "..\ref\CRules\Naming_10_Type.rl" "Use of characters in structured type fields" "..\ref\CRules\Naming_11_StructField.rl" "Naming of the parameters of main." "..\ref\CRules\Naming_12_MainParam.rl" "Enum constants shall be written uppercase." "..\ref\CRules\Naming_13_EnumConstant.rl" "Name prefix " "..\ref\CRules\Naming_15_Prefix.rl" "Symbol naming" "..\ref\CRules\Naming_16_SymbolNaming.rl" "C++ keywords not authorized" "..\ref\CRules\Portability_1_C++Keywords.rl" "It is illegal to use the '$' character in an identifier" "..\ref\CRules\Portability_2_NoDollar.rl" "Authorized characters" "..\ref\CRules\Portability_4_CharIdentifier.rl" "Use of >>" "..\ref\CRules\Portability_5_NoSignedRightShift.rl" "Only the exit function is authorized to finish main." "..\ref\CRules\Portability_6_MainNaming.rl" "No recursive inclusion." "..\ref\CRules\Portability_7_NoRecursiveHeader.rl" "Use of tabulation." "..\ref\CRules\Portability_13_NoTab.rl" "Sequential access to an array by pointer" "..\ref\CRules\Resource_1_AccessArray.rl" "Counter in for statements" "..\ref\CRules\Resource_2_ForCounter.rl" "Separate declaration and initialization" "..\ref\CRules\Resource_3_DeclarationInitSeparate.rl" "Combine declaration and initialization" "..\ref\CRules\Resource_4_DeclarationInitCombine.rl" "Declaration of variables local to a block of statements" "..\ref\CRules\Resource_5_LocalDeclaration.rl" "Declaration of global objects" "..\ref\CRules\Resource_6_GlobalDeclaration.rl" "Use of variables" "..\ref\CRules\Resource_7_VariableUse.rl" "Use of functions" "..\ref\CRules\Resource_8_FunctionUse.rl" "Use of parameters" "..\ref\CRules\Resource_9_ParameterUse.rl" "Global variable as parameter" "..\ref\CRules\Resource_10_NoGlobalParameter.rl" "Entry parameter" "..\ref\CRules\Resource_11_InputParameter.rl" "No extern in body file" "..\ref\CRules\Resource_12_NoExternBody.rl" "No static in function" "..\ref\CRules\Resource_13_NoStaticInFunc.rl" "Extern variable in header file" "..\ref\CRules\Resource_14_ExternHeader.rl" "No function definition in header file" "..\ref\CRules\Resource_15_NoFunctionHeader.rl" "File extension" "..\ref\CRules\Resource_16_FileExtension.rl" "Body inclusion" "..\ref\CRules\Resource_18_NoBodyInclusion.rl" "Bitfields are forbidden." "..\ref\CRules\Resource_19_NoBitfield.rl" "Auto attribut is forbidden" "..\ref\CRules\Resource_20_NoAuto.rl" "Initialization of arrays " "..\ref\CRules\Resource_21_ArrayInit.rl" "Initialization of a pointer " "..\ref\CRules\Resource_22_PointerInit.rl" "Variables of while statements must be initialized." "..\ref\CRules\Resource_23_WhileInit.rl" "Initialization at the definition of const and volatile variables." "..\ref\CRules\Resource_24_ConstVolatileInit.rl" "Use of typedef for unions and structures." "..\ref\CRules\Resource_26_TypedefUnionStruct.rl" "Initialisation of enum." "..\ref\CRules\Resource_30_EnumInit.rl" "Union and struct" "..\ref\CRules\Resource_31_StructUnion.rl" "Characters and escape sequences from ISO C standard." "..\Ref\CRules\MISRA_Rule5.rl" "Trigraphs are forbidden." "..\Ref\CRules\MISRA_Rule7.rl" "Multibyte characters" "..\Ref\CRules\MISRA_Rule8.rl" "No nested comments." "..\Ref\CRules\MISRA_Rule9.rl" "Identifiers must not exceed 31 characters." "..\Ref\CRules\MISRA_Rule11.rl" "Name of identifiers." "..\Ref\CRules\MISRA_Rule12.rl" "Basic types must be redefined." "..\Ref\CRules\MISRA_Rule13.rl" "Type char is not allowed" "..\Ref\CRules\MISRA_Rule14.rl" "Underlying bit representation of floating point numbers" "..\Ref\CRules\MISRA_Rule16.rl" "Typedef names shall not be reused." "..\Ref\CRules\MISRA_Rule17.rl" "Numeric constants and suffixes." "..\Ref\CRules\MISRA_Rule18.rl" "Octal constants" "..\Ref\CRules\MISRA_Rule19.rl" "Declaration before use." "..\Ref\CRules\MISRA_Rule20.rl" "Identifiers scope." "..\Ref\CRules\MISRA_Rule21.rl" "Object declarations." "..\Ref\CRules\MISRA_Rule22.rl" "Functions declaration." "..\Ref\CRules\MISRA_Rule23i.rl" "External definition of identifiers." "..\Ref\CRules\MISRA_Rule25.rl" "Declarations must be compatible." "..\Ref\CRules\MISRA_Rule26.rl" "External variables declaration." "..\Ref\CRules\MISRA_Rule27.rl" "Register storage class specifier." "..\Ref\CRules\MISRA_Rule28.rl" "Use of tag shall agree with its declaration" "..\Ref\CRules\MISRA_Rule29.rl" "Assign a value." "..\Ref\CRules\MISRA_Rule30.rl" "Structure and array initialisation." "..\Ref\CRules\MISRA_Rule31.rl" "Enum Initialisation" "..\Ref\CRules\MISRA_Rule32.rl" "Side effects in condition" "..\Ref\CRules\MISRA_Rule33.rl" "Logical Operands" "..\Ref\CRules\MISRA_Rule34.rl" "Assignment result must not be tested" "..\Ref\CRules\MISRA_Rule35.rl" "Bitwise operations shall not be performed on signed integer types." "..\Ref\CRules\MISRA_Rule37.rl" "Shift operator and right hand operand." "..\Ref\CRules\MISRA_Rule38.rl" "The unary minus operator shall not be applied to an unsigned expression." "..\Ref\CRules\MISRA_Rule39.rl" "Operator sizeof." "..\Ref\CRules\MISRA_Rule40.rl" "Operator ',' not allowed." "..\Ref\CRules\MISRA_Rule42.rl" "Conversions." "..\Ref\CRules\MISRA_Rule43.rl" "Redundant casts." "..\Ref\CRules\MISRA_Rule44.rl" "Cast and pointers." "..\Ref\CRules\MISRA_Rule45.rl" "Evaluation order of expressions." "..\Ref\CRules\MISRA_Rule46.rl" "Mixed precision arithmetic and cast." "..\Ref\CRules\MISRA_Rule48.rl" "Test between floats" "..\Ref\CRules\MISRA_Rule50.rl" "Inaccessible code not authorized." "..\Ref\CRules\MISRA_Rule52.rl" "Non-null statements." "..\Ref\CRules\MISRA_Rule53.rl" "Null statements" "..\Ref\CRules\MISRA_Rule54.rl" "No Labels." "..\Ref\CRules\MISRA_Rule55.rl" "Goto is forbidden." "..\Ref\CRules\MISRA_Rule56.rl" "Break and continue instructions are forbidden." "..\Ref\CRules\MISRA_Rules5758.rl" "Use of curly brackets" "..\Ref\CRules\MISRA_Rule59.rl" "Then and else parts of if statements must not be void" "..\Ref\CRules\MISRA_Rule60.rl" "Break statement mandatory in the case clauses of a switch" "..\Ref\CRules\MISRA_Rule61.rl" "Default statement mandatory in a switch." "..\Ref\CRules\MISRA_Rule62.rl" "No switch with only one case." "..\Ref\CRules\MISRA_Rule63.rl" "No switch without case." "..\Ref\CRules\MISRA_Rule64.rl" "Floating point variables shloud not be used as loop counters." "..\Ref\CRules\MISRA_Rule65.rl" "Loop control." "..\Ref\CRules\MISRA_Rule66.rl" "Counter in for statements" "..\Ref\CRules\MISRA_Rule67.rl" "Functions shall always be declared at file scope." "..\Ref\CRules\MISRA_Rule68.rl" "No functions with variable number of arguments." "..\Ref\CRules\MISRA_Rule69i.rl" "No functions with variable number of arguments." "..\Ref\CRules\MISRA_Rule69ii.rl" "Recursion not recommended" "..\Ref\CRules\MISRA_Rule70.rl" "Function prototyping." "..\Ref\CRules\MISRA_Rule71.rl" "Use of void type and functions." "..\Ref\CRules\MISRA_Rules7576.rl" "Matching numbers of parameters." "..\Ref\CRules\MISRA_Rule78.rl" "Values of void functions." "..\Ref\CRules\MISRA_Rule79.rl" "Void expressions and function parameters." "..\Ref\CRules\MISRA_Rule80.rl" "Function parameters and const." "..\Ref\CRules\MISRA_Rule81.rl" "Use of return" "..\Ref\CRules\MISRA_Rule82.rl" "Return in non-void fonctions." "..\Ref\CRules\MISRA_Rule83i.rl" "Return in non-void functions." "..\Ref\CRules\MISRA_Rule83ii.rl" "Return in non-void fonctions." "..\Ref\CRules\MISRA_Rule83iii.rl" "Return in void functions." "..\Ref\CRules\MISRA_Rule84.rl" "Function with no parameters." "..\Ref\CRules\MISRA_Rule85.rl" "Structure of the code." "..\Ref\CRules\MISRA_Rule87.rl" "#include syntax." "..\Ref\CRules\MISRA_Rules8889.rl" "Define and undefine in a block." "..\Ref\CRules\MISRA_Rule91.rl" "Use of #undef." "..\Ref\CRules\MISRA_Rule92.rl" "Functions and macros." "..\Ref\CRules\MISRA_Rule93.rl" "Function-like macro call." "..\Ref\CRules\MISRA_Rule94.rl" "Arguments to function-like macros." "..\Ref\CRules\MISRA_Rule95.rl" "Parentheses for macro occurences." "..\Ref\CRules\MISRA_Rule96i.rl" "Parentheses for macro." "..\Ref\CRules\MISRA_Rule96ii.rl" "Identifiers in pre-processor directives." "..\Ref\CRules\MISRA_Rule97.rl" "Occurences of # and ## in macros." "..\Ref\CRules\MISRA_Rule98.rl" "Comment of the #pragma directives." "..\Ref\CRules\MISRA_Rule99.rl" "Operator defined." "..\Ref\CRules\MISRA_Rule100.rl" "Pointer arithmetic." "..\Ref\CRules\MISRA_Rule101.rl" "Limitation of the reference complexity." "..\Ref\CRules\MISRA_Rule102.rl" "Relational operators and pointers." "..\Ref\CRules\MISRA_Rule103.rl" "Pointers to functions." "..\Ref\CRules\MISRA_Rule104.rl" "Pointers to functions." "..\Ref\CRules\MISRA_Rule105.rl" "Address assignment." "..\Ref\CRules\MISRA_Rule106.rl" "Null pointer" "..\Ref\CRules\MISRA_Rule107.rl" "Members of structures and unions." "..\Ref\CRules\MISRA_Rule108.rl" "Variable storage." "..\Ref\CRules\MISRA_Rule109.rl" "Unions access." "..\Ref\CRules\MISRA_Rule110.rl" "Type of bitfields." "..\Ref\CRules\MISRA_Rule111.rl" "Length of signed int bit fields" "..\Ref\CRules\MISRA_Rule112.rl" "Members of structure and unions shall be named." "..\Ref\CRules\MISRA_Rule113.rl" "Define and undef standard names." "..\Ref\CRules\MISRA_Rule114i.rl" "Define and undef standard names." "..\Ref\CRules\MISRA_Rule114ii.rl" "Standard library functions name." "..\Ref\CRules\MISRA_Rule115.rl" "Dynamic heap memory." "..\Ref\CRules\MISRA_Rule118.rl" "Error indicator errno." "..\Ref\CRules\MISRA_Rule119.rl" "No offsetof macro." "..\Ref\CRules\MISRA_Rule120.rl" "No ." "..\Ref\CRules\MISRA_Rule121Fct.rl" "Forbidden #include." "..\Ref\CRules\MISRA_Rules121124Include.rl" "No setjmp macro or longjmp function." "..\Ref\CRules\MISRA_Rule122.rl" "No ." "..\Ref\CRules\MISRA_Rule123.rl" "No ." "..\Ref\CRules\MISRA_Rule124Fct.rl" "No atof, atoi or atol functions." "..\Ref\CRules\MISRA_Rule125.rl" "No abort, exit, getenv or system functions." "..\Ref\CRules\MISRA_Rule126.rl" "No ." "..\Ref\CRules\MISRA_Rule127.rl"