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
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
16-Bit C <strong>Compiler</strong> User’s Guide<br />
C.3 WARNINGS<br />
Symbols<br />
‘/*’ within comment<br />
A comment mark was found within a comment.<br />
‘$’ character(s) in identifier or number<br />
Dollar signs in identifier names are an extension to the st<strong>and</strong>ard.<br />
#‘directive’ is a GCC extension<br />
#warning, #include_next, #ident, #import, #assert <strong>and</strong> #unassert directives are GCC<br />
extensions <strong>and</strong> are not of ISO C89.<br />
#import is obsolete, use an #ifndef wrapper in the header file<br />
The #import directive is obsolete. #import was used to include a file if it hadn’t already<br />
been included. Use the #ifndef directive instead.<br />
#include_next in primary source file<br />
#include_next starts searching the list of header file directories after the directory in<br />
which the current file was found. In this case, there were no previous header files so it<br />
is starting in the primary source file.<br />
#pragma pack (pop) encountered without matching #pragma pack (push, )<br />
The pack(pop) pragma must be paired with a pack(push) pragma, which must precede<br />
it in the source file.<br />
#pragma pack (pop, identifier) encountered without matching #pragma pack<br />
(push, identifier, )<br />
The pack(pop) pragma must be paired with a pack(push) pragma, which must precede<br />
it in the source file.<br />
#warning: message<br />
The directive #warning causes the preprocessor to issue a warning <strong>and</strong> continue<br />
preprocessing. The tokens following #warning are used as the warning message.<br />
A<br />
absolute address specification ignored<br />
Ignoring the absolute address specification <strong>for</strong> the code section in the #pragma<br />
statement because it is not supported in the compiler. Addresses must be specified in<br />
the linker script <strong>and</strong> code sections can be defined with the keyword __attribute__.<br />
address of register variable ‘name’ requested<br />
The register specifier prevents taking the address of a variable.<br />
alignment must be a small power of two, not n<br />
The alignment parameter of the pack pragma must be a small power of two.<br />
anonymous enum declared inside parameter list<br />
An anonymous enum is declared inside a function parameter list. It is usually better<br />
programming practice to declare enums outside parameter lists, since they can never<br />
become complete types when defined inside parameter lists.<br />
anonymous struct declared inside parameter list<br />
An anonymous struct is declared inside a function parameter list. It is usually better<br />
programming practice to declare structs outside parameter lists, since they can never<br />
become complete types when defined inside parameter lists.<br />
DS51284H-page 182 © 2008 <strong>Microchip</strong> Technology Inc.