Microchip Technology SW006021-1N Manuel D’Utilisation
C Language Features
2012 Microchip Technology Inc.
DS52053B-page 215
5.14.4.1
THE #PRAGMA ADDRQUAL DIRECTIVE
This directive allows you to control the compiler’s response to non-standard memory
qualifiers. This pragma is an in-code equivalent to the --ADDRQUAL option and both
use the same arguments, see Section 4.8.16 “--ADDRQUAL: Set Compiler
Response to Memory Qualifiers”.
qualifiers. This pragma is an in-code equivalent to the --ADDRQUAL option and both
use the same arguments, see Section 4.8.16 “--ADDRQUAL: Set Compiler
Response to Memory Qualifiers”.
The pragma has effect over the entire C program and should be issued once, if
required. If the pragma is issued more than once, the last pragma determines the com-
piler’s response.
required. If the pragma is issued more than once, the last pragma determines the com-
piler’s response.
For example:
#pragma addrqual=require
bank2 int foobar;
5.14.4.2
THE #PRAGMA CONFIG DIRECTIVE
This directive allows the device configuration bits to be specified for PIC18 target
devices. See Section 5.3.5 “Configuration Bit Access” for full details.
devices. See Section 5.3.5 “Configuration Bit Access” for full details.
5.14.4.3
THE #PRAGMA INLINE DIRECTIVE
The #pragma inline directive indicates to the compiler that calls to the specified
function should be as fast as possible. This pragma has the same effect as using the
inline
function should be as fast as possible. This pragma has the same effect as using the
inline
function specifier, see.
5.14.4.4
THE #PRAGMA INTRINSIC DIRECTIVE
The #pragma intrinsic directive is used to indicate to the compiler that a function
will be inlined intrinsically by the compiler. The directive is only usable with special func-
tions that the code generator will expand internally, e.g the _delay function. Such
functions do not have corresponding source code and are handled specially by the
compiler.
will be inlined intrinsically by the compiler. The directive is only usable with special func-
tions that the code generator will expand internally, e.g the _delay function. Such
functions do not have corresponding source code and are handled specially by the
compiler.
5.14.4.5
THE #PRAGMA INTERRUPT_LEVEL DIRECTIVE
The #pragma interrupt_level directive can be used to prevent function duplica-
tion of functions called from main-line and interrupt code. See
Section 5.9.5.1 “Disabling Duplication” for more information.
tion of functions called from main-line and interrupt code. See
Section 5.9.5.1 “Disabling Duplication” for more information.
5.14.4.6
THE #PRAGMA PACK DIRECTIVE
All 8-bit PIC devices can only perform byte accesses to memory and so do not require
any alignment of memory objects within structures. This pragma will have no effect
when used.
any alignment of memory objects within structures. This pragma will have no effect
when used.
Note:
Use of this pragma with a user-defined function does not mean that function
will be inlined and an error will result. See the inline function specifier for
that operation, in Section 5.8.1.2 “Inline Specifier”.
will be inlined and an error will result. See the inline function specifier for
that operation, in Section 5.8.1.2 “Inline Specifier”.