Microchip Technology XC8 Standard Compiler (Workstation) SW006021-1 SW006021-1 ユーザーズマニュアル

製品コード
SW006021-1
ページ / 518
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, seSection 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.
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.
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 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.
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.
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.
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”.