1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396
|
// uncrustify policy
-passes(2) // number of analysis passes (higher values give better detection but slower)
-static_depth(2) // number of analyzed redirection for static variables
//-w2 // suppress informational messages
// -strong(AJX) // All typedefs must match exactly
-w3 // display informational messages
//-w4 // use the maximum warning level
//+fpn // warns about the use of pointer parameters without first checking for NULL
//+fsc // assumes string constants are const char*
// all checks from 0 to 599 are enabled by +w2
-e10 // Expecting identifier or other declarator
-e18 // symbol redefined
-e19 // useless declaration
-e14 // symbol previously defined
-e26 // expected an expression found const/return
-e30 // expected an integer constant
-e31 // redefinition of symbol
-e32 // field size should not be zero
-e36 // redefining the storage class of symbol
-e40 // undeclared identifier
-e46 // field type should be an integral or enumeration type
-e48 // bad type
-e49 // expected a typed
-e50 // attempted to take the address of a non-lvalue
-e52 // expected an lvalue
-e55 // bad type
-e56 // bad type
-e63 // expected an lvalue
-e64 // type mismatch
-e78 // typedef'd symbol used in expression
-e85 // array has dimension 0
-e96 // unmatched left brace for linkage specification
-e114 // inconsistent
-e119 // too many arguments
-e123 // macro defined with arguments
-e129 // declaration expected
-e200 // internal error
-e438 // last value assignd to variable not used
-e451 // header without include guard
-e457 // enable for checking multithreading
-e458 // enable for checking multithreading
-e459 // enable for checking multithreading
-e506 // allow constant value booleans
-e514 // unusual use of boolean expression
-e516 // symbol has arg type conflict
-e520 // highest operation lacks side effects
-e522 // highest operation lacks side effects
-e526 // symbol not defined
-e528 // symbol not referenced
-e534 // ignoring return value of function
-e537 // do not warn about repeated inclusion
-e574 // signed / unsigned mix with relational
-e578 // Declaration of symbol hides symbol
-e585 // not a valid Trigraph sequence
+e601 // Expected a type for symbol Symbol
+e602 // Comment within comment
+e603 // Symbol not initialized
+e604 // Returning address of auto variable
+e605 // Increase in pointer capability
+e606 // Non-ANSI escape sequence:
+e607 // Parameter of macro found within string
+e608 // Assigning to an array parameter
+e609 // Suspicious pointer conversion
+e610 // Suspicious pointer combination
+e611 // Suspicious cast
+e612 // Expected a declarator
-e613 // Possible use of null pointer
+e614 // auto aggregate initializer not constant
+e615 // auto aggregate initializer has side effects
+e616 // control flows into case/default
+e617 // String is both a module and an include file
+e618 // Storage class specified after a type
+e619 // Loss of precision (Context) (Pointer to Pointer)
+e620 // Suspicious constant (small L or one?)
+e621 // Identifier clash
+e622 // Size of argument no. Integer inconsistent with format
+e623 // redefining the storage class of symbol
+e624 // typedef redeclared
+e625 // auto symbol has unusual type modifier
+e626 // Integer inconsistent with format
+e627 // indirect object inconsistent with format
-e628 // no argument information provided for function
+e629 // static class for function is non standard
+e630 // ambiguous reference to symbol
+e631 // tag 'Symbol' defined differently at Location
+e632 // Assignment to strong type
+e633 // Assignment from a strong type
+e634 // Strong type mismatch in equality or conditional
+e635 // resetting strong parent of type
+e636 // ptr to strong type versus another type
+e637 // Expected index type for strong type
+e638 // Strong type mismatch for type in relational
+e639 // Strong type mismatch for type in binary operation
+e640 // Expected strong type 'Name' in Boolean context
-e641 // Converting enum to int
+e642 // Format char 'Char' not supported by wsprintf
+e643 // Loss of precision in pointer cast
+e644 // Variable may not have been initialized
+e645 // Symbol may not have been initialized
+e646 // case/default within Kind loop; may have been misplaced
+e647 // Suspicious truncation
+e648 // Overflow in computing constant for operation:
+e649 // Sign fill during constant shift
+e650 // Constant out of range for operator
+e651 // Potentially confusing initializer
-e652 // #define of symbol 'Symbol' declared previously
+e653 // Possible loss of fraction
+e654 // Option String obsolete; use -width(W,I)
-e655 // bit-wise operation uses (compatible) enum's
+e656 // Arithmetic operation uses (compatible) enum's
+e657 // Unusual (nonportable) anonymous struct or union
+e658 // Anonymous union assumed
+e659 // Nothing follows '}'
+e660 // Option requests removing an extent that is not on the list
+e661 // possible access of out-of-bounds pointer
+e662 // possible creation of out-of-bounds pointer
+e663 // Suspicious array to pointer conversion
+e664 // Left side of logical OR (||) or logical AND (&&) does not return
+e665 // Unparenthesized parameter Integer in macro is passed an expression
+e666 // Expression with side effects passed to repeated parameter
+e667 // Inconsistent use of qualifiers for symbol
+e668 // Possibly passing a null pointer to function
+e669 // Possible data overrun for function
+e670 // Possible access beyond array for function
+e671 // Possibly passing to function a negative value
+e672 // Possible memory leak in assignment to pointer
+e673 // Possibly inappropriate deallocation
+e674 // Returning address of auto through variable
+e675 // No prior semantics associated with symbol
+e676 // Possibly negative subscript
+e677 // sizeof used within preprocessor statement
+e678 // Member field length (Integer) too small for enum precision
+e679 // Suspicious Truncation in arithmetic expression combining with pointer
+e680 // Suspicious Truncation in arithmetic expression converted to pointer
+e681 // Loop is not entered
+e682 // sizeof applied to a parameter whose type is a sized array
+e683 // function 'Symbol' #define'd
+e684 // Passing address of auto variable into caller space
+e685 // Relational operator always evaluates to same result
+e686 // Option is suspicious
+e687 // Suspicious use of comma operator
+e688 // Cast used within preprocessor conditional statement
+e689 // Apparent end of comment ignored
+e690 // Possible access of pointer pointing Integer bytes past null character by operator
+e691 // Suspicious use of backslash
+e692 // Decimal character follows octal escape sequence
+e693 // Hexadecimal digit immediately after is suspicious in string literal.
+e694 // The type of constant (precision Integer) is dialect dependent
+e695 // Inline function defined without a storage-class specifier ('static' recommended)
+e696 // Variable has value that is out of range for operator
+e697 // Quasi-boolean values should be equality-compared only with 0
+e698 // Casual use of realloc can create a memory leak
+e701 // Shift left of signed int variable
-e702 // Shift right of signed int variable
+e703 // Shift left of signed long variable
+e704 // Shift right of signed long variable
+e705 // Integer nominally inconsistent with format
+e706 // indirect object inconsistent with format
+e707 // Mixing narrow and wide string literals in concatenation
+e708 // union initialization
-e712 // Loss of precision
-e713 // Loss of precision
-e714 // external variable not referenced
-e715 // Symbol not referenced
-e716 // while(1) found, allow endless loops
-e717 // do ... while(0) found
+e718 // Symbol undeclared, assumed to return int
+e719 // Too many arguments for format
+e720 // Boolean test of assignment
+e721 // Suspicious use of ;
+e722 // Suspicious use of ;
+e723 // Suspicious use of = -- A preprocessor definition began with an = sign.
+e725 // Expected positive indentation from Location
-e726 // Extraneous comma ignored
+e727 // local static variable not explicitly initialized
+e728 // global static variable not explicitly initialized
+e729 // exteral variable not explicitly initialized
-e730 // Boolean argument to function
-e731 // Boolean argument to equal/not equal
-e732 // Loss of sign
+e733 // Assigning address of auto variable to outer scope symbol
+e734 // Loss of precision int
+e735 // Loss of precision double
+e736 // Loss of precision float
-e737 // Loss of sign in promotion from Type1 to Type2
+e738 // Symbol not explicitly initialized
+e739 // Trigraph Sequence in literal (Quiet Change)
+e740 // Unusual pointer cast (incompatible indirect types)
+e741 // Unusual pointer cast (function qualification)
+e742 // Multiple character constant
+e743 // Negative character constant
+e744 // switch statement has no default
+e745 // function has no explicit type or class, int assumed
+e746 // call to function not made in the presence of a prototype
-e747 // (noisy when using bool) Significant prototype coercion Type1 to Type2
+e748 // Symbol is a register variable used with setjmp
-e749 // check for unused enum values
-e750 // ignore unused local macros
-e751 // check for unused local typedefs
-e752 // check for unused local declarations
-e753 // check for unused local struct, union or enum tag
-e754 // check for unused local structure member
-e755 // ignore unused global macros
-e756 // check for unused global typedefs
-e757 // check for unused global declarations
-e758 // check for unused global struct, union or enum tag
-e759 // check if symbol can be moved from header to module
+e760 // check for redundant macros
-e761 // check for redundant typedefs
+e762 // check for redundantly declared symbol
+e763 // check for redundant declaration for symbol
+e764 // check for switch statement without a case
-e765 // check for external symbols that could be made static
+e766 // check for unused headers
+e767 // check for differing macros
-e768 // check for global struct member that is never referenced
-e769 // check for global enumeration constant that is never referenced
+e770 // tag is defined identically at several locations
+e771 // check for uninitialized symbols
+e772 // check for uninitialized symbols
+e773 // Expression-like macro not parenthesized
-e774 // Boolean within 'String' always evaluates to [True/False]
+e775 // non-negative quantity cannot be less than zero
+e776 // Possible truncation of addition
+e777 // Testing float's for equality
-e778 // Constant expression evaluates to 0
+e779 // String constant in comparison operator
+e780 // Vacuous array element
+e782 // Line exceeds Integer characters
+e783 // Line does not end with new-line
+e784 // Nul character truncated from string
+e785 // Too few initializers for aggregate
+e786 // String concatenation within initializer
+e787 // enum constant should not be used within switch
-e788 // enum constant not used within defaulted switch
+e789 // Assigning address of auto variable to static
+e790 // Suspicious truncation, integral to float
+e791 // unusual option sequence
+e792 // void cast of void expression
+e793 // ANSI/ISO limit of String 'Name' exceeded
+e794 // Conceivable use of null pointer
+e795 // Conceivable division by 0
+e796 // Conceivable access of out-of-bounds pointer
+e797 // Conceivable creation of out-of-bounds pointer
+e798 // Redundant character
+e799 // numerical constant 'Integer' larger than unsigned long
-e801 // Use of goto is deprecated
+e802 // Conceivably passing a null pointer to function
+e803 // Conceivable data overrun for function
+e804 // Conceivable access beyond array for function
+e805 // Expected L"..." to initialize wide char string
+e806 // Small bit field is signed rather than unsigned
+e807 // Conceivably passing to function a negative value
+e808 // No explicit type given to symbol
+e809 // Possible return of address of auto through variable
+e810 // Arithmetic modification of custodial variable
+e811 // Possible deallocation of pointer alias
+e812 // static variable 'Symbol' has size 'Integer'
+e813 // auto variable 'Symbol' in function 'Symbol' has size 'Integer'
+e814 // useless declaration
+e815 // Arithmetic modification of unsaved pointer
+e816 // Non-ANSI format specification
+e817 // Conceivably negative subscript
-e818 // Pointer parameter could be declared ptr to const
+e820 // Boolean test of a parenthesized assignment
+e821 // Right hand side of assignment not parenthesized
+e825 // control flows into case/default without -fallthrough comment
+e826 // Suspicious pointer-to-pointer conversion
+e827 // Loop not reachable
+e828 // redefinition of functions
+e829 // dangerous header was used
+e830 // print error location indicator
+e831 // print error location indicator
+e832 // Parameter 'Symbol' not explicitly declared
+e833 // Symbol is typed differently in another module
-e834 // missing parentheses between operators
-e835 // A zero has been given as [left/right] argument to operator
+e836 // Conceivable access of pointer pointing Integer bytes past nul
+e838 // Previously assigned value to variable has not been used
+e839 // Storage class of symbol 'Symbol' assumed static
+e840 // Use of null character in a string literal
-e843 // Variable 'Symbol' (Location) could be declared as const
+e844 // Pointer variable could be declared as pointing to const
-e845 // The [left/right] argument to operator is certain to be 0
+e846 // Signedness of bit-field is implementation defined
+e847 // Thread has unprotected call to thread unsafe function
+e849 // Two enumerators have the same value
-e850 // loop index variable is modified in body of the for loop
-e864 // Expression possibly depends on order of evaluation
+e866 // Unusual use of 'String' in argument to sizeof
+e900 // print total number of errors/warnings
-e904 // Return statement before end of function 'Symbol'
+e905 // Non-literal format specifier used (with arguments)
-e909 // Implicit conversion from Type to bool
-e910 // Implicit conversion (Context) from 0 to pointer
-e911 // (noisy) Implicit expression promotion from Type to Type
-e912 // (noisy) Implicit binary conversion from Type1 to Type2
+e913 // Implicit adjustment of expected argument type from Type1 to Type2
+e914 // Implicit adjustment of function return value from Type1 to Type2
-e915 // (noisy) Implicit conversion (Context) Type1 to Type2
-e916 // Implicit pointer assignment conversion
-e917 // (noisy) Prototype coercion Type1 to Type2
-e918 // Prototype coercion (Context) of pointers
-e919 // (noisy) Implicit conversion (Context) Type to Type
-e920 // Cast from Type to void
-e931 // Both sides have side effects
+e932 // Passing near pointer to library function 'Symbol'
+e933 // Passing near pointer to far function (Context)
+e934 // taking address of near auto variable 'Symbol'
-e935 // (noisy) int within struct
+e936 // type is missing for function arguments
+e937 // type is missing for function arguments
+e939 // return type is missing for function
+e940 // omitted braces within an initialize
+e943 // Too few initializers for aggregate
+e945 // Undefined struct used with extern
-e946 // Relational or subtract operator applied to pointers
+e947 // Subtract operator applied to pointers
-e950 // Non-ISO/ANSI reserved word or construct:
+e951 // Pointer to incomplete type employed in operation
-e952 // Parameter could be declared const
-e953 // Variable could be declared as const
-e954 // Pointer variable could be declared as pointing to a const
+e955 // Parameter name missing from prototype for function
-e956 // (use for multithreaded SW) Non const, non volatile static or external variable
+e957 // Function defined without a prototype in scope
-e958 // (can help to save some bytes of memory) Padding of Integer byte(s) is required to align string on Integer byte boundary
+e962 // Macro defined identically at another location
+e963 // expect modifier (const, volatile) before type
-e964 // Header file not directly used in module
-e966 // Indirectly included header file 'FileName' not used in module
+e967 // Header file 'FileName' does not have a standard include guard
-e970 // (noisy) Use of modifier or type outside of a typedef
-e971 // (noisy) Use of 'char' without 'signed' or 'unsigned'
+e974 // print Worst case function for stack usage:
-e1013 // symbol is not a member of class
-e1015 // symbol not found in class
-e1025 // no function or template matches invocation
-e1039 // symbol is not a member of class
-e1040 // symbol is not a legal declaration within class
-e1042 // a least one class like operand is required with operator
-e1048 // expected a constant expression
-e1051 // symbol is both a function and a variable
-e1052 // a type was expected, class assumed
-e1054 // template variable declaration expects a type
-e1055 // symbol undeclared, assumed to return int
-e1057 // member cannot be used without an object
-e1058 // initializing a non-const reference
-e1065 // symbol not declared as "C"
-e1062 // template must be either a class or a function
-e1066 // symbol declared as "C"
-e1075 // Ambiguous reference to symbol
-e1077 // could not evaluate default template parameter
-e1086 // do not warn about compount literals
-e1087 // previous declaration is incompatible
-e1401 // member not initialized by constructor
-e1502 // object has no nonstatic data member
-e1526 // Member function not defined
-e1529 // symbol not first checking for assignment to this
-e1536 // exposing low access member
-e1540 // pointer member neither freed nor zeroed by destructor
-e1551 // function may throw exception in destructor
-e1554 // direct pointer copy of member within copy constructor
-e1561 // reference initialization causes loss of const/volatile
-e1566 // member might have been initialized by a separate function
-e1702 // operator is both an ordinary function and a member function
-e1704 // constructor has private access specification
-e1711 // function needs not to be virtual
-e1712 // default constructor not defined for class
-e1714 // Member function not referenced
-e1725 // class member is a reference
-e1732 // constructor for class has no assignment operator
-e1733 // constructor for class has no copy constructor
-e1736 // redundant access specifier
-e1740 // pointer member not directly freed or zeroed by destructor
-e1746 // parameter could be made const reference
-e1757 // discarded instance of post decrement/increment
-e1762 // member could be made const
-e1764 // reference parameter could be declared const
-e1776 // converting a string literal to char*
-e1786 // implicit conversion to bool
-e1788 // variable is referenced only by its constructor or destructor
-e1795 // Template was defined but not instantiated
-e1904 // allow old style comments
-e1923 // ignore defines that could be const variables
-e1924 // C-style cast
//scripts/pclint/au-sm123.lnt // also check Scott Meyers rules of all three books
//scripts/pclint/au-misra3.lnt // Misra 2012 rules
//scripts/pclint/au-barr10.lnt // Top 10 Bug-Killing Rules
//scripts/pclint/au-ds.lnt // Dan Saks
|