Microchip Technology XC8 Standard Compiler (Workstation) SW006021-1 SW006021-1 Benutzerhandbuch
Produktcode
SW006021-1
Error and Warning Messages
2012 Microchip Technology Inc.
DS52053B-page 381
(125) illegal character (* decimal) in #if
(Preprocessor)
There is a non-printable character in a #if expression that has no business being
there. Valid characters are the letters, digits and those comprising the acceptable
operators, for example:
there. Valid characters are the letters, digits and those comprising the acceptable
operators, for example:
#if ^S YYY /* what is this control characters doing here? */
int m;
#endif
(126) strings can’t be used in #if
(Preprocessor)
The preprocessor does not allow the use of strings in
#if
expressions, for example:
/* no string operations allowed by the preprocessor */
#if MESSAGE > "hello"
#define DEBUG
#endif
(127) bad syntax for defined() in #[el]if
(Preprocessor)
The defined() pseudo-function in a preprocessor expression requires its argument
to be a single name. The name must start with a letter and should be enclosed in
parentheses, for example:
to be a single name. The name must start with a letter and should be enclosed in
parentheses, for example:
/* oops -- defined expects a name, not an expression */
#if defined(a&b)
input = read();
#endif
(128) illegal operator in #if
(Preprocessor)
A #if expression has an illegal operator. Check for correct syntax, for example:
#if FOO = 6 /* oops -- should that be: #if FOO == 5 ? */
(129) unexpected "\" in #if
(Preprocessor)
The backslash is incorrect in the #if statement, for example:
#if FOO == \34
#define BIG
#endif
(130) unknown type "*" in #[el]if sizeof()
(Preprocessor)
An unknown type was used in a preprocessor sizeof(). The preprocessor can only
evaluate sizeof() with basic types, or pointers to basic types, for example:
evaluate sizeof() with basic types, or pointers to basic types, for example:
#if sizeof(unt) == 2 /* should be: #if sizeof(int) == 2 */
i = 0xFFFF;
#endif
(131) illegal type combination in #[el]if sizeof()
(Preprocessor)
The preprocessor found an illegal type combination in the argument to sizeof() in a
#if
#if
expression, for example:
/* To sign, or not to sign, that is the error. */
#if sizeof(signed unsigned int) == 2
i = 0xFFFF;
#endif