Microchip Technology XC8 Standard Compiler (Workstation) SW006021-1 SW006021-1 ユーザーズマニュアル
製品コード
SW006021-1
Error and Warning Messages
2012 Microchip Technology Inc.
DS52053B-page 397
(267) bad storage class
(Code Generator)
The code generator has encountered a variable definition whose storage class is
invalid, for example:
invalid, for example:
auto int foo; /* auto not permitted with global variables */
int power(static int a) /* parameters may not be static */
{
return foo * a;
}
(268) inconsistent storage class
(Parser)
A declaration has conflicting storage classes. Only one storage class should appear in
a declaration, for example:
a declaration, for example:
extern static int where; /* so is it static or extern? */
(269) inconsistent type
(Parser)
Only one basic type may appear in a declaration, for example:
int float if; /* is it int or float? */
(270) variable can’t have storage class "register"
(Parser)
Only function parameters or auto variables may be declared using the register
qualifier, for example:
qualifier, for example:
register int gi; /* this cannot be qualified register */
int process(register int input) /* this is okay */
{
return input + gi;
}
(271) type can’t be long
(Parser)
Only int and float can be qualified with long.
long char lc; /* what? */
(272) type can’t be short
(Parser)
Only int can be modified with short, for example:
short float sf; /* what? */
(273) type can’t be both signed and unsigned
(Parser)
The type modifiers signed and unsigned cannot be used together in the same dec-
laration, as they have opposite meaning, for example:
laration, as they have opposite meaning, for example:
signed unsigned int confused; /* which is it? */
(274) type can’t be unsigned
(Parser)
A floating-point type cannot be made unsigned, for example:
unsigned float uf; /* what? */
(275) "..." illegal in non-prototype argument list
(Parser)
The ellipsis symbol may only appear as the last item in a prototyped argument list. It
may not appear on its own, nor may it appear after argument names that do not have
types; i.e., K&R-style non-prototype function definitions. For example:
may not appear on its own, nor may it appear after argument names that do not have
types; i.e., K&R-style non-prototype function definitions. For example:
/* K&R-style non-prototyped function definition */
int kandr(a, b, ...)
int a, b;
{