beautypg.com

Code generator warning and error messages – Zilog Z8F0130 User Manual

Page 298

background image

Using the ANSI C-Compiler

UM013037-1212

274

Zilog Developer Studio II – Z8 Encore!
User Manual

This error is generated when there are fewer parameters to a call to printf or sprintf
than the format string calls for and the inline generation of printf calls is requested.

For example:

printf("x = %4d\n");

254 Too many parameters for (s)printf format

This warning is generated when there are more parameters to a call to printf or sprintf
than the format string calls for and the inline generation of printf calls is requested.

For example:

printf("x = %4d\n", x, y);

The format string is parsed, and the extra arguments are ignored.

255 Missing declaration of (s)printf helper function, variable, or field

This warning is generated when the compiler has not seen the prototypes for the printf
or sprintf helper functions it generates calls to. This occurs if the standard include file
stdio.h has not been included or if stdio.h from a different release of ZDS II has been
included.

256 Can't preprocess calls to vprintf or vsprintf

This message is generated when the code contains calls to

vprintf

or

vsprintf

and

the inline generation of printf calls is requested. The reason for this warning and the
solutions are similar to the ones for message 201: Can’t preprocess format to (s)printf.

257 Not all paths through “<name>” return a value

The function declared with a return type is not returning any value at least on one path
in the function.

258 Variable "<name>" may be used before it is defined

If there is at least one path through the function that uses a local variable before it is
defined, this warning is reported.

Code Generator Warning and Error Messages

303 Case value <number> already defined.

If a case value consists of an expression containing a

sizeof

, its value is not known

until code generation time. Thus, it is possible to have two cases with the same value
not caught by the front end. Review the

switch

statement closely.

308 Excessive Registers required at line <num> of function <func>.

Excessive Page 0 registers are required at line number <num>. The compiler does not
perform register spilling, so complex expressions that generate this error must be fac-
tored into two or more expressions.