QA C Help - Message Index
MessageMessage Text
0009[Q] The length of this preprocessed source code line has exceeded the size of an internal buffer.
0040[Q] Definition of size_t differs from configured type.
0041[Q] Definition of ptrdiff_t differs from configured type.
0042[Q] Definition of wchar_t differs from configured type.
0097Recoverable dataflow problem. Analysis continues. Please inform Programming Research.
0159[Q] The maximum number of errors set by -maxerr has been exceeded - the analysis has been aborted.
0160[U] Using unsupported conversion specifier number %s.
0161[U] Unknown length modifier used with 'i' or 'd' conversion specifier, number %s.
0162[U] Unknown length modifier used with 'o' conversion specifier, number %s.
0163[U] Unknown length modifier used with 'u' conversion specifier, number %s.
0164[U] Unknown length modifier used with 'x' conversion specifier, number %s.
0165[U] Unknown length modifier used with 'X' conversion specifier, number %s.
0166[U] Unknown length modifier used with 'f' conversion specifier, number %s.
0167[U] Unknown length modifier used with 'e' conversion specifier, number %s.
0168[U] Unknown length modifier used with 'E' conversion specifier, number %s.
0169[U] Unknown length modifier used with 'g' conversion specifier, number %s.
0170[U] Unknown length modifier used with 'G' conversion specifier, number %s.
0171[U] Unknown length modifier used with 'c' conversion specifier, number %s.
0172[U] Unknown length modifier used with '%%' conversion specifier, number %s.
0173[U] Unknown length modifier used with 's' conversion specifier, number %s.
0174[U] Unknown length modifier used with 'n' conversion specifier, number %s.
0175[U] Unknown length modifier used with 'p' conversion specifier, number %s.
0176[U] Incomplete conversion specifier, number %s.
0177[U] Field width of format conversion specifier exceeds 509 characters.
0178[U] Precision of format conversion specifier exceeds 509 characters.
0179[U] Argument type does not match conversion specifier number %s.
0180[C99] Use of ll for conversion specifier.
0184[U] Insufficient arguments to satisfy conversion specifier, number %s.
0185[U] Call contains more arguments than conversion specifiers.
0186[U] A call to this function must include at least one argument.
0190[U] Using unsupported conversion specifier number %s.
0191[U] Unknown length modifier used with 'd/i/n' conversion specifier, number %s.
0192[U] Unknown length modifier used with 'o' conversion specifier, number %s.
0193[U] Unknown length modifier used with 'u' conversion specifier, number %s.
0194[U] Unknown length modifier used with 'x/X' conversion specifier, number %s.
0195[U] Unknown length modifier used with 'e/E/f/F/g/G' conversion specifier, number %s.
0196[U] Unknown length modifier used with 's' conversion specifier, number %s.
0197[U] Unknown length modifier used with 'p' conversion specifier, number %s.
0198[U] Unknown length modifier used with '%%' conversion specifier, number %s.
0199[U] Unknown length modifier used with '[' conversion specifier, number %s.
0200[U] Unknown length modifier used with 'c' conversion specifier, number %s.
0201[U] Incomplete conversion specifier, number %s.
0202[I] '-' character in '[]' conversion specification is implementation defined.
0203[U] Value of character prior to '-' in '[]' is greater than following character.
0204[U] Field width of format conversion specifier exceeds 509 characters.
0206[U] Argument type does not match conversion specifier number %s.
0207[U] 'scanf' expects address of objects being stored into.
0208[U] Same character occurs in scanset more than once.
0231[S] Character constant contains an invalid hex escape sequence.
0232[C] Value of hex escape sequence is not representable in type 'unsigned char'.
0233[C] Value of octal escape sequence is not representable in type 'unsigned char'.
0234[S] String literal contains an invalid hex escape sequence.
0235[U] Unknown escape sequence.
0240[E] This file contains the control-M character at the end of a line.
0241[E] This file contains the control-Z character - was this transferred from a PC?
0244[C] Value of character constant is not representable in type 'int'.
0245[S] Empty character constant.
0246[E] Binary integer constants are a language extension.
0249[S] Character constant contains a new-line character.
0250[S] Character constant contains a single backslash character.
0251[S] Character constant contains a trigraph representation of a single backslash character.
0257[S] String literal is not terminated. A trigraph has been used in the construction of an escape sequence.
0258[S] String literal is not terminated. A backslash character has been used to define an escape sequence.
0259[S] String literal is not terminated.
0261[C] Comment still open at end of included file.
0268[S] Comment open at end of translation unit.
0269[S] Unexpected end of file.
0271[U] Left shift operation on constant signed expression generating an undefined value.
0272[I] Apparent conversion of integer expression to a signed integer type which cannot represent the value.
0273[I] Definite conversion of integer expression to a signed integer type which cannot represent the value.
0274[I] Implicit conversion of integer constant expression to a signed integer type which cannot represent the value.
0275[U] Floating value is out of range for conversion to destination type.
0277Implicit conversion of a constant negative value to an unsigned type.
0278[C] Overflow in signed arithmetic operation on constant operands.
0280Implicit conversion of constant negative value which assumes a two's complement representation of signed values.
0281Definite use of a negative value which assumes a two's complement representation of signed values.
0282Apparent use of a negative value which assumes a two's complement implementation of signed values.
0284[I] Multiple character constants have implementation defined values.
0285[I] Character constant contains character which is not a member of the basic source character set.
0286[I] String literal contains character which is not a member of the basic source character set.
0287[I] Header name contains character which is not a member of the basic source character set.
0288[I] Source file '%s' has comments containing characters which are not members of the basic source character set.
0289[I] Source file '%s' has preprocessing tokens containing characters which are not members of the basic source character set.
0290Definite conversion of a negative value to an unsigned type.
0291Apparent conversion of a negative value to an unsigned type.
0292[I] Source file '%s' has comments containing one of the characters '$', '@' or '`'.
0294[U] Definite signed left shift operation generating an undefined value.
0295[U] Apparent signed left shift operation generating an undefined value.
0296[U] Definite overflow in signed arithmetic operation.
0297[U] Apparent overflow in signed arithmetic operation.
0299[I] Source file '%s' includes #pragma directives containing characters which are not members of the basic source character set.
0301[u] Cast between a pointer to object and a floating type.
0302[u] Cast between a pointer to function and a floating type.
0303[I] Cast between a pointer to volatile object and an integral type.
0304[U] The address of an array declared 'register' may not be computed.
0305[I] Cast between a pointer to function and an integral type.
0306[I] Cast between a pointer to object and an integral type.
0307[u] Cast between a pointer to object and a pointer to function.
0308Non-portable cast involving pointer to an incomplete type.
0309[U] Integral type is not large enough to hold a pointer value.
0310Casting to different object pointer type.
0311Dangerous pointer cast results in loss of const qualification.
0312Dangerous pointer cast results in loss of volatile qualification.
0313Casting to different function pointer type.
0314[I] Cast from a pointer to object type to a pointer to void.
0315[I] Implicit conversion from a pointer to object type to a pointer to void.
0316[I] Cast from a pointer to void to a pointer to object type.
0317[I] Implicit conversion from a pointer to void to a pointer to object type.
0318Redundant type qualifier used in cast
0320[C99] Declaration within 'for' statement.
0321[C] Declaration within 'for' statement defines an identifier '%s' which is not an object.
0322[C] Illegal storage class specifier used in 'for' statement declaration.
0336Macro defined as an octal constant.
0337[U] String literal has undefined value. This may be a result of using '#' on \\.
0338[C] Octal or hex escape sequence value is too large for 'unsigned char' or 'wchar_t' type.
0339Octal constant used.
0340Using the '#error' preprocessing directive.
0341Using the stringify operator '#'.
0342Using the glue operator '##'.
0343Using string literal concatenation.
0344Using function prototype syntax.
0345Using the keyword 'void'.
0346Using one of the keywords 'signed', 'const' or 'volatile'.
0347Using 'extern' in the definition of a global variable.
0348Using a bit-field.
0349Using the unary '+' operator.
0350Using the keyword 'enum'.
0351Using an initializer when defining an automatic object of struct, union or array type.
0352Using the '#elif' preprocessing directive.
0360An expression of pointer type is being converted to type _Bool on assignment.
0361An expression of pointer type is being cast to type _Bool.
0362An expression of essentially Boolean type is being cast to a pointer.
0371[L] Nesting levels of blocks exceeds 127 - program does not conform strictly to ISO:C99.
0372[L] More than 63 levels of nested conditional inclusion - program does not conform strictly to ISO:C99.
0375[L] Nesting of parenthesized expressions exceeds 63 - program does not conform strictly to ISO:C99.
0380[L] Number of macro definitions exceeds 4095 - program does not conform strictly to ISO:C99.
0388[L] '#include "%s"' causes nesting to exceed 15 levels - program does not conform strictly to ISO:C99.
0390[L] Number of members in 'struct' or 'union' exceeds 1023 - program does not conform strictly to ISO:C99.
0391[L] Number of enumeration constants exceeds 1023 - program does not conform strictly to ISO:C99.
0392[L] Nesting of 'struct' or 'union' types exceeds 63 - program does not conform strictly to ISO:C99.
0400[U] '%s' is modified more than once between sequence points - evaluation order unspecified.
0401[U] '%s' may be modified more than once between sequence points - evaluation order unspecified.
0402[U] '%s' is modified and accessed between sequence points - evaluation order unspecified.
0403[U] '%s' may be modified and accessed between sequence points - evaluation order unspecified.
0410[L] Nesting of parentheses exceeds 32 - program does not conform strictly to ISO:C90.
0422[C] Function call contains fewer arguments than prototype specifies.
0423[C] Function call contains more arguments than prototype specifies.
0426[C] Called function has incomplete return type.
0427[C] Object identifier used as if it were a function or a function pointer identifier.
0428Function identifier is not followed by () but a function call may be intended.
0429[C] Function argument is not of arithmetic type.
0430[C] Function argument is not of compatible 'struct'/'union' type.
0431[C] Function argument points to a more heavily qualified type.
0432[C] Function argument is not of compatible pointer type.
0434[S] The identifier '%s' has not been declared.
0435[C] The 'struct'/'union' member '%s' does not exist.
0436[C] Left operand of '.' must be a 'struct' or 'union' object.
0437[C] Left operand of '->' must be a pointer to a 'struct' or 'union' object.
0446[C] Operand of ++/-- must have scalar (arithmetic or pointer) type.
0447[C] Operand of ++/-- must be a modifiable object.
0448[C] Operand of ++/-- must not be a pointer to an object of unknown size.
0449[C] Operand of ++/-- must not be a pointer to a function.
0450[C] An expression of array type cannot be cast.
0451[C] Subscripting requires a pointer (or array lvalue).
0452[C] Cannot subscript a pointer to an object of unknown size.
0453[C] An array subscript must have integral type.
0454[C] The address-of operator '&' cannot be applied to an object declared with 'register'.
0456[C] This expression does not have an address - '&' may only be applied to an lvalue or a function designator.
0457[C] The address-of operator '&' cannot be applied to a bit-field.
0458[C] Indirection operator '*' requires operand of pointer type.
0466[C] Unary '+' requires arithmetic operand.
0467[C] Operand of '!' must have scalar (arithmetic or pointer) type.
0468[C] Unary '-' requires arithmetic operand.
0469[C] Bitwise not '~' requires integral operand.
0473[Q] Result of 'sizeof' operation will not fit in configured type for 'size_t'.
0475[u] Operand of 'sizeof' is an expression designating a bit-field.
0476[C] 'sizeof' cannot be applied to a bit-field.
0477[C] 'sizeof' cannot be applied to a function.
0478[C] 'sizeof' cannot be applied to an object of unknown size.
0481[C] Only scalar expressions may be cast to other types.
0482[C] Expressions may only be cast to 'void' or scalar types.
0483[C] A pointer to an object of unknown size cannot be the operand of an addition operator.
0484[C] A pointer to an object of unknown size cannot be the operand of a subtraction operator.
0485[C] Only integral expressions may be added to pointers.
0486[C] Only integral expressions and compatible pointers may be subtracted from pointers.
0487[C] If two pointers are subtracted, they must be pointers that address compatible types.
0488Performing pointer arithmetic.
0489The integer value 1 is being added or subtracted from a pointer.
0490Relational operator used to compare two pointers.
0491Array subscripting applied to an object of pointer type.
0492Array subscripting applied to a function parameter declared as a pointer.
0493[C] Type of left operand is not compatible with this operator.
0494[C] Type of right operand is not compatible with this operator.
0495[C] Left operand of '%', '<<', '>>', '&', '^' or '|' must have integral type.
0496[C] Right operand of '%', '<<', '>>', '&', '^' or '|' must have integral type.
0499Right operand of shift operator is greater than or equal to the width of the essential type of the left operand.
0500[U] Right operand of shift operator is negative - this is undefined.
0501[U] Right operand of shift operator is too large - this is undefined.
0502A right shift on signed data may be an arithmetic or a logical shift.
0503[U] Dereference of constant NULL pointer.
0504[U] Definite dereference of NULL pointer.
0505[U] Apparent dereference of NULL pointer.
0506Possible dereference of NULL pointer.
0507[u] Arithmetic operation on constant NULL pointer.
0508[u] Definite arithmetic operation on NULL pointer.
0509[u] Apparent arithmetic operation on NULL pointer.
0510Possible arithmetic operation on NULL pointer.
0513[C] Relational operator used to compare pointers to incompatible types.
0514[C] Relational operator used to compare a pointer with an incompatible operand.
0515[C] Equality operator used to compare a pointer with an incompatible operand.
0536[C] First operand of '&&', '||' or '?' must have scalar (arithmetic or pointer) type.
0537[C] Second operand of '&&' or '||' must have scalar (arithmetic or pointer) type.
0540[C] 2nd and 3rd operands of conditional operator '?' must have compatible types.
0541[C] Argument no. %s does not have object type.
0542[C] Controlling expression must have scalar (arithmetic or pointer) type.
0543[U] 'void' expressions have no value and may not be used in expressions.
0544[U] The value of an incomplete 'union' may not be used.
0545[U] The value of an incomplete 'struct' may not be used.
0546[C] 'enum %s' has unknown content. Use of an enum tag with undefined content is not permitted.
0547[C] This declaration of tag '%s' conflicts with a previous declaration.
0550[C] Left operand of '+=' or '-=' is a pointer to an object of unknown size.
0551[E] Cast may not operate on the left operand of the assignment operator.
0553Translation unit contains no object or function definitions with external linkage.
0554[C] 'static %s()' has been declared and called but no definition has been given.
0555[C] Invalid assignment to object of void type or array type.
0556[C] Left operand of assignment must be a modifiable object.
0557[C] Right operand of assignment is not of arithmetic type.
0558[C] Right operand of '+=' or '-=' must have integral type when left operand is a pointer.
0559[C] Right operand of '<<=', '>>=', '&=', '|=', '^=' or '%=' must have integral type.
0560[C] Left operand of '<<=', '>>=', '&=', '|=', '^=' or '%=' must have integral type.
0561[C] Right operand of assignment is not of compatible 'struct'/'union' type.
0562[C] Right operand of assignment points to a more heavily qualified type.
0563[C] Right operand of assignment is not of compatible pointer type.
0564[C] Left operand of assignment must be an lvalue (it must designate an object).
0565[C] Left operand of '+=' or '-=' must be of arithmetic or pointer to object type.
0570This switch case label of 'essential type' '%1s', is not consistent with a controlling expression of essential type '%2s'.
0571This switch case label of 'essential type' '%1s' is not consistent with a controlling expression which has an essential type of higher rank (%2s).
0572This switch case label of 'essential type' '%1s' is not consistent with a controlling expression which has an essential type of lower rank (%2s).
0580[C] Constant is too large to be representable.
0581[I] Floating-point constant may be too small to be representable.
0584Possible division by zero.
0585[U] Apparent division by zero.
0586[U] Division by constant zero.
0587[U] Definite division by zero.
0588[C] Width of bit-field must be an integral constant expression.
0589[C] Enumeration constant must be an integral constant expression.
0590[C] Array bound must be an integral constant expression.
0591[C] A 'case' label must be an integral constant expression.
0594Negative 'case' label expression is incompatible with unsigned controlling expression in 'switch' statement.
0596Value of 'case' label expression is too large for type of controlling expression in 'switch' statement.
0597Type of 'case' label expression is not consistent with type of controlling expression in 'switch' statement.
0601[E] Function 'main()' is not of type 'int (void)' or 'int (int, char *[])'.
0602[U] The identifier '%s' is reserved for use by the library.
0604[C99] Declaration appears after statements in a compound statement.
0605[C] A declaration must declare a tag or an identifier.
0606Object '%s' is declared using typedefs which are different to those in a previous declaration.
0609[L] More than 12 pointer, array or function declarators modifying a declaration - program does not conform strictly to ISO:C90.
0611[L] Nesting of 'struct' or 'union' types exceeds 15 - program does not conform strictly to ISO:C90.
0612[L] Size of object '%s' exceeds 32767 bytes - program does not conform strictly to ISO:C90.
0614[L] More than 127 block scope identifiers defined within a block - program does not conform strictly to ISO:C90.
0616[C] Illegal combination of type specifiers or storage class specifiers.
0617[C99] 'const' qualifier has been duplicated.
0618[C99] 'volatile' qualifier has been duplicated.
0619[C] The identifier '%s' has already been defined in the current scope within the ordinary identifier namespace.
0620[C] Cannot initialize '%s' because it has unknown size.
0621[C] The struct/union '%s' cannot be initialized because it has unknown size.
0622[C] The identifier '%s' has been declared both with and without linkage in the same scope.
0623[U] '%s' has incomplete type and no linkage - this is undefined.
0624Function '%s' is declared using typedefs which are different to those in a previous declaration.
0625[U] '%s' has been declared with both internal and external linkage - the behaviour is undefined.
0626[U] '%s' has different type to previous declaration (which is no longer in scope).
0627[C] '%s' has different type to previous declaration in the same scope.
0628[C] '%s' has different type to previous declaration at wider scope.
0629[C] More than one definition of '%s' (with internal linkage).
0630[U] More than one definition of '%s' (with external linkage).
0631[C] More than one declaration of '%s' (with no linkage).
0632[U] Tentative definition of '%s' with internal linkage cannot have unknown size.
0633[E] Empty structures and unions are a language extension.
0634[I] Bit-fields in this struct/union have not been declared explicitly as unsigned or signed.
0635[E] Bit-fields in this struct/union have been declared with types other than int, signed int or unsigned int.
0636[U] There are no named members in this 'struct' or 'union'.
0637[S] Storage class specifier is illegal on 'struct' or 'union' member.
0638[C] Duplicate member name '%s' in 'struct' or 'union'.
0639[L] Number of members in 'struct' or 'union' exceeds 127 - program does not conform strictly to ISO:C90.
0640[C] '%s' in 'struct' or 'union' type may not have 'void' type.
0641[C] '%s' in 'struct' or 'union' type may not have function type.
0642[C] '%s' in 'struct' or 'union' type may not be an array of unknown size.
0643[C] '%s' in 'struct' or 'union' type may not be a 'struct' or 'union' with unknown content.
0644[C] Width of bit-field must be no bigger than the width of an 'int'.
0645[C] A zero width bit-field cannot be given a name.
0646[C] Enumeration constants must have values representable as 'int's.
0647[L] Number of enumeration constants exceeds 127 - program does not conform strictly to ISO:C90.
0648[S] Unexpected '{' encountered at file scope.
0649[C] K&R style declaration of parameters is not legal after a function header that includes a parameter list.
0650[C] Illegal storage class specifier on named function parameter.
0651[C] Missing type specifiers in function declaration.
0652Identifiers have been provided for some but not all of the parameters in a function prototype.
0653[C] Duplicate definition of 'struct', 'union' or 'enum' tag '%s'.
0654[U] Using 'const' or 'volatile' in a function return type is undefined.
0655[C] Illegal storage class specifier on unnamed function parameter.
0656[C] Function return type cannot be function or array type, or an incomplete struct/union (for function definition).
0657[C] Unnamed parameter specified in function definition.
0658[U] Parameter cannot have 'void' type.
0659[C] The identifier '%s' was not given in the parameter list.
0660[E] Defining an unnamed member in a struct or union. This is a language extension.
0661[U] '%s()' may not have a storage class specifier of 'static' when declared at block scope.
0662[E] Accessing a member of an unnamed struct or union member in this way is a language extension.
0664[C] Parameter specified with type 'void'.
0665[C] Two parameters have been declared with the same name '%s'.
0666[S] Only type qualifiers 'const' or 'volatile' are legal here in a pointer declaration.
0667[U] '%s' is declared as a typedef and may not be redeclared as an object at an inner scope without an explicit type specifier.
0668[U] '%s' is declared as a typedef and may not be redeclared as a member of a 'struct' or 'union' without an explicit type specifier.
0670[S] Function defined with invalid function header syntax.
0671[C] Initializer for object of arithmetic type is not of arithmetic type.
0672[U] The initializer for a 'struct', 'union' or array is not enclosed in braces.
0673[C] Initializer points to a more heavily qualified type.
0674[C] Initializer for pointer is of incompatible type.
0675[C] Initializer is not of compatible 'struct'/'union' type.
0676[u] Array element is of function type. Arrays cannot be constructed from function types.
0677[C] Array size is negative, or unrepresentable.
0678[u] Array element is array of unknown size. Arrays cannot be constructed from incomplete types.
0680[u] Array element is 'void' or an incomplete 'struct' or 'union'. Arrays cannot be constructed from incomplete types.
0682[C] Initializer for object of a character type is a string literal.
0683[C] Initializer for object of a character type is a wide string literal.
0684[C] Too many initializers.
0685[C] Initializer for any object with static storage duration must be a constant expression.
0686Array has fewer initializers than its declared size. Default initialization is applied to the remainder of the array elements.
0687Array has been initialized using concatenated strings and has fewer initializers than its declared size.
0688Array size determined by number of initializers which include concatenated string literals.
0689[u] 'Switch' statement will bypass the initialization of this local variable.
0690[C] String literal contains too many characters to initialize object.
0693Struct initializer is missing the optional {.
0694Array initializer is missing the optional {.
0695Type given in sizeof is not compatible with the pointed to type used to cast malloc.
0696The size of the allocated memory block is smaller than the size of the object type addressed by the pointer cast.
0697The size of the allocated memory block is not an integral multiple of the size of the object type addressed by the pointer cast.
0698[C] String literal used to initialize an object of incompatible type.
0699[C] String literal used to initialize a pointer of incompatible type.
0702Result of sizeof operator is not explicitly cast.
0703Structure has fewer initializers than its declared size. Default initialization is applied to the remainder of the members.
0706[U] Label '%s' is not unique within this function.
0708[C] No definition found for the label '%s' in this function.
0709[C] Initialization of locally declared 'extern %s' is illegal.
0715[L] Nesting of control structures (statements) exceeds 15 - program does not conform strictly to ISO:C90.
0722Enum constant not explicitly initialized, but a previous constant has been.
0723Initialize none, first only, or all entries in this enumerator list.
0735Using relational or logical operators in a 'switch' expression is usually a programming error.
0736[C] 'case' label does not have unique value within this 'switch' statement.
0737[C] More than one 'default' label found in 'switch' statement.
0738[C] Controlling expression in a 'switch' statement must have integral type.
0739[L] Number of 'case' labels exceeds 257 - program does not conform strictly to ISO:C90.
0744[U] '%s()' has been declared with a non void return type but ends with an implicit 'return ;' statement.
0745[U] 'return;' found in '%s()', which has been defined with a non-'void' return type.
0746[C] 'return exp;' found in '%s()' whose return type is 'void'.
0747[C] 'return exp;' found in '%s()' whose return type is qualified 'void'.
0750A union type specifier has been defined.
0752String literal passed as argument to function whose parameter is not a 'pointer to const'.
0753String literal assigned to pointer which is not a 'pointer to const'.
0755[C] 'return' expression is not of arithmetic type.
0756[C] 'return' expression is not of compatible 'struct'/'union' type.
0757[C] 'return' expression points to a more heavily qualified type.
0758[C] 'return' expression is not of compatible pointer type.
0759An object of union type has been defined.
0766[C] 'continue' statement found outside an iteration statement.
0767[C] 'break' statement found outside a 'switch' or iteration statement.
0768[C] 'case' or 'default' found outside a 'switch' statement.
0769A 'break' statement has been used to terminate an iteration statement.
0770A 'continue' statement has been used.
0771More than one 'break' statement has been used to terminate this iteration statement.
0774[C] 'auto' may not be specified on global declaration of '%s'.
0775[C] 'register' may not be specified on global declaration of '%s'.
0776[L] External identifier matches other external identifier(s) (e.g. '%s') in first 6 characters - program does not conform strictly to ISO:C90.
0777[U] External identifier does not differ from other identifier(s) (e.g. '%s') within the specified number of significant characters.
0778[L] Identifier matches other identifier(s) (e.g. '%s') in first 31 characters - program does not conform strictly to ISO:C90.
0779[U] Identifier does not differ from other identifier(s) (e.g. '%s') within the specified number of significant characters.
0780Another identifier '%s' is already in scope in a different namespace.
0781'%s' is being used as a structure/union member as well as being a label, tag or ordinary identifier.
0782This identifier, '%s', will still be in scope when the same identifier is declared later in a different namespace.
0783A subsequent declaration of '%s' means that it is being used both as a structure/union member and also as a label, tag or ordinary identifier.
0790This translation unit makes use of floating types.
0801[C] The '##' operator may not be the first token in a macro replacement list.
0802[C] The '##' operator may not be the last token in a macro replacement list.
0803[C] The '#' operator may only appear before a macro parameter.
0804[C] Macro parameter '%s' is not unique.
0805[S] Invalid identifier encountered in macro parameter list.
0806[S] Comma missing in macro parameter list.
0807[S] Identifier missing in macro parameter list.
0808[Q] '#include "%s"' causes itself to be included recursively. QA C terminates execution after 8 occurrences.
0809[U] The '#include' preprocessing directive has not been followed by <h-char-sequence> or "s-char-sequence".
0810[L] '#include "%s"' causes nesting to exceed 8 levels - program does not conform strictly to ISO:C90.
0811[C] The glue operator '##' may only appear in a '#define' preprocessing directive.
0812[C] Header name token '<text>' found outside '#include' preprocessing directive.
0813[U] Using any of the characters ' " or /* in '#include <%s>' gives undefined behaviour.
0814[U] Using the characters ' or /* in '#include "%s"' gives undefined behaviour.
0815[L] #include <...> file name does not conform strictly to ISO:C90.
0816[L] #include "..." file name does not conform strictly to ISO:C90.
0817[S] Closing quote or bracket '>' missing from include filename.
0818[Q] Cannot find '%s' - Perhaps the appropriate search path was not given ?
0819[Q] Cannot open '%s' - Perhaps the appropriate search path was not given ?
0820[S] '#include' requires a header name.
0821[C] '#include %s' does not identify a header or source file that can be processed.
0822[Q] Cannot find forceinclude file '%s'.
0823[S] Unexpected '#else' or '#elif' directive follows '#else'.
0824[S] Unexpected '#else' or '#elif' directive found outside a '#if' block.
0825[S] Unexpected '#endif' found outside a '#if' block.
0826[S] Unexpected ':' found without a preceding '?' in a '#if' or '#elif' expression.
0827[S] Missing ':' after '?' in a '#if' or '#elif' expression.
0828[L] More than 8 levels of nested conditional inclusion - program does not conform strictly to ISO:C90.
0829[S] Could not find '#endif' preprocessing directive to close '#if...'.
0830[E] Unrecognized text encountered after a preprocessing directive.
0831[E] Use of '\\' in this '#include' line is a PC extension - this usage is non-portable.
0832Macro substitution in #include preprocessing directive.
0833[S] '#ifdef' or '#ifndef' must be followed by an identifier.
0834[C] Function-like macro '%s()' is being redefined as an object-like macro.
0835[C] Macro '%s' is being redefined with different parameter names.
0836[U] Definition of macro named 'defined'.
0837[U] Use of '#undef' to remove the operator 'defined'.
0838File '%1s' has already been included directly from within file '%2s'.
0839File '%1s' has already been included indirectly from within file '%2s'.
0841Using '#undef'.
0842Using #define or #undef inside a function.
0843/ character used in an include file name.
0844[C] Macro '%s' is being redefined with a different replacement list.
0845[C] Object-like macro '%s' is being redefined as a function-like macro.
0846[S] '#define' must be followed by an identifier.
0847[S] '#undef' must be followed by an identifier.
0848[U] Attempting to #undef '%s', which is a predefined macro name.
0849[S] Preprocessing directive appears in the middle of a line.
0850[C99] Macro argument is empty.
0851[C] More arguments in macro call than specified in definition.
0852[C] Unable to find the ')' that marks the end of the macro call.
0853[U] Macro arguments contain a sequence of tokens that has the form of a preprocessing directive.
0854[U] Attempting to #define '%s', which is a predefined macro name.
0855Preprocessing results in a sequence of tokens that has the form of a preprocessing directive.
0856[C] Fewer arguments in macro call than specified in definition.
0857[L] Number of macro definitions exceeds 1024 - program does not conform strictly to ISO:C90.
0858[L] Number of macro parameters exceeds 31 - program does not conform strictly to ISO:C90.
0859[L] Number of arguments in macro call exceeds 31 - program does not conform strictly to ISO:C90.
0861This #include <%s> directive is redundant.
0862This #include "%s" directive is redundant.
0863[S] '#line' encountered without a following line number.
0864[U] '#line' directive specifies line number which is not in the range 1 to 32767.
0865[U] '#line' directive is badly formed.
0866[C] The string literal in a '#line' directive cannot be a 'wide string literal'.
0867[U] '#line' has not been followed by a line number.
0868An absolute path has been specified in a #include statement.
0869[Q] '#error' directive: %s Analysis terminated due to '#error' directive.
0872[U] Result of '##' operator is not a legal preprocessing token.
0873[C] Preprocessing token cannot be converted to an actual token.
0874[U] Character string literal and wide character string literal are adjacent.
0875[L] String literal exceeds 509 characters - program does not conform strictly to ISO:C90.
0877[C] '#if' and '#elif' expressions may contain only integral constants.
0878Using wide character or string literals.
0879[S] Illegal operator in '#if' or '#elif' expression.
0880Using # and ## operators in the same macro definition.
0881Using multiple ## operators in the same macro definition.
0882The forceinclude file '%s' is redundant in this translation unit.
0883Include file code is not protected against repeated inclusion
0884Using multiple # operators in the same macro definition.
0885[U] The token 'defined' is generated in the expansion of this macro.
0886[S] Missing or invalid expression in '#if' or '#elif' directive.
0887[U] Use of 'defined' must match either 'defined(identifier)' or 'defined identifier'.
0888[U] 'defined' requires an identifier as an argument.
0889#undef refers to a macro that has previously been #undef'd.
0890#ifdef refers to a macro that has been #undef'd in a previous #if block.
0891#ifdef refers to a macro that has been #undef'd previously.
0896[S] Missing operand in '#if' or '#elif' expression.
0897[S] Missing operator in '#if' or '#elif' expression.
0898[S] Unexpected ')' or ':' in '#if' or '#elif' expression.
0899[E] Unrecognized preprocessing directive has been ignored - assumed to be a language extension.
0901Source skipped to this point after error in top level declaration.
0902Source skipped to this point after error in parameter declaration.
0903Source skipped to this point after error in member declaration.
0904[S] Invalid designator.
0907[S] Unexpected token.
0911Inserted '%s' token in an attempt to continue parsing.
0913Source skipped to this point after error in 'case' label.
0914[U] Source file does not end with a newline character.
0915[U] Source file ends with a backslash character followed by a newline.
0917[S] Unable to recover from syntax errors in this source file.
0918[Q] Source too complex. Please report this problem to Programming Research Technical Support.
0920Source skipped to this point after error in expression.
0925[S] Unexpected end of file.
0926[S] Expected:%s.
0927[S] Unexpected ')'.
0928[S] Missing comma ',' between enumerators.
0930[C99] Trailing comma at the end of an enumerator-list.
0940[C] Illegal usage of a variably modified type.
0941[C] A variable length array may not be initialized.
0942[U] A * can only be used to specify array size within function prototype scope.
0943[C] Jump to label '%s' is a jump into the scope of an identifier with variably modified type.
0944[C] The label '%s' is inside the scope of an identifier with variably modified type.
0945[C99] WARNING. Operand of sizeof is an expression of variable length array type.
0970[Q] Unable to create preprocessed file.
0974[I] Cast of integer constant expression to a signed integer type which cannot represent the value.
0977Cast of a constant negative value to an unsigned type.
0980Cast of constant negative value which assumes a two's complement representation of signed values.
1001[E] '#include %s' is a VMS extension.
1002[E] '%s' is not a legal identifier in ISO C.
1003[E] '#%s' is a language extension for in-line assembler. All statements located between #asm and #endasm will be ignored.
1004[S] '#endasm' found without matching '#asm' preprocessing directive.
1005[S] End-of-file encountered when expecting '#%s' preprocessing directive.
1006[E] This in-line assembler construct is a language extension. The code has been ignored.
1008[E] '#%s' is not a legal ISO C preprocessing directive.
1009[S] Unrecognizable expression in '#if' preprocessing directive.
1010[S] '#%s' is not a valid form of '#if' syntax .
1011[C99] Use of '//' comment.
1012[E] Use of a C++ reference type ('type &') will be treated as a language extension.
1013[S] Use of a C++ reference type ('type &').
1014[E] Non-standard type specifier - this will be treated as a language extension.
1015[E] '%s' is not a legal keyword in ISO C - this will be treated as a language extension.
1018[C99] Use of LL suffix.
1019[E] '@ address' is not supported in ISO C - this will be treated as a language extension.
1020[E] '__typeof__' is not supported in ISO C, and is treated as a language extension.
1021[E] A statement expression is not supported in ISO C, and is treated as a language extension.
1022[E] '__alignof__' is not supported in ISO C, and is treated as a language extension.
1023[C] Using '__alignof__' on function types is illegal.
1024[C] Using '__alignof__' on incomplete types is illegal.
1025[C] Using '__alignof__' on bit-fields is illegal.
1026[E] The indicated @word construct has been ignored.
1027[C99] Use of type 'long long'.
1028[E] Use of the sizeof operator in a preprocessing directive is a language extension.
1029[E] Whitespace encountered between backslash and new-line has been ignored.
1030[C99] Macro defined with variable argument list.
1031[C99] Initializer for 'struct', 'union' or array type is not a constant expression.
1033[C] The identifier __VA_ARGS__ may only be used in the replacement list of a variadic macro.
1034[E] Macro defined with named variable argument list. This is a language extension.
1035[E] No macro arguments supplied for variable argument list. This is a language extension.
1036[E] Comma before ## ignored in expansion of variadic macro. This is a language extension.
1037[E] Arrays of length zero are a language extension.
1038[E] The sequence ", ##__VA_ARGS__" is a language extension.
1041[E] Empty aggregate initializers are a language extension.
1042[E] Using I64 or UI64 as an integer constant suffix. This is a language extension.
1043[E] Defining an anonymous union object. This is a language extension.
1044[E] Defining an anonymous struct object. This is a language extension.
1045[E] Use of the #include_next preprocessing directive is a language extension.
1046[E] Function is being declared with default argument syntax. This is a language extension.
1047[C] Function is being declared with default argument syntax after a previous call to the function. This is not allowed.
1048[C] Default argument values are missing for some parameters in this function declaration. This is not allowed.
1051[C99] A variable length array has been declared.
1052[C99] A variable length array of unspecified size has been declared.
1053[C99] Designators have been used in this initialization list.
1054[C99] A compound literal has been used.
1055[C99] The keyword 'inline' has been used.
1056[C99] The keyword '_Bool' has been used.
1100The label '%s' is also declared as a typedef.
1250Unsuffixed integer constant causes implicit conversion of other operand.
1251Suffixed integer constant causes implicit conversion of other operand.
1252Suffixed integer constant implicitly converted to different integer type.
1253Unsuffixed integer constant implicitly converted to different integer type.
1254Suffix is not consistent with a type of unsigned long.
1255Unsuffixed integer constant is not of type int.
1256An integer constant suffixed with L is being converted to type signed or unsigned long long on assignment.
1257An integer constant suffixed with L or LL is being converted to a type of lower rank on assignment.
1258Suffixed integer constant cast to a different integral type.
1259Unsuffixed integer constant cast to a different integral type.
1260Integer constant implicitly converted to a floating type.
1261Suffixed floating constant implicitly converted to different floating type.
1262Unsuffixed floating constant implicitly converted to different floating type.
1263Floating constant causes implicit conversion of other (integral) operand.
1264A suffixed floating constant is being converted to a different floating type on assignment.
1265An unsuffixed floating constant is being converted to a different floating type on assignment.
1266A floating constant is being converted to integral type on assignment.
1267Suffixed floating constant cast to another type.
1268Unsuffixed floating constant cast to another type.
1269Floating constant cast to integral type.
1271Using a non-int expression to define an enum constant.
1272Redundant leading zeroes on a numeric constant.
1274Unsuffixed floating constant causes implicit conversion of other (floating) operand.
1275Suffixed floating constant causes implicit conversion of other (floating) operand.
1276An integer constant is being converted to floating type on assignment.
1277Hex constant does not include a "U" suffix.
1278Decimal constant includes a suffix.
1279Hex constant includes an "L" suffix.
1280A lowercase letter L (l) has been used in an integer or floating suffix.
1281Integer literal constant is of an unsigned type but does not include a "U" suffix.
1290An integer constant of 'essentially signed' type is being converted to unsigned type on assignment.
1291An integer constant of 'essentially unsigned' type is being converted to signed type on assignment.
1292An integer constant of 'essentially signed' type is being converted to type char on assignment.
1293An integer constant of 'essentially unsigned' type is being converted to type char on assignment.
1294An integer constant of 'essentially signed' type is being converted to type _Bool on assignment.
1295An integer constant of 'essentially unsigned' type is being converted to type _Bool on assignment.
1296An integer constant of 'essentially signed' type is being converted to enum type on assignment.
1297An integer constant of 'essentially unsigned' type is being converted to enum type on assignment.
1298An integer constant of 'essentially signed' type is being converted to floating type on assignment.
1299An integer constant of 'essentially unsigned' type is being converted to floating type on assignment.
1300'%s' is a keyword in C++.
1301'%s' is a keyword in some C++ implementations.
1302'%s()' must be declared before use in C++.
1303An empty parameter list in a function type has a different meaning in C++.
1304Old style definition of function '%s()' is not portable to C++.
1305The global object '%s' declared 'const' has external linkage in C but internal linkage in C++.
1306Multiple tentative definitions of '%s'. This is not allowed in C++.
1307Unnamed 'struct' and 'union' types may cause portability problems when moving to C++.
1308The tag '%s' would clash with an existing typedef in C++.
1309The typedef '%s' would clash with an existing 'struct' / 'union' / 'enum' tag in C++.
1310'%s' is used as a tag and a typedef for the same 'struct' / 'union' / 'enum'.
1311'void *' and 'const T *' pointers used as operands to an equality or conditional operator.
1312The array being initialized is not large enough to hold a terminating null byte for the string initializer.
1313Executing 'goto %s' will cause local initialization to be skipped.
1314The tag '%s' is defined within another 'struct' / 'union'.
1315The 'static' qualifier has been used in the declaration of a tag.
1317Value of constant expression is not in the enum type to which it is being converted.
1318Object of enum type is being modified with a compound assignment operator.
1319Object of enum type is being modified with an increment or decrement operator.
1322In C, sizeof('c') == sizeof(int), but in C++, sizeof('c') == sizeof(char) == 1.
1323The sizeof operator has been applied to an enum constant.
1324Function 'main' cannot be called or have its address taken in C++.
1325'%s()' is defined with a non-void return type but contains 'return;'. This is not allowed in C++.
1327The macro __STDC__ has been used. It may not be present in a C++ environment.
1328Tag type defined within a function declaration.
1329The global object '%s' declared 'const' has been defined without an explicit initializer. This is not allowed in C++.
1330The parameter identifiers in this function declaration differ from those in a previous declaration.
1331Type or number of arguments doesn't match previous use of the function.
1332Type or number of arguments doesn't match prototype found later.
1333Type or number of arguments doesn't match function definition found later.
1334The parameter identifiers in the prototypes of these functions/function pointers are different.
1335Parameter identifiers missing in function prototype declaration.
1336Parameter identifiers missing in declaration of a function type.
1337Function defined with a variable number of parameters.
1400Enum object is being compared with an enum constant of a different enum type using an equality operator.
1401An enum constant is being passed as argument to a function parameter of a different enum type.
1402An enum constant is being assigned to an object of a different enum type.
1403An enum constant is being returned from a function with a different enum return type.
1404Enum object is being compared with an enum constant of a different enum type using a relational operator.
1410Enum object is being compared with a constant, non-enum expression using an equality operator.
1411A constant expression of non-enum type is being passed as argument to a function parameter of enum type.
1412A constant expression of non-enum type is being assigned to an object of enum type.
1413A constant expression of non-enum type is being returned from a function with an enum return type.
1414Enum object is being compared with a constant, non-enum expression using a relational operator.
1420Enum object is being compared with an object of a different enum type using an equality operator.
1421An enum object is being passed as argument to a function parameter of a different enum type.
1422An enum object is being assigned to an object of a different enum type.
1423An enum object is being returned from a function with a different enum return type.
1424Enum object is being compared with an object of a different enum type using a relational operator.
1431An enum object is being passed as argument to a function parameter of non-enum type.
1432An enum object is being assigned to an object of non-enum type.
1433An enum object is being returned from a function with a non-enum return type.
1434This enum constant is not representable in a 16 bit integer type.
1440Enum object is being compared with a non-constant, non-enum expression using an equality operator.
1441A non-constant expression of non-enum type is being passed as argument to a function parameter of enum type.
1442A non-constant expression of non-enum type is being assigned to an object of enum type.
1443A non-constant expression of non-enum type is being returned from a function with an enum return type.
1444Enum object is being compared with a non-constant, non-enum expression using a relational operator.
1460'Switch' label value, %s, not contained in enum type.
1461Value of constant expression is not in the enum type to which it is being converted, but is bitwise OR of constants in the enum type.
1470Numeric constant used as 'case' label with 'switch' expression of enum type.
1472Enum constant used as 'case' label with 'switch' expression of different enum type.
1473The 2nd and 3rd operands of this conditional operator (? :) are of different enum types.
1474Object of enum type is being modified with a bitwise compound assignment operator.
1475Range of possible enum values suggests this test is always true.
1476Range of possible enum values suggests this test is always false.
1477Object of enum type is being implicitly compared against zero in a controlling expression.
1478Object of an enum type which does not include a zero value, is being implicitly compared against zero in a controlling expression.
1479Object of enum type is being modified with an arithmetic compound assignment operator.
1480Objects or constants of different enum types are operands of a bitwise operator.
1481Object of enum type is being modified with an increment or decrement operator.
1482Non-constant expression cast to enum type.
1483Enum object or constant passed as argument to function declared in K&R style.
1484Constant expression cast to enum type.
1500The object '%1s' is declared but is not used within this project.
1501The function '%1s' is declared but is not used within this project.
1502The object '%1s' is defined but is not used within this project.
1503The function '%1s' is defined but is not used within this project.
1504The object '%1s' is only referenced in the translation unit where it is defined.
1505The function '%1s' is only referenced in the translation unit where it is defined.
1506The identifier '%1s' is declared as a typedef and is used elsewhere for a different kind of declaration.
1507'%1s' is used as a typedef for different types.
1508The typedef '%1s' is declared in more than one location.
1509'%1s' has external linkage and has multiple definitions.
1510'%1s' has external linkage and has incompatible declarations.
1512Identifier '%1s' with external linkage has separate declarations in multiple translation units.
1513Identifier '%1s' with external linkage has separate non-defining declarations in more than one location.
1514The object '%1s' is only referenced by function '%2s', in the translation unit where it is defined
1515Different files are being used which have the same filename '%1s'.
1516Different files are being used which have similar filenames '%1s', but with different case.
1517Different files are being used which have the same filename '%1s', and one includes the other.
1520Functions are indirectly recursive.
1525Object/function with external linkage has same identifier as another object/function with internal linkage.
1526Object with no linkage has same identifier as another object/function with external linkage.
1527Object/function with internal linkage has same identifier as another object/function with internal linkage.
1528Object with no linkage has same identifier as another object/function with internal linkage.
1529Object with no linkage has same identifier as another object with static storage duration but no linkage.
1531The object '%1s' is referenced in only one translation unit - but not the one in which it is defined.
1532The function '%1s' is only referenced in one translation unit - but not the one in which it is defined.
1533The object '%1s' is only referenced by function '%2s'.
1540Unable to open file '%1s'.
1569Issue for message '%1s' found here (even if not visible).
1570Called from here.
1571Occurs on %1s iteration.
1572Return statement here.
1573Last unreachable statement.
1574Viable path.
1575Variable '%1s' previously seen here. (Specimen value: '%2s').
1576Label statement here.
1577Next seen here.
1578Found in directory: '%1s'.
1579Referenced here.
1580Function '%1s' calls '%2s' here.
1581%1s %2s here.
1582Previously seen here.
1585Next set here.
1586Previously set here.
1590Offending operand.
1592'%1s' declared in %2s '%3s'.
1593'%1s' defined here.
1594'%1s' declared here.
1599Included from here.
1690Null preprocessing directive used.
1691Null preprocessing directive used in an excluded section of code.
1800The %1s operand (essential type: '%2s') will be implicitly converted to a floating type, '%3s', in this arithmetic operation.
1802The %1s operand (essential type: '%2s') will be implicitly converted to a floating type, '%3s', in this relational operation.
1803The %1s operand (essential type: '%2s') will be implicitly converted to a floating type, '%3s', in this equality operation.
1804The %1s operand (essential type: '%2s') will be implicitly converted to a floating type, '%3s', in this conditional operation.
1810An operand of 'essentially character' type is being added to another operand of 'essentially character' type.
1811An operand of 'essentially character' type is being subtracted from an operand of 'essentially signed' type.
1812An operand of 'essentially character' type is being subtracted from an operand of 'essentially unsigned' type.
1813An operand of 'essentially character' type is being balanced with an operand of 'essentially floating' type in this arithmetic operation.
1820The %1s operand is non-constant and 'essentially signed' (%2s) but will be implicitly converted to an unsigned type (%3s) in this arithmetic operation.
1821The %1s operand is non-constant and 'essentially signed' (%2s) but will be implicitly converted to an unsigned type (%3s) in this bitwise operation.
1822The %1s operand is non-constant and 'essentially signed' (%2s) but will be implicitly converted to an unsigned type (%3s) in this relational operation.
1823The %1s operand is non-constant and 'essentially signed' (%2s) but will be implicitly converted to an unsigned type (%3s) in this equality operation.
1824The %1s operand is non-constant and 'essentially signed' (%2s) but will be implicitly converted to an unsigned type (%3s) in this conditional operation.
1830The %1s operand is constant, 'essentially signed' (%2s) and negative but will be implicitly converted to an unsigned type (%3s) in this arithmetic operation.
1831The %1s operand is constant, 'essentially signed' (%2s) and negative but will be implicitly converted to an unsigned type (%3s) in this bitwise operation.
1832The %1s operand is constant, 'essentially signed' (%2s) and negative but will be implicitly converted to an unsigned type (%3s) in this relational operation.
1833The %1s operand is constant, 'essentially signed' (%2s) and negative but will be implicitly converted to an unsigned type (%3s) in this equality operation.
1834The %1s operand is constant, 'essentially signed' (%2s) and negative but will be implicitly converted to an unsigned type (%3s) in this conditional operation.
1840The %1s operand is constant, 'essentially signed' (%2s) and non-negative but will be implicitly converted to an unsigned type (%3s) in this arithmetic operation.
1841The %1s operand is constant, 'essentially signed' (%2s) and non-negative but will be implicitly converted to an unsigned type (%3s) in this bitwise operation.
1842The %1s operand is constant, 'essentially signed' (%2s) and non-negative but will be implicitly converted to an unsigned type (%3s) in this relational operation.
1843The %1s operand is constant, 'essentially signed' (%2s) and non-negative but will be implicitly converted to an unsigned type (%3s) in this equality operation.
1844The %1s operand is constant, 'essentially signed' (%2s) and non-negative but will be implicitly converted to an unsigned type (%3s) in this conditional operation.
1850The %1s operand is 'essentially unsigned' (%2s) but will be implicitly converted to a signed type (%3s) in this arithmetic operation.
1851The %1s operand is 'essentially unsigned' (%2s) but will be implicitly converted to a signed type (%3s) in this bitwise operation.
1852The %1s operand is 'essentially unsigned' (%2s) but will be implicitly converted to a signed type (%3s) in this relational operation.
1853The %1s operand is 'essentially unsigned' (%2s) but will be implicitly converted to a signed type (%3s) in this equality operation.
1854The %1s operand is 'essentially unsigned' (%2s) but will be implicitly converted to a signed type (%3s) in this conditional operation.
1860The operands of this arithmetic operator are of different 'essential signedness' but will generate a result of type 'signed int'.
1861The operands of this bitwise operator are of different 'essential signedness' but will generate a result of type 'signed int'.
1862The operands of this relational operator are of different 'essential signedness' but will both be promoted to 'signed int' for comparison.
1863The operands of this equality operator are of different 'essential signedness' but will both be promoted to 'signed int' for comparison.
1864The 2nd and 3rd operands of this conditional operator are of different 'essential signedness'. The result will be in the promoted type 'signed int'.
1880The operands of this relational operator are expressions of different 'essential type' categories (%1s and %2s).
1881The operands of this equality operator are expressions of different 'essential type' categories (%1s and %2s).
1882The 2nd and 3rd operands of this conditional operator are expressions of different 'essential type' categories (%1s and %2s).
1890A composite expression of 'essentially signed' type (%1s) is being implicitly converted to a wider signed type, '%2s'.
1891A composite expression of 'essentially unsigned' type (%1s) is being implicitly converted to a wider unsigned type, '%2s'.
1892A composite expression of 'essentially floating' type (%1s) is being implicitly converted to a wider floating type, '%2s'.
1893The 2nd and 3rd operands of this conditional operator are both 'essentially signed' ('%1s' and '%2s') but one is a composite expression of a narrower type than the other.
1894The 2nd and 3rd operands of this conditional operator are both 'essentially unsigned' ('%1s' and '%2s') but one is a composite expression of a narrower type than the other.
1895The 2nd and 3rd operands of this conditional operator are both 'essentially floating' ('%1s' and '%2s') but one is a composite expression of a narrower type than the other.
2000No 'else' clause exists for this 'if' statement.
2001A 'goto' statement has been used.
2002No 'default' label found in this 'switch' statement.
2003The preceding 'switch' clause is not empty and does not end with a 'jump' statement. Execution will fall through.
2004No concluding 'else' exists in this 'if'-'else'-'if' statement.
2005A 'continue' statement has been used.
2006'%s()' has more than one 'return' path.
2007'auto' does not add information to a declaration, and is best avoided.
2008Code statements precede the first label in this 'switch' construct.
2009This 'default' label is not the final 'case' label within the 'switch' block.
2010The function '%s()' must not be called.
2011The 'register' storage class specifier has been used.
2015A statement 'label' has been used.
2016This 'switch' statement 'default' clause is empty.
2017Comment spans more than one line.
2018This 'switch' 'default' label is probably unreachable.
2019'Switch' label is located within a nested code block.
2020Final 'switch' clause does not end with an explicit 'jump' statement.
2021This tentative definition is interpreted as a declaration. Is this intended ?
2022A tentative definition is being used. Is it appropriate to include an explicit initializer ?
2050The 'int' type specifier has been omitted from a function declaration.
2051The 'int' type specifier has been omitted from an object declaration.
2100Integral promotion : unsigned char promoted to signed int.
2101Integral promotion : unsigned short promoted to signed int.
2102Integral promotion : unsigned char promoted to unsigned int.
2103Integral promotion : unsigned short promoted to unsigned int.
2104Integral promotion : signed char promoted to signed int.
2105Integral promotion : signed short promoted to signed int.
2106Integral promotion : plain char promoted to signed int.
2107Integral promotion : plain char promoted to unsigned int.
2109Integral promotion : _Bool promoted to signed int.
2110Default argument promotion : unsigned char promoted to signed int.
2111Default argument promotion : unsigned short promoted to signed int.
2112Default argument promotion : unsigned char promoted to unsigned int.
2113Default argument promotion : unsigned short promoted to unsigned int.
2114Default argument promotion : signed char promoted to signed int.
2115Default argument promotion : signed short promoted to signed int.
2116Default argument promotion : plain char promoted to signed int.
2117Default argument promotion : plain char promoted to unsigned int.
2118Default argument promotion : float promoted to double.
2119Default argument promotion : _Bool promoted to signed int.
2120Integral promotion : unsigned bit-field promoted to signed int.
2122Integral promotion : unsigned bit-field promoted to unsigned int.
2124Integral promotion : signed bit-field promoted to signed int.
2130Default argument promotion : unsigned bit-field promoted to signed int.
2132Default argument promotion : unsigned bit-field promoted to unsigned int.
2134Default argument promotion : signed bit-field promoted to signed int.
2200Indentation of this line is to the left of the line above.
2201This indentation is not consistent with previous indentation in this file.
2203This closing brace is not aligned appropriately with the matching opening brace.
2204'%s' is not aligned to match its controlling 'switch' statement.
2205More than one declaration or statement on the same line.
2207This brace style is not consistent with 'K&R' style.
2208This brace style is not consistent with 'indented' style.
2209This brace style is not consistent with 'exdented' style.
2210Tab character encountered in this line.
2211'%s' is not aligned with the previously declared identifier.
2212Body of control statement is not enclosed within braces.
2213Matching braces appear on the same line - proper indentation would be preferred.
2214Body of control statement is on the same line and is not enclosed within braces.
2215This indentation is not consistent with configured depth.
2216More than one structure or union member declared on the same line.
2217Line length exceeds %s characters.
2461Loop control variable, %s, has file scope.
2462The variable initialized in the first expression of this 'for' statement is not the variable identified as the 'loop control variable' (%s).
2463The variable incremented in the third expression of this 'for' statement is not the variable identified as the 'loop control variable' (%s).
2464Loop control variable, %s, modified twice in for-loop header.
2465This 'for' loop will only be executed once.
2466The value of this controlling expression is always 'false'. The contained code is unreachable.
2467Loop control variable, %s, is not modified inside loop.
2468Loop control variable, %s, is not modified inside loop but has file scope.
2469Loop control variable in this 'for' statement, %s, is modified in the body of the loop.
2470Taking address of loop control variable, %s.
2471Unable to identify a loop control variable.
2472More than one possible loop control variable.
2547This declaration of tag '%s' hides a more global declaration.
2740This loop controlling expression is a constant expression and its value is 'true'.
2741This 'if' controlling expression is a constant expression and its value is 'true'.
2742This 'if' controlling expression is a constant expression and its value is 'false'.
2743This 'do - while' loop controlling expression is a constant expression and its value is 'false'. The loop will only be executed once.
2744This 'while' or 'for' loop controlling expression is a constant expression and its value is 'false'. The loop will not be entered.
2750Internal dataflow problem. Dataflow analysis continues with the next function. Please inform Programming Research.
2751This function is too complex. Dataflow analysis continues with the next function.
2752This '%1s' results in the function being too complex. Dataflow analysis continues with the next function.
2753As a result of error message '%s', dataflow analysis of the remainder of this function is not possible.
2754As a result of error message '%s', dataflow analysis of the remainder of this translation unit is not possible.
2755Analysis time of function '%1s' has exceeded the configured maximum: '%2sms'. Dataflow analysis continues with the next function.
2756Could not expand function call to '%1s' with maximum '-po df::inter' value.
2757Could not analyze function '%1s'.
2771Definite: These pointers address different objects.
2772Apparent: These pointers address different objects.
2773Suspicious: These pointers address different objects.
2776Definite: Copy between overlapping objects.
2777Apparent: Copy between overlapping objects.
2778Suspicious: Copy between overlapping objects.
2790Constant: Right hand operand of shift operator is negative or too large.
2791Definite: Right hand operand of shift operator is negative or too large.
2792Apparent: Right hand operand of shift operator is negative or too large.
2793Suspicious: Right hand operand of shift operator is negative or too large.
2800Constant: Overflow in signed arithmetic operation.
2801Definite: Overflow in signed arithmetic operation.
2802Apparent: Overflow in signed arithmetic operation.
2803Suspicious: Overflow in signed arithmetic operation.
2810Constant: Dereference of NULL pointer.
2811Definite: Dereference of NULL pointer.
2812Apparent: Dereference of NULL pointer.
2813Suspicious: Dereference of NULL pointer.
2814Possible: Dereference of NULL pointer.
2820Constant: Arithmetic operation on NULL pointer.
2821Definite: Arithmetic operation on NULL pointer.
2822Apparent: Arithmetic operation on NULL pointer.
2823Suspicious: Arithmetic operation on NULL pointer.
2824Possible: Arithmetic operation on NULL pointer.
2830Constant: Division by zero.
2831Definite: Division by zero.
2832Apparent: Division by zero.
2833Suspicious: Division by zero.
2834Possible: Division by zero.
2840Constant: Dereference of an invalid pointer value.
2841Definite: Dereference of an invalid pointer value.
2842Apparent: Dereference of an invalid pointer value.
2843Suspicious: Dereference of an invalid pointer value.
2845Constant: Maximum number of characters to be written is larger than the target buffer size.
2846Definite: Maximum number of characters to be written is larger than the target buffer size.
2847Apparent: Maximum number of characters to be written is larger than the target buffer size.
2848Suspicious: Maximum number of characters to be written is larger than the target buffer size.
2850Constant: Implicit conversion to a signed integer type of insufficient size.
2851Definite: Implicit conversion to a signed integer type of insufficient size.
2852Apparent: Implicit conversion to a signed integer type of insufficient size.
2853Suspicious: Implicit conversion to a signed integer type of insufficient size.
2855Constant: Casting to a signed integer type of insufficient size.
2856Definite: Casting to a signed integer type of insufficient size.
2857Apparent: Casting to a signed integer type of insufficient size.
2858Suspicious: Casting to a signed integer type of insufficient size.
2860Constant: Implementation-defined value resulting from left shift operation on expression of signed type.
2861Definite: Implementation-defined value resulting from left shift operation on expression of signed type.
2862Apparent: Implementation-defined value resulting from left shift operation on expression of signed type.
2863Suspicious: Implementation-defined value resulting from left shift operation on expression of signed type.
2870Infinite loop construct with constant control expression.
2871Infinite loop identified.
2872This loop, if entered, will never terminate.
2877This loop will never be executed more than once.
2880This code is unreachable.
2881The code in this 'default' clause is unreachable.
2882This 'switch' statement will bypass the initialization of local variables.
2883This 'goto' statement will always bypass the initialization of local variables.
2887Function 'main' ends with an implicit 'return' statement.
2888This function has been declared with a non-void 'return' type but ends with an implicit 'return ;' statement.
2889This function has more than one 'return' path.
2890Constant: Negative value implicitly converted to an unsigned type.
2891Definite: Negative value implicitly converted to an unsigned type.
2892Apparent: Negative value implicitly converted to an unsigned type.
2893Suspicious: Negative value implicitly converted to an unsigned type.
2895Constant: Negative value cast to an unsigned type.
2896Definite: Negative value cast to an unsigned type.
2897Apparent: Negative value cast to an unsigned type.
2898Suspicious: Negative value cast to an unsigned type.
2900Constant: Positive integer value truncated by implicit conversion to a smaller unsigned type.
2901Definite: Positive integer value truncated by implicit conversion to a smaller unsigned type.
2902Apparent: Positive integer value truncated by implicit conversion to a smaller unsigned type.
2903Suspicious: Positive integer value truncated by implicit conversion to a smaller unsigned type.
2905Constant: Positive integer value truncated by cast to a smaller unsigned type.
2906Definite: Positive integer value truncated by cast to a smaller unsigned type.
2907Apparent: Positive integer value truncated by cast to a smaller unsigned type.
2908Suspicious: Positive integer value truncated by cast to a smaller unsigned type.
2910Constant: Wraparound in unsigned arithmetic operation.
2911Definite: Wraparound in unsigned arithmetic operation.
2912Apparent: Wraparound in unsigned arithmetic operation.
2913Suspicious: Wraparound in unsigned arithmetic operation.
2920Constant: Left shift operation on expression of unsigned type results in loss of high order bits.
2921Definite: Left shift operation on expression of unsigned type results in loss of high order bits.
2922Apparent: Left shift operation on expression of unsigned type results in loss of high order bits.
2923Suspicious: Left shift operation on expression of unsigned type results in loss of high order bits.
2930Constant: Computing an invalid pointer value.
2931Definite: Computing an invalid pointer value.
2932Apparent: Computing an invalid pointer value.
2933Suspicious: Computing an invalid pointer value.
2940Constant: Result of implicit conversion is only representable in a two's complement implementation.
2941Definite: Result of implicit conversion is only representable in a two's complement implementation.
2942Apparent: Result of implicit conversion is only representable in a two's complement implementation.
2943Suspicious: Result of implicit conversion is only representable in a two's complement implementation.
2945Constant: Result of cast is only representable in a two's complement implementation.
2946Definite: Result of cast is only representable in a two's complement implementation.
2947Apparent: Result of cast is only representable in a two's complement implementation.
2948Suspicious: Result of cast is only representable in a two's complement implementation.
2950Constant: Negative value used in array subscript or pointer arithmetic operation.
2951Definite: Negative value used in array subscript or pointer arithmetic operation.
2952Apparent: Negative value used in array subscript or pointer arithmetic operation.
2953Suspicious: Negative value used in array subscript or pointer arithmetic operation.
2961Definite: Using value of uninitialized automatic object '%s'.
2962Apparent: Using value of uninitialized automatic object '%s'.
2963Suspicious: Using value of uninitialized automatic object '%s'.
2971Definite: Passing address of uninitialized object '%s' to a function parameter declared as a pointer to const.
2972Apparent: Passing address of uninitialized object '%s' to a function parameter declared as a pointer to const.
2973Suspicious: Passing address of uninitialized object '%s' to a function parameter declared as a pointer to const.
2980The value of this function parameter is never used before being modified.
2981This initialization is redundant. The value of this object is never used before being modified.
2982This assignment is redundant. The value of this object is never used before being modified.
2983This assignment is redundant. The value of this object is never subsequently used.
2984This operation is redundant. The value of the result is always '%1s'.
2985This operation is redundant. The value of the result is always that of the left-hand operand.
2986This operation is redundant. The value of the result is always that of the right-hand operand.
2990The value of this loop controlling expression is always 'true'.
2991The value of this 'if' controlling expression is always 'true'.
2992The value of this 'if' controlling expression is always 'false'.
2993The value of this 'do - while' loop controlling expression is always 'false'. The loop will only be executed once.
2994The value of this 'while' or 'for' loop controlling expression is always 'false'. The loop will not be entered.
2995The result of this logical operation is always 'true'.
2996The result of this logical operation is always 'false'.
3001Function has been declared with an empty parameter list.
3002Defining '%s()' with an identifier list and separate parameter declarations is an obsolescent feature.
3003This character constant is being interpreted as a NULL pointer constant.
3004This integral constant expression is being interpreted as a NULL pointer constant.
3006This function contains a mixture of in-line assembler statements and C statements.
3007"void" has been omitted when defining a function with no parameters.
3101Unary '-' applied to an operand of type unsigned int or unsigned long gives an unsigned result.
3102Unary '-' applied to an operand whose underlying type is unsigned.
3103Result of signed division or remainder operation may be implementation defined.
3104[S] #pragma '%s' has invalid arguments and has been ignored.
3105[S] A #pragma block has not been closed with a #pragma '%s'.
3106This preprocessing directive has been ignored because it lies within a #pragma block. #pragma '%s' expected.
3107[S] A #pragma '%s' has been found without a matching #pragma block start directive.
3108Nested comments are not recognized in the ISO standard.
3109Null statement follows other code on the same line.
3110The left-hand operand of this ',' has no side effects.
3111Redundant comma at end of braced initializer will be ignored.
3112This statement has no side-effect - it can be removed.
3113[U] 'return' statement includes no expression but function '%s()' is implicitly of type 'int'.
3114[U] Function '%s()' is implicitly of type 'int' but ends without returning a value.
3115Unrecognized preprocessing directive has been ignored because of conditional inclusion directives.
3116Unrecognized #pragma arguments '%s' This #pragma directive has been ignored.
3117Expected 'on' or 'off' after '#pragma' flag.
3118Using the #line preprocessing directive.
3120Hard-coded 'magic' integer constant, '%s'.
3121Hard-coded 'magic' floating constant, '%s'.
3122Hard-coded 'magic' string literal, %s.
3123Hard coded 'magic' character constant, %s.
3131Hard coded 'magic' number, '%s', used to define the size of a bit-field.
3132Hard coded 'magic' number, '%s', used to define the size of an array.
3138Null statement is located close to other code or comments.
3139Null statement is obscured by code or comment on the same line.
3140Null statement occurs on a line by itself.
3141Null statement does not occur on a line by itself.
3195The function parameter '%s' is always modified before use.
3196The variable '%s' is never set.
3197This initialization is redundant. The value of '%s' is never used before being modified.
3198This assignment is redundant. The value of '%s' is never used before being modified.
3199This assignment is redundant. The value of '%s' is never subsequently used.
3200'%s' returns a value which is not being used.
3201This statement is unreachable.
3202The label '%s:' is not used in this function and could be removed.
3203The variable '%s' is set but never used.
3204The variable '%s' is only set once and so it could be declared with the 'const' qualifier.
3205The identifier '%s' is not used and could be removed.
3206The parameter '%s' is not used in this function.
3207File scope static, '%s', is not used, and could be removed.
3208'%s()' returns a value which is sometimes ignored.
3209'%s()' returns a value which is always ignored.
3210The global identifier '%s' is declared here but is not used in this translation unit.
3211The global identifier '%s' is defined here but is not used in this translation unit.
3212This cast is redundant.
3216Address of local static object exported to a pointer with linkage or wider scope.
3217Address of automatic object exported to a pointer with linkage or wider scope.
3218File scope static, '%s', is only accessed in one function.
3219Static function '%s()' is not used within this translation unit.
3220Identifier declared at a nested level of block scope.
3221Function with external linkage declared at block scope.
3222Object with external linkage declared at block scope.
3223Object with static storage duration declared at block scope.
3224This identifier has previously been declared with internal linkage but is not declared here with the static storage class specifier.
3225Address of automatic object exported using a function parameter.
3226The result of an assignment is being used in an arithmetic operation or another assigning operation.
3227The parameter '%s' is never modified and so it could be declared with the 'const' qualifier.
3228Storage class specifier not positioned at the beginning of declaration.
3229File scope static, '%s', is written but never used.
3230Address of automatic object assigned to local pointer with static storage duration.
3231Address of local static object exported using a function parameter.
3232File scope static, '%s', is never modified. It could be declared const.
3233File scope static, '%s', is not explicitly initialized but its value is used.
3234Declarations precede the first label in this 'switch' construct.
3236[C] 'inline' may not be applied to function 'main'.
3237[C] inline function '%1s' has external linkage and is defining an object, '%2s', with static storage duration.
3238[C] inline function '%1s' has external linkage and is referring to an object, '%2s', with internal linkage.
3239[U] inline function '%1s' has external linkage, but is not defined within this translation unit.
3240inline function '%s' is being defined with external linkage.
3243inline function '%s' is also an 'external definition'.
3244[C] 'inline' may only be used in the declaration of a function identifier.
3260Typedef defined with more than 2 levels of indirection.
3261Member of struct/union defined with more than 2 levels of indirection.
3262Object defined or declared with more than 2 levels of indirection.
3263Function defined or declared with a return type which has more than 2 levels of indirection.
3290Truncation of positive constant integer value during cast to a smaller unsigned type.
3296Definite truncation of positive integer value during implicit conversion to a smaller unsigned type.
3297Apparent truncation of positive integer value during implicit conversion to a smaller unsigned type.
3301Truncation of bits in an unsigned left shift operation on a constant value.
3302Wraparound past zero in unsigned subtraction of constant operands.
3303Wraparound past zero in unsigned addition of constant operands.
3304Wraparound past zero in unsigned multiplication of constant operands.
3305Pointer cast to stricter alignment.
3306Truncation of positive constant integer value during implicit conversion to a smaller unsigned type.
3307The operand of 'sizeof' is an expression with implied side effects, but they will not be evaluated.
3308'static %s()' has been declared but no definition has been provided. This is redundant.
3309The value of the controlling expression in this 'switch' statement is constant.
3311[u] An earlier jump to this statement will bypass the initialization of local variables.
3312[u] This goto statement will jump into a previous block and bypass the initialization of local variables.
3313No definition has been found for structure/union tag '%s'.
3314This controlling expression is an assignment.
3315This 'switch' statement contains only a single path - it is redundant.
3316An unsigned value can never be less than zero - this test is always false.
3317'#if...' not matched by '#endif' in included file. This is probably an error.
3318'#else'/'#elif'/'#endif' in included file matched '#if...' in parent file. This is probably an error.
3319[U] Function called with number of arguments which differs from number of parameters in definition.
3320Type of argument no. %s differs from its type in definition of function.
3321[U] The variable '%s' is definitely unset at this point.
3322Operand of a logical ! operator is a constant expression which is not a 'Boolean' value.
3323This controlling expression has a constant 'true' value.
3324An unsigned value is always greater than or equal to zero - this test is always true.
3325This 'while' or 'for' loop controlling expression has a constant 'false' value.
3326The result of an assignment is being used in a logical operation.
3328An unsigned value is being compared with a negative constant - this is dangerous.
3329This 'if' controlling expression has a constant 'false' value.
3330'%s()' has been called with a variable number of arguments.
3332The macro '%s' used in this '#if' or '#elif' expression is not defined.
3333A 'break' statement has been used in the middle of a 'switch' 'case'/'default' clause.
3334This declaration of '%s' hides a more global declaration.
3335No function declaration. Implicit declaration inserted: 'extern int %s();'.
3337The array '%s[]' is defined with a single element because no size has been specified.
3340Floating point variable used as 'for' loop control variable.
3341Comparing floating point expressions for equality (with '==' or '!=').
3342Controlling expression of 'for' loop is a floating point comparison.
3343Logical NOT being performed on one operand of a comparison.
3344Controlling expression is not an 'essentially Boolean' expression.
3345Statement contains more than one access to objects that are volatile.
3346The controlling expression in this 'if' statement has a constant 'true' value.
3347[U] The variable '%s' is apparently unset at this point.
3348Definite use of unset pointer as an argument to a function which expects a read-only pointer.
3349Apparent use of unset pointer as an argument to a function which expects a read-only pointer.
3352This 'switch' statement contains only two execution paths.
3353The variable '%s' is possibly unset at this point.
3354Possible use of unset pointer as an argument to a function which expects a read-only pointer.
3355The result of this logical operation is always 'true'.
3356The result of this logical operation is always 'false'.
3357The value of this loop controlling expression is always 'true'.
3358The value of this 'if' controlling expression is always 'true'.
3359The value of this controlling expression is always 'false'.
3360The value of this 'do - while' controlling expression is always 'false'. The loop will only be executed once.
3361Using a 'do-while-zero' construct. The loop will only be executed once.
3371Definite truncation of bits in an unsigned left shift operation.
3372Definite wraparound past zero in an unsigned arithmetic operation.
3377Operand of a logical && or || operator is a constant expression which is not a 'Boolean' value.
3381Apparent truncation of bits in an unsigned left shift operation.
3382Apparent wraparound past zero in an unsigned arithmetic operation.
3389Extra parentheses recommended to clarify the ordering of a % operator and another arithmetic operator (* / % + -).
3390Expression is equivalent to: "%s"
3391Extra parentheses recommended. A conditional operation is the operand of another conditional operator.
3392Extra parentheses recommended. A shift, relational or equality operation is the operand of a second identical operator.
3393Extra parentheses recommended. An arithmetic operation (* / + -) is the operand of a different operator with the same precedence.
3394Extra parentheses recommended. A shift, relational or equality operation is the operand of a different operator with the same precedence.
3395Extra parentheses recommended. A * or / operation is the operand of a + or - operator.
3396Extra parentheses recommended. A binary operation is the operand of a conditional operator.
3397Extra parentheses recommended. A binary operation is the operand of a binary operator with different precedence.
3398Extra parentheses recommended. A function call, array subscript, or member operation is the operand of a logical && or ||.
3399Extra parentheses recommended. A unary operation is the operand of a logical && or ||.
3400Extra parentheses recommended. A binary operation is the operand of a logical && or ||.
3401Possible precedence confusion: extra parentheses are recommended here.
3402Braces are needed to clarify the structure of this 'if'-'if'-'else' statement.
3403This sequence of operators is difficult to read without intervening spaces.
3404Statement contains a redundant * operator at top level. *p++ means *(p++) not (*p)++.
3405Index[Array] is equivalent to Array[Index] but more confusing.
3406Object/function '%s', with external linkage, has been defined in a header file.
3407String literal compared using a relational or equality operator.
3408'%s' has external linkage and is being defined without any previous declaration.
3409The replacement list of function-like macro '%s' is not enclosed in ().
3410Macro parameter not enclosed in ().
3411Macro defined with unbalanced brackets, parentheses or braces.
3412Macro defines an unrecognized code-fragment.
3413Macro definition could be replaced by a typedef.
3414Macro defines a storage-class or function specifier keyword.
3415Right hand operand of '&&' or '||' is an expression with possible side effects.
3416Logical operation performed on expression with possible side effects.
3417The comma operator has been used outside a 'for' statement.
3418The comma operator has been used in a 'for' statement.
3419Initialization expression of 'for' statement has no side effects.
3420Increment expression of 'for' statement has no side effects.
3422Statement contains a redundant operator at top level.
3423Statement contains a redundant cast at top level.
3424Statement contains a redundant & or | at top level.
3425One branch of this conditional operation is a redundant expression.
3426Right hand side of comma expression has no side effect and its value is not used.
3427Right hand side of logical operator has no side effect and its value is not used.
3428Macro defines a type qualifier keyword.
3429A function-like macro is being defined.
3430Macro argument expression may require parentheses.
3431Macro defines an operator, a punctuator or a control statement keyword.
3435Parameter '%s' occurs more than once in the replacement list of this macro.
3436Macro definition hides previously declared identifier.
3437[u] The assert macro has been suppressed to call a function of that name.
3438[U] #undef'ing the assert macro to call a function of that name causes undefined behaviour.
3439Macro redefines a keyword.
3440Using the value resulting from a ++ or -- operation.
3441Function call argument is an expression with possible side effects.
3442Operator other than & (address-of) or = (assignment) applied to a volatile object.
3443Macro '%s' has a replacement list which appears recursive.
3446The 2nd or 3rd operand of this conditional operator is an expression with possible side effects.
3447'%s' is being declared with external linkage but this declaration is not in a header file.
3448Declaration of typedef '%s' is not in a header file although it is used in a definition or declaration with external linkage.
3450Function '%s', with internal linkage, is being defined without a previous declaration.
3451The global identifier '%s' has been declared in more than one file.
3452The replacement list of object-like macro '%s' is not enclosed in ().
3453A function could probably be used instead of this function-like macro.
3454Macro argument contains an increment, decrement or assignment operator.
3455Macro argument contains a function call.
3456Parameter '%s' will be evaluated more than once when this macro is used.
3457Macro defines a braced initializer.
3458Macro defines a braced code statement block.
3459Macro defines a 'do-while-zero' construct.
3460Macro defines a type specifier keyword.
3461Macro defines a storage-class specifier/type qualifier sequence.
3470The operand of 'sizeof' is not an expression which designates either an object or a type.
3480Object/function '%s', with internal linkage, has been defined in a header file.
3491Using conditional operator in a macro.
3492Using conditional operator outside a macro.
3495Using a conditional operator in place of a selection statement.
3501Absence of space between assignment operator and following unary operator may cause confusion.
3600Using the unary '+' operator.
3601Trigraphs (??x) are an ISO feature.
3602Using one of the keywords 'signed', 'const', 'volatile' or 'enum'.
3603Using 'extern' in the definition of a global variable.
3604Using an initializer when defining an automatic object of struct, union or array type.
3605Type of 'switch' controlling expression cannot be represented in type 'int'.
3606This unsuffixed decimal constant has type 'long', but had type 'unsigned int' in K&R C.
3607Parameter '%s' declared with function type in a K&R style function definition.
3608Using the '#elif' preprocessing directive.
3609Using the alert escape sequence '\\a'.
3610Hexadecimal escape sequence used.
3611Non-portable comparison of plain 'char' with negative constant.
3612Nonportable comparison of plain 'char' with zero.
3613Some pre-ISO compilers would treat this 8 or 9 as an octal digit.
3614Macro '%s' is being defined more than once without using #undef to remove the previous definition.
3615Using 'entry' as an identifier.
3616Character constants may have different values in preprocessor arithmetic than in actual code.
3617Assignment of a struct/union by value.
3618Whitespace used after '#' at the start of this preprocessing directive.
3619Whitespace used before '#' at the start of this preprocessing directive.
3620'register' may be illegal on array and 'struct' / 'union' types in some compilers.
3621A bit-field is being defined as a member of a struct or union.
3623Passing a struct/union by value as a function argument.
3624Function returns a struct/union by value.
3625Type 'char' has been used in the declaration of an object or a function.
3626Double-quote character in a character constant is not preceded by a backslash character.
3627Single-quote character in a string literal is not preceded by a backslash character.
3628Octal escape sequences used in a character constant or string literal.
3629Union contains member of floating type.
3631Type 'char' has been used in a cast.
3632Type 'char' has been used in the declaration of a typedef.
3633Type 'char' has been used in the operand of the sizeof operator.
3635Function identifier used as a pointer without a preceding & operator.
3650Typedef defines an array type of unknown size.
3651Using a typedef for an array of unknown size can lead to unexpected results.
3659Unnamed zero-width bit-field declared with a signed type.
3660Named bit-field consisting of a single bit declared with a signed type.
3661Plain int bit-field compared with zero.
3662Plain int bit-field compared with negative constant.
3663Unnamed bit-field defined with non-zero width.
3664[E] Using a dot operator to access an individual bit is a language extension.
3665Unnamed bit-field consisting of a single bit declared with a signed type.
3670Recursive call to function containing this call.
3671Function called via pointer to function.
3672Using non-const pointer to function.
3673The object addressed by the pointer parameter '%s' is not modified and so the pointer could be of type 'pointer to const'.
3674Array size defined implicitly by the number of initializers.
3675Function parameter declared with type qualification which differs from previous declaration.
3680[U] Access outside bounds of array using a constant array subscript.
3681Use of a constant negative value in array subscript operation or pointer arithmetic.
3684Array declared with unknown size.
3685[U] Definite access outside bounds of array.
3686Definite use of a negative value in array subscript operation or pointer arithmetic.
3689[U] Apparent access outside bounds of array.
3690Apparent use of a negative value in array subscript operation or pointer arithmetic.
3700Implicit conversion: char to signed char.
3701Implicit conversion: char to unsigned char.
3702Implicit conversion: char to short.
3703Implicit conversion: char to unsigned short.
3704Implicit conversion: char to int.
3705Implicit conversion: char to unsigned int.
3706Implicit conversion: char to long.
3707Implicit conversion: char to unsigned long.
3708Implicit conversion: char to float.
3709Implicit conversion: char to double.
3710Implicit conversion: char to long double.
3711Implicit conversion: unsigned char to char.
3712Implicit conversion: unsigned char to signed char.
3713Implicit conversion: unsigned char to short.
3715Implicit conversion: unsigned char to int.
3717Implicit conversion: unsigned char to long.
3719Implicit conversion: unsigned char to float.
3720Implicit conversion: unsigned char to double.
3721Implicit conversion: unsigned char to long double.
3722Implicit conversion: signed char to char.
3723Implicit conversion: signed char to unsigned char.
3725Implicit conversion: signed char to unsigned short.
3727Implicit conversion: signed char to unsigned int.
3729Implicit conversion: signed char to unsigned long.
3730Implicit conversion: signed char to float.
3731Implicit conversion: signed char to double.
3732Implicit conversion: signed char to long double.
3733Implicit conversion: short to char.
3734Implicit conversion: short to signed char.
3735Implicit conversion: short to unsigned char.
3736Implicit conversion: short to unsigned short.
3738Implicit conversion: short to unsigned int.
3740Implicit conversion: short to unsigned long.
3741Implicit conversion: short to float.
3742Implicit conversion: short to double.
3743Implicit conversion: short to long double.
3744Implicit conversion: unsigned short to char.
3745Implicit conversion: unsigned short to signed char.
3746Implicit conversion: unsigned short to unsigned char.
3747Implicit conversion: unsigned short to short.
3748Implicit conversion: unsigned short to int.
3750Implicit conversion: unsigned short to long.
3752Implicit conversion: unsigned short to float.
3753Implicit conversion: unsigned short to double.
3754Implicit conversion: unsigned short to long double.
3755Implicit conversion: int to char.
3756Implicit conversion: int to signed char.
3757Implicit conversion: int to unsigned char.
3758Implicit conversion: int to short.
3759Implicit conversion: int to unsigned short.
3760Implicit conversion: int to unsigned int.
3762Implicit conversion: int to unsigned long.
3763Implicit conversion: int to float.
3764Implicit conversion: int to double.
3765Implicit conversion: int to long double.
3766Implicit conversion: unsigned int to char.
3767Implicit conversion: unsigned int to signed char.
3768Implicit conversion: unsigned int to unsigned char.
3769Implicit conversion: unsigned int to short.
3770Implicit conversion: unsigned int to unsigned short.
3771Implicit conversion: unsigned int to int.
3772Implicit conversion: unsigned int to long.
3774Implicit conversion: unsigned int to float.
3775Implicit conversion: unsigned int to double.
3776Implicit conversion: unsigned int to long double.
3777Implicit conversion: long to char.
3778Implicit conversion: long to signed char.
3779Implicit conversion: long to unsigned char.
3780Implicit conversion: long to short.
3781Implicit conversion: long to unsigned short.
3782Implicit conversion: long to int.
3783Implicit conversion: long to unsigned int.
3784Implicit conversion: long to unsigned long.
3785Implicit conversion: long to float.
3786Implicit conversion: long to double.
3787Implicit conversion: long to long double.
3788Implicit conversion: unsigned long to char.
3789Implicit conversion: unsigned long to signed char.
3790Implicit conversion: unsigned long to unsigned char.
3791Implicit conversion: unsigned long to short.
3792Implicit conversion: unsigned long to unsigned short.
3793Implicit conversion: unsigned long to int.
3794Implicit conversion: unsigned long to unsigned int.
3795Implicit conversion: unsigned long to long.
3796Implicit conversion: unsigned long to float.
3797Implicit conversion: unsigned long to double.
3798Implicit conversion: unsigned long to long double.
3799Implicit conversion: float to char.
3800Implicit conversion: float to signed char.
3801Implicit conversion: float to unsigned char.
3802Implicit conversion: float to short.
3803Implicit conversion: float to unsigned short.
3804Implicit conversion: float to int.
3805Implicit conversion: float to unsigned int.
3806Implicit conversion: float to long.
3807Implicit conversion: float to unsigned long.
3810Implicit conversion: double to char.
3811Implicit conversion: double to signed char.
3812Implicit conversion: double to unsigned char.
3813Implicit conversion: double to short.
3814Implicit conversion: double to unsigned short.
3815Implicit conversion: double to int.
3816Implicit conversion: double to unsigned int.
3817Implicit conversion: double to long.
3818Implicit conversion: double to unsigned long.
3819Implicit conversion: double to float.
3821Implicit conversion: long double to char.
3822Implicit conversion: long double to signed char.
3823Implicit conversion: long double to unsigned char.
3824Implicit conversion: long double to short.
3825Implicit conversion: long double to unsigned short .
3826Implicit conversion: long double to int.
3827Implicit conversion: long double to unsigned int.
3828Implicit conversion: long double to long.
3829Implicit conversion: long double to unsigned long.
3830Implicit conversion: long double to float.
3831Implicit conversion: long double to double.
3832Implicit conversion: char to long long.
3833Implicit conversion: char to unsigned long long.
3834Implicit conversion: unsigned char to long long.
3837Implicit conversion: signed char to unsigned long long.
3839Implicit conversion: short to unsigned long long.
3840Implicit conversion: unsigned short to long long.
3843Implicit conversion: int to unsigned long long.
3844Implicit conversion: unsigned int to long long.
3847Implicit conversion: long to unsigned long long.
3848Implicit conversion: unsigned long to long long.
3850Implicit conversion: long long to char.
3851Implicit conversion: long long to signed char.
3852Implicit conversion: long long to unsigned char.
3853Implicit conversion: long long to short.
3854Implicit conversion: long long to unsigned short.
3855Implicit conversion: long long to int.
3856Implicit conversion: long long to unsigned int.
3857Implicit conversion: long long to long
3858Implicit conversion: long long to unsigned long.
3859Implicit conversion: long long to unsigned long long.
3860Implicit conversion: long long to float.
3861Implicit conversion: long long to double.
3862Implicit conversion: long long to long double.
3863Implicit conversion: unsigned long long to char.
3864Implicit conversion: unsigned long long to signed char.
3865Implicit conversion: unsigned long long to unsigned char.
3866Implicit conversion: unsigned long long to short.
3867Implicit conversion: unsigned long long to unsigned short.
3868Implicit conversion: unsigned long long to int.
3869Implicit conversion: unsigned long long to unsigned int.
3870Implicit conversion: unsigned long long to long.
3871Implicit conversion: unsigned long long to unsigned long.
3872Implicit conversion: unsigned long long to long long.
3873Implicit conversion: unsigned long long to float.
3874Implicit conversion: unsigned long long to double.
3875Implicit conversion: unsigned long long to long double.
3876Implicit conversion: float to long long.
3877Implicit conversion: float to unsigned long long.
3878Implicit conversion: double to long long.
3879Implicit conversion: double to unsigned long long.
3880Implicit conversion: long double to long long.
3881Implicit conversion: long double to unsigned long long.
3892The result of this cast is implicitly converted to another type.
3900char value returned from signed char %s().
3901char value returned from unsigned char %s().
3902char value returned from short %s().
3903char value returned from unsigned short %s().
3904char value returned from int %s().
3905char value returned from unsigned int %s().
3906char value returned from long %s().
3907char value returned from unsigned long %s().
3908char value returned from float %s().
3909char value returned from double %s().
3910char value returned from long double %s().
3911unsigned char value returned from char %s().
3912unsigned char value returned from signed char %s().
3913unsigned char value returned from short %s().
3915unsigned char value returned from int %s().
3917unsigned char value returned from long %s().
3919unsigned char value returned from float %s().
3920unsigned char value returned from double %s().
3921unsigned char value returned from long double %s().
3922signed char value returned from char %s().
3923signed char value returned from unsigned char %s().
3925signed char value returned from unsigned short %s().
3927signed char value returned from unsigned int %s().
3929signed char value returned from unsigned long %s().
3930signed char value returned from float %s().
3931signed char value returned from double %s().
3932signed char value returned from long double %s().
3933short value returned from char %s().
3934short value returned from signed char %s().
3935short value returned from unsigned char %s().
3936short value returned from unsigned short %s().
3938short value returned from unsigned int %s().
3940short value returned from unsigned long %s().
3941short value returned from float %s().
3942short value returned from double %s().
3943short value returned from long double %s().
3944unsigned short value returned from char %s().
3945unsigned short value returned from signed char %s().
3946unsigned short value returned from unsigned char %s().
3947unsigned short value returned from short %s().
3948unsigned short value returned from int %s().
3950unsigned short value returned from long %s().
3952unsigned short value returned from float %s().
3953unsigned short value returned from double %s().
3954unsigned short value returned from long double %s().
3955int value returned from char %s().
3956int value returned from signed char %s().
3957int value returned from unsigned char %s().
3958int value returned from short %s().
3959int value returned from unsigned short %s().
3960int value returned from unsigned int %s().
3962int value returned from unsigned long %s().
3963int value returned from float %s().
3964int value returned from double %s().
3965int value returned from long double %s().
3966unsigned int value returned from char %s().
3967unsigned int value returned from signed char %s().
3968unsigned int value returned from unsigned char %s().
3969unsigned int value returned from short %s().
3970unsigned int value returned from unsigned short %s().
3971unsigned int value returned from int %s().
3972unsigned int value returned from long %s().
3974unsigned int value returned from float %s().
3975unsigned int value returned from double %s().
3976unsigned int value returned from long double %s().
3977long value returned from char %s().
3978long value returned from signed char %s().
3979long value returned from unsigned char %s().
3980long value returned from short %s().
3981long value returned from unsigned short %s().
3982long value returned from int %s().
3983long value returned from unsigned int %s().
3984long value returned from unsigned long %s().
3985long value returned from float %s().
3986long value returned from double %s().
3987long value returned from long double %s().
3988unsigned long value returned from char %s().
3989unsigned long value returned from signed char %s().
3990unsigned long value returned from unsigned char %s().
3991unsigned long value returned from short %s().
3992unsigned long value returned from unsigned short %s().
3993unsigned long value returned from int %s().
3994unsigned long value returned from unsigned int %s().
3995unsigned long value returned from long %s().
3996unsigned long value returned from float %s().
3997unsigned long value returned from double %s().
3998unsigned long value returned from long double %s().
3999float value returned from char %s().
4000float value returned from signed char %s().
4001float value returned from unsigned char %s().
4002float value returned from short %s().
4003float value returned from unsigned short %s().
4004float value returned from int %s().
4005float value returned from unsigned int %s().
4006float value returned from long %s().
4007float value returned from unsigned long %s().
4010double value returned from char %s().
4011double value returned from signed char %s().
4012double value returned from unsigned char %s().
4013double value returned from short %s().
4014double value returned from unsigned short %s().
4015double value returned from int %s().
4016double value returned from unsigned int %s().
4017double value returned from long %s().
4018double value returned from unsigned long %s().
4019double value returned from float %s().
4021long double value returned from char %s().
4022long double value returned from signed char %s().
4023long double value returned from unsigned char %s().
4024long double value returned from short %s().
4025long double value returned from unsigned short %s().
4026long double value returned from int %s().
4027long double value returned from unsigned int %s().
4028long double value returned from long %s().
4029long double value returned from unsigned long %s().
4030long double value returned from float %s().
4031long double value returned from double %s().
4032char value returned from long long %s().
4033char value returned from unsigned long long %s().
4034unsigned char value returned from long long %s().
4037signed char value returned from unsigned long long %s().
4039short value returned from unsigned long long %s().
4040unsigned short value returned from long long %s().
4043int value returned from unsigned long long %s().
4044unsigned int value returned from long long %s().
4047long value returned from unsigned long long %s().
4048unsigned long value returned from long long %s().
4050long long value returned from char %s().
4051long long value returned from signed char %s().
4052long long value returned from unsigned char %s().
4053long long value returned from short %s().
4054long long value returned from unsigned short %s().
4055long long value returned from int %s().
4056long long value returned from unsigned int %s().
4057long long value returned from long %s().
4058long long value returned from unsigned long %s().
4059long long value returned from unsigned long long %s().
4060long long value returned from float %s().
4061long long value returned from double %s().
4062long long value returned from long double %s().
4063unsigned long long value returned from char %s().
4064unsigned long long value returned from signed char %s().
4065unsigned long long value returned from unsigned char %s().
4066unsigned long long value returned from short %s().
4067unsigned long long value returned from unsigned short %s().
4068unsigned long long value returned from int %s().
4069unsigned long long value returned from unsigned int %s().
4070unsigned long long value returned from long %s().
4071unsigned long long value returned from unsigned long %s().
4072unsigned long long value returned from long long %s().
4073unsigned long long value returned from float %s().
4074unsigned long long value returned from double %s().
4075unsigned long long value returned from long double %s().
4076float value returned from long long %s().
4077float value returned from unsigned long long %s().
4078double value returned from long long %s().
4079double value returned from unsigned long long %s().
4080long double value returned from long long %s().
4081long double value returned from unsigned long long %s().
4100Illegal user error number %1s
4101Both operands of & operator are 'Boolean' expressions.
4102Both operands of | operator are 'Boolean' expressions.
4103Both operands of arithmetic or bitwise operator are 'Boolean' expressions.
4104Left hand operand of arithmetic or bitwise operator is a 'Boolean' expression.
4105Right hand operand of arithmetic or bitwise operator is a 'Boolean' expression.
4106Both operands of && operator are arithmetic or bitwise expressions.
4107Both operands of || operator are arithmetic or bitwise expressions.
4108Left hand operand of logical operator is an arithmetic or bitwise expression.
4109Right hand operand of logical operator is an arithmetic or bitwise expression.
4110Operand of ! operator is an arithmetic or bitwise expression.
4111Right hand operand of relational operator is a 'Boolean' expression.
4112Left hand operand of relational operator is a 'Boolean' expression.
4113Both operands of relational operator are 'Boolean' expressions.
4114Operand of ~ operator is a 'Boolean' expression.
4115Operand of logical && or || operator is not an 'essentially Boolean' expression.
4116Operand of logical ! operator is not an 'essentially Boolean' expression.
4117Result of integer division operation implicitly converted to a floating type.
4118Result of integer division operation cast to a floating type.
4119Result of floating point operation cast to an integral type.
4120Implicit conversion: complex expression of integral type to wider type.
4121Cast of complex expression of integral type to wider type.
4123Implicit conversion: complex expression of type float to type double.
4124Implicit conversion: complex expression of type float to type long double.
4125Implicit conversion: complex expression of type double to type long double.
4126Cast of complex expression of type float to type double.
4127Cast of complex expression of type float to type long double.
4128Cast of complex expression of type double to type long double.
4130Bitwise operations on signed data will give implementation defined results.
4131Left shift operation on signed operand.
4139Address of local static object exported in function return value.
4140Address of automatic object exported in function return value.
4150The identifier '%s' may cause confusion because it contains only the letter 'l' and and the number '1'.
4151The identifier '%s' may cause confusion because it contains only the letter 'O' and the number '0'.
4152The identifier '%s' may cause confusion because the letter 'l' and the number '1' are adjacent.
4153The identifier '%s' may cause confusion because the letter 'O' and the number '0' are adjacent.
4301An expression of 'essentially Boolean' type (%1s) is being cast to character type '%2s'.
4302An expression of 'essentially Boolean' type (%1s) is being cast to enum type '%2s'.
4303An expression of 'essentially Boolean' type (%1s) is being cast to signed type '%2s'.
4304An expression of 'essentially Boolean' type (%1s) is being cast to unsigned type '%2s'.
4305An expression of 'essentially Boolean' type (%1s) is being cast to floating type '%2s'.
4310An expression of 'essentially character' type (%1s) is being cast to Boolean type, '%2s'.
4312An expression of 'essentially character' type (%1s) is being cast to enum type, '%2s'.
4315An expression of 'essentially character' type (%1s) is being cast to floating type, '%2s'.
4320An expression of 'essentially enum' type (%1s) is being cast to Boolean type, '%2s'.
4322An expression of 'essentially enum' type (%1s) is being cast to a different enum type, '%2s'.
4325An expression of 'essentially enum' type (%1s) is being cast to floating type, '%2s'.
4330An expression of 'essentially signed' type (%1s) is being cast to Boolean type '%2s'.
4332An expression of 'essentially signed' type (%1s) is being cast to enum type, '%2s'.
4340An expression of 'essentially unsigned' type (%1s) is being cast to Boolean type '%2s'.
4342An expression of 'essentially unsigned' type (%1s) is being cast to enum type '%2s'.
4350An expression of 'essentially floating' type (%1s) is being cast to Boolean type '%2s'.
4351An expression of 'essentially floating' type (%1s) is being cast to character type '%2s'.
4352An expression of 'essentially floating' type (%1s) is being cast to enum type, '%2s'.
4390A composite expression of 'essentially signed' type (%1s) is being cast to a wider signed type, '%2s'.
4391A composite expression of 'essentially unsigned' type (%1s) is being cast to a wider unsigned type, '%2s'.
4392A composite expression of 'essentially floating' type (%1s) is being cast to a wider floating type, '%2s'.
4393A composite expression of 'essentially signed' type (%1s) is being cast to a different type category, '%2s'.
4394A composite expression of 'essentially unsigned' type (%1s) is being cast to a different type category, '%2s'.
4395A composite expression of 'essentially floating' type (%1s) is being cast to a different type category, '%2s'.
4397An expression which is the result of a ~ or << operation has not been cast to its essential type.
4398An expression which is the result of a ~ or << operation has been cast to a different essential type category.
4399An expression which is the result of a ~ or << operation has been cast to a wider type.
4401An expression of 'essentially Boolean' type (%1s) is being converted to character type, '%2s' on assignment.
4402An expression of 'essentially Boolean' type (%1s) is being converted to enum type, '%2s' on assignment.
4403An expression of 'essentially Boolean' type (%1s) is being converted to signed type, '%2s' on assignment.
4404An expression of 'essentially Boolean' type (%1s) is being converted to unsigned type, '%2s' on assignment.
4405An expression of 'essentially Boolean' type (%1s) is being converted to floating type, '%2s' on assignment.
4410An expression of 'essentially character' type (%1s) is being converted to Boolean type, '%2s' on assignment.
4412An expression of 'essentially character' type (%1s) is being converted to enum type, '%2s' on assignment.
4413An expression of 'essentially character' type (%1s) is being converted to signed type, '%2s' on assignment.
4414An expression of 'essentially character' type (%1s) is being converted to unsigned type, '%2s' on assignment.
4415An expression of 'essentially character' type (%1s) is being converted to floating type, '%2s' on assignment.
4420An expression of 'essentially enum' type (%1s) is being converted to Boolean type, '%2s' on assignment.
4421An expression of 'essentially enum' type (%1s) is being converted to character type, '%2s' on assignment.
4422An expression of 'essentially enum' type (%1s) is being converted to a different enum type, '%2s' on assignment.
4423An expression of 'essentially enum' type (%1s) is being converted to signed type, '%2s' on assignment.
4424An expression of 'essentially enum' type (%1s) is being converted to unsigned type, '%2s' on assignment.
4425An expression of 'essentially enum' type (%1s) is being converted to floating type, '%2s' on assignment.
4430An expression of 'essentially signed' type (%1s) is being converted to Boolean type, '%2s' on assignment.
4431An expression of 'essentially signed' type (%1s) is being converted to character type, '%2s' on assignment.
4432An expression of 'essentially signed' type (%1s) is being converted to enum type, '%2s' on assignment.
4434A non-constant expression of 'essentially signed' type (%1s) is being converted to unsigned type, '%2s' on assignment.
4435A non-constant expression of 'essentially signed' type (%1s) is being converted to floating type, '%2s' on assignment.
4436A constant expression of 'essentially signed' type (%1s) is being converted to unsigned type, '%2s' on assignment.
4437A constant expression of 'essentially signed' type (%1s) is being converted to floating type, '%2s' on assignment.
4440An expression of 'essentially unsigned' type (%1s) is being converted to Boolean type, '%2s' on assignment.
4441An expression of 'essentially unsigned' type (%1s) is being converted to character type, '%2s' on assignment.
4442An expression of 'essentially unsigned' type (%1s) is being converted to enum type, '%2s' on assignment.
4443A non-constant expression of 'essentially unsigned' type (%1s) is being converted to a wider signed type, '%2s' on assignment.
4445An expression of 'essentially unsigned' type (%1s) is being converted to floating type, '%2s' on assignment.
4446A non-constant expression of 'essentially unsigned' type (%1s) is being converted to signed type, '%2s' on assignment.
4447A constant expression of 'essentially unsigned' type (%1s) is being converted to signed type, '%2s' on assignment.
4450An expression of 'essentially floating' type (%1s) is being converted to Boolean type, '%2s' on assignment.
4451An expression of 'essentially floating' type (%1s) is being converted to character type, '%2s' on assignment.
4452An expression of 'essentially floating' type (%1s) is being converted to enum type, '%2s' on assignment.
4453An expression of 'essentially floating' type (%1s) is being converted to signed type, '%2s' on assignment.
4454An expression of 'essentially floating' type (%1s) is being converted to unsigned type, '%2s' on assignment.
4460A non-constant expression of 'essentially signed' type (%1s) is being converted to narrower signed type, '%2s' on assignment.
4461A non-constant expression of 'essentially unsigned' type (%1s) is being converted to narrower unsigned type, '%2s' on assignment.
4462A non-constant expression of 'essentially floating' type (%1s) is being converted to narrower floating type, '%2s' on assignment.
4463A constant expression of 'essentially signed' type (%1s) is being converted to narrower signed type, '%2s' on assignment.
4464A constant expression of 'essentially unsigned' type (%1s) is being converted to narrower unsigned type, '%2s' on assignment.
4465A constant expression of 'essentially floating' type (%1s) is being converted to narrower floating type, '%2s' on assignment.
4470A non-constant expression of 'essentially signed' type (%1s) is being passed to a function parameter of wider signed type, '%2s'.
4471A non-constant expression of 'essentially unsigned' type (%1s) is being passed to a function parameter of wider unsigned type, '%2s'.
4472A non-constant expression of 'essentially floating' type (%1s) is being passed to a function parameter of wider floating type, '%2s'.
4480A non-constant expression of 'essentially signed' type (%1s) is being returned from a function defined with a wider signed return type, '%2s'.
4481A non-constant expression of 'essentially unsigned' type (%1s) is being returned from a function defined with a wider unsigned return type, '%2s'.
4482A non-constant expression of 'essentially floating' type (%1s) is being returned from a function defined with a wider floating return type, '%2s'.
4490A composite expression of 'essentially signed' type (%1s) is being converted to wider signed type, '%2s' on assignment.
4491A composite expression of 'essentially unsigned' type (%1s) is being converted to wider unsigned type, '%2s' on assignment.
4492A composite expression of 'essentially floating' type (%1s) is being converted to wider floating type, '%2s' on assignment.
4498An expression which is the result of a ~ or << operation has been converted to a different essential type category on assignment.
4499An expression which is the result of a ~ or << operation has been converted to a wider essential type on assignment.
4500An expression of 'essentially Boolean' type (%1s) is being used as an array subscript.
4501An expression of 'essentially Boolean' type (%1s) is being used as the %2s operand of this arithmetic operator (%3s).
4502An expression of 'essentially Boolean' type (%1s) is being used as the %2s operand of this bitwise operator (%3s).
4503An expression of 'essentially Boolean' type (%1s) is being used as the left-hand operand of this shift operator (%2s).
4504An expression of 'essentially Boolean' type (%1s) is being used as the right-hand operand of this shift operator (%2s).
4505An expression of 'essentially Boolean' type (%1s) is being used as the %2s operand of this relational operator (%3s).
4507An expression of 'essentially Boolean' type (%1s) is being used as the operand of this increment/decrement operator (%2s).
4510An expression of 'essentially character' type (%1s) is being used as an array subscript.
4511An expression of 'essentially character' type (%1s) is being used as the %2s operand of this arithmetic operator (%3s).
4512An expression of 'essentially character' type (%1s) is being used as the %2s operand of this bitwise operator (%3s).
4513An expression of 'essentially character' type (%1s) is being used as the left-hand operand of this shift operator (%2s).
4514An expression of 'essentially character' type (%1s) is being used as the right-hand operand of this shift operator (%2s).
4517An expression of 'essentially character' type (%1s) is being used as the operand of this increment/decrement operator (%2s).
4518An expression of 'essentially character' type (%1s) is being used as the %2s operand of this logical operator (%3s).
4519An expression of 'essentially character' type (%1s) is being used as the first operand of this conditional operator (%2s).
4521An expression of 'essentially enum' type (%1s) is being used as the %2s operand of this arithmetic operator (%3s).
4522An expression of 'essentially enum' type (%1s) is being used as the %2s operand of this bitwise operator (%3s).
4523An expression of 'essentially enum' type (%1s) is being used as the left-hand operand of this shift operator (%2s).
4524An expression of 'essentially enum' type (%1s) is being used as the right-hand operand of this shift operator (%2s).
4527An expression of 'essentially enum' type is being used as the operand of this increment/decrement operator.
4528An expression of 'essentially enum' type (%1s) is being used as the %2s operand of this logical operator (%3s).
4529An expression of 'essentially enum' type (%1s) is being used as the first operand of this conditional operator (%2s).
4532An expression of 'essentially signed' type (%1s) is being used as the %2s operand of this bitwise operator (%3s).
4533An expression of 'essentially signed' type (%1s) is being used as the left-hand operand of this shift operator (%2s).
4534An expression of 'essentially signed' type (%1s) is being used as the right-hand operand of this shift operator (%2s).
4538An expression of 'essentially signed' type (%1s) is being used as the %2s operand of this logical operator (%3s).
4539An expression of 'essentially signed' type (%1s) is being used as the first operand of this conditional operator (%2s).
4542A non-negative constant expression of 'essentially signed' type (%1s) is being used as the %2s operand of this bitwise operator (%3s).
4543A non-negative constant expression of 'essentially signed' type (%1s) is being used as the left-hand operand of this shift operator (%2s).
4544A non-negative constant expression of 'essentially signed' type (%1s) is being used as the right-hand operand of this shift operator (%2s).
4548A non-negative constant expression of 'essentially signed' type (%1s) is being used as the %2s operand of this logical operator (%3s).
4549A non-negative constant expression of 'essentially signed' type (%1s) is being used as the first operand of this conditional operator (%2s).
4558An expression of 'essentially unsigned' type (%1s) is being used as the %2s operand of this logical operator (%3s).
4559An expression of 'essentially unsigned' type (%1s) is being used as the first operand of this conditional operator (%2s).
4568An expression of 'essentially floating' type (%1s) is being used as the %2s operand of this logical operator (%3s).
4569An expression of 'essentially floating' type (%1s) is being used as the first operand of this conditional operator (%2s).
4570The operand of this ~ operator has an 'essential type' which is narrower than type 'int'.
4571The left-hand operand of this << operator has an 'essential type' which is narrower than type 'int'.
4600The macro '%1s' is also defined in '<%2s>'.
4601The macro '%1s' is the name of an identifier in '<%2s>'.
4602The identifier '%1s' is declared as a macro in '<%2s>'.
4603The object/function '%1s'is being defined with the same name as an ordinary identifier defined in '<%2s>'.
4604The object/function '%1s' is being declared with the same name as an ordinary identifier defined in '<%2s>'.
4605The typedef '%1s' is also defined in '<%2s>'.
4606The typedef '%1s' has the same name as another ordinary identifier in '<%2s>'.
4607The enum constant '%1s' has the same name as another ordinary identifier in '<%2s>'.
4608The tag '%1s' is also defined in '<%2s>'.
4620The macro '%1s' may also be defined as a macro in '<%2s>'.
4621The macro '%1s' may also be defined as a typedef in '<%2s>'.
4622The identifier '%1s' may be defined as a macro in '<%2s>'.
4623The typedef '%1s' may also be defined in '<%2s>'.
4624The ordinary identifier '%1s' may be defined as a typedef in '<%2s>'.
4640The macro '%1s' could conflict in the future with the name of a macro in '<%2s>'.
4641The identifier '%1s' could conflict in the future with the name of a macro in '<%2s>'.
4642The macro '%1s' could conflict in the future with the name of a function in '<%2s>'.
4643The identifier '%1s' could conflict in the future with the name of a function in '<%2s>'.
4644The macro '%1s' could conflict in the future with the name of a typedef in '<%2s>'.
4645The identifier '%1s' could conflict in the future with the name of a typedef in '<%2s>'.
4700Metric value out of threshold range: %s.
4800The identifier '%1s' does not conform to the name rule
4810Invalid annotation: tag '%1s' is not defined subsequently in this file.
4811The start of the range '%1s', starts and ends at the same location.
4812'%1s' not allowed here.
4820Annotation kind is expected.
4821Colon is expected.
4822Tag name is expected.
4823Annotation syntax error.
4824Invalid character in tag name.
4825Unexpected character.
4826Message specification is incomplete or missing.
4827Tag name is not allowed in the message specification of continuous suppression annotation.
4828Invalid usage of predefined location tag.
5087Use of #include directive after code fragment.
5118Use of memory allocation or deallocation function: calloc, malloc, realloc or free.
5123Use of standard header file <signal.h>.
5124Use of standard header file <stdio.h>.
5125Use of function: atof, atoi, atol or atoll.
5126Use of function: abort, exit, getenv or system.
5127Use of standard header file <time.h>.
5130Use of standard header file <stdarg.h>.
5131Use of standard header file <tgmath.h>.
5132Use of standard header file <setjmp.h>.
5133Comment delimiter /* or // found within comment.
5134C++ style comment uses line splicing.
5135Use of function: bsearch or qsort.
5136Use of exception handling identifier: feclearexcept, fegetexceptflag, feraiseexcept, fesetexceptflag or fetestexcept.
5137Use of 'restrict' type qualifier.
5209Use of basic type '%s'.



QA C Source Code Analyser 8.1.2
MISRA C:2012 Compliance Module 1.0
© 2013 Programming Research
www.programmingresearch.com
Personality Groups | Glossary | Message Index Contents