Microchip Technology XC8 Standard Compiler (Workstation) SW006021-1 SW006021-1 User Manual

Product codes
SW006021-1
Page of 518
MPLAB
®
 XC8 C Compiler User’s Guide
DS52053A-page 18
 2012 Microchip Technology Inc.
2.4.3.2
DIFFERENCES
Header file specifications that use directory separators have been allowed in previous 
versions of all compilers. Compatibility problems arose when Windows-style separa-
tors “\” were used and the code compiled under other host operating systems. Under 
the CCI, no directory specifiers should be used.
2.4.3.3
MIGRATION TO THE CCI
Any #include directives that use directory separators in the header file specifications 
should be changed. Remove all but the header file name in the directive. Add the direc-
tory path to the compiler’s include search path or MPLAB IDE equivalent. This will force 
the compiler to search the directories specified with this option.
For example, the following code:
#include <inc/lcd.h>
should be changed to:
#include <lcd.h>
and the path to the inc directory added to the compiler’s header search path in your 
MPLAB IDE project properties, or on the command-line as follows:
-Ilcd
2.4.4
Include Search Paths
When you include a header file under the CCI, the file should be discoverable in the 
paths searched by the compiler detailed below.
For any header files specified in angle bracket delimiters < >, the search paths should 
be those specified by -I options (or the equivalent MPLAB IDE option), then the stan-
dard compiler include directories. The -I options are searched in the order in which 
they are specified.
For any file specified in quote characters " ", the search paths should first be the cur-
rent working directory. In the case of an MPLAB X project, the current working directory 
is the directory in which the C source file is located. If unsuccessful, the search paths 
should be the same directories searched when the header files is specified in angle 
bracket delimiters.
Any other options to specify search paths for header files do not conform to the CCI.
2.4.4.1
EXAMPLE
If including a header file as in the following directive
#include "myGlobals.h"
The header file should be locatable in the current working directory, or the paths spec-
ified by any -I options, or the standard compiler directories. If it is located elsewhere, 
this does not conform to the CCI.
2.4.4.2
DIFFERENCES
The compiler operation under the CCI is not changed. This is purely a coding guide line.
2.4.4.3
MIGRATION TO THE CCI
Remove any option that specifies header file search paths other than the -I option (or 
the equivalent MPLAB IDE option), and use the -I option in place of this. Ensure the 
header file can be found in the directories specified in this section.