07.04.2013 Views

MPLAB C Compiler for PIC24 MCUs and dsPIC DSCs ... - Microchip

MPLAB C Compiler for PIC24 MCUs and dsPIC DSCs ... - Microchip

MPLAB C Compiler for PIC24 MCUs and dsPIC DSCs ... - Microchip

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

V<br />

Diagnostics<br />

__VA_ARGS__ can only appear in the expansion of a C99 variadic macro<br />

The predefined macro __VA_ARGS should be used in the substitution part of a macro<br />

definition using ellipses.<br />

value computed is not used<br />

A value computed is not used.<br />

variable ‘name’ declared ‘inline’<br />

The keyword ‘inline’ should be used with functions only.<br />

variable ‘%s’ might be clobbered by ‘longjmp’ or ‘v<strong>for</strong>k’<br />

A non-volatile automatic variable might be changed by a call to longjmp. These<br />

warnings are possible only in optimizing compilation.<br />

volatile register variables don’t work as you might wish<br />

Passing a variable as an argument could transfer the variable to a different register<br />

(w0-w7) than the one specified (if not w0-w7) <strong>for</strong> argument transmission. Or the<br />

compiler may issue an instruction that is not suitable <strong>for</strong> the specified register <strong>and</strong> may<br />

need to temporarily move the value to another place. These are only issues if the<br />

specified register is modified asynchronously (i.e., though an ISR).<br />

W<br />

-W<strong>for</strong>mat-extra-args ignored without -W<strong>for</strong>mat<br />

-W<strong>for</strong>mat must be specified to use -W<strong>for</strong>mat-extra-args.<br />

-W<strong>for</strong>mat-nonliteral ignored without -W<strong>for</strong>mat<br />

-W<strong>for</strong>mat must be specified to use -W<strong>for</strong>mat-nonliteral.<br />

-W<strong>for</strong>mat-security ignored without -W<strong>for</strong>mat<br />

-W<strong>for</strong>mat must be specified to use -W<strong>for</strong>mat-security.<br />

-W<strong>for</strong>mat-y2k ignored without -W<strong>for</strong>mat<br />

-W<strong>for</strong>mat must be specified to use.<br />

-Wid-clash-LEN is no longer supported<br />

The option -Wid-clash-LEN is no longer supported.<br />

-Wmissing-<strong>for</strong>mat-attribute ignored without -W<strong>for</strong>mat<br />

-W<strong>for</strong>mat must be specified to use -Wmissing-<strong>for</strong>mat-attribute.<br />

-Wuninitialized is not supported without -O<br />

Optimization must be on to use the -Wuninitialized option.<br />

‘identifier’ was declared ‘extern’ <strong>and</strong> later ‘static’<br />

The specified identifier was previously declared ‘extern’ <strong>and</strong> is now being declared as<br />

static.<br />

‘identifier’ was declared implicitly ‘extern’ <strong>and</strong> later ‘static’<br />

The specified identifier was previously declared implicitly ‘extern’ <strong>and</strong> is now being<br />

declared as static.<br />

‘identifier’ was previously implicitly declared to return ‘int’<br />

There is a mismatch against the previous implicit declaration.<br />

© 2008 <strong>Microchip</strong> Technology Inc. DS51284H-page 201

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!