3.13  Difference from Conversion Specifications of -convert_cc Option of CC-RL
 
The difference of extended functions whose operations vary when the CC-RL's option -convert_cc is used and when conversion is performed by the CcnvCA78K0R is shown here.
 
| 
Table 3.7 | Different Operation from –convert_cc Option of CC-RL | 
|  |  |  | 
| 
__boolean | 
Handled as the _Bool type when the -ansi option is not specified and handled as the char type when the -ansi option is specified. | 
Always converted to the _Bool type. 
Since _Bool is not usable when the -ansi option of the CC-RL is specified, manually change the type. | 
| 
__interrupt 
__interrupt_brk 
__rtos_interrupt | 
If a #pragma directive for a function with the same name already exists, the keyword is ignored. | 
A #pragma directive is added before the function declaration. If a #pragma directive for a function with the same name already exists, there will be duplicate #pragma directives after conversion and a compile error will occur. In such a case, delete the #pragma directive that was converted from the keyword. | 
| 
__asm( ) | 
Recognized as a normal function call. 
It needs to be manually modified to the inline_asm function. | 
#pragma inline_asm and a function definition are output for each __asm( ). 
A function call of __asm( ) is converted into a newly generated function call. | 
| 
#pragma sfr | 
Use the -preinclude option of the CC-RL to include iodefine.h. | 
#include "iodefine.h" is inserted at the beginning of the file. | 
| 
#asm-#endasm | 
A syntax error will occur. 
It needs to be manually modified to the inline_asm function. | 
#pragma inline_asm and a function definition are output for each #asm-#endasm. 
#asm-#endasm is converted into a newly generated function call. | 
| 
#pragma interrupt 
#pragma vect 
#pragma rtos_interrupt | 
If there is an interrupt request name, use the -preinclude option of the CC-RL to include iodefine.h. | 
#include "iodefine.h" is inserted at the beginning of the file if there is an interrupt request name. | 
| 
__CA78K0R__ macro | 
The macro is enabled (decimal constant 1). | 
Conversion is not performed and a message is output. 
Enable the macro using the -D option of the CC-RL. |