4.1.5 Option to process in strict accordance with ANSI standard

If the -Xansi option is specified to CC-RH, it will perform processing in strict accordance with the ANSI standard. The differences between when the -Xansi option is specified and when not specified are as follows.

Table 4.8

Processing When -Xansi Option Strictly Conforming to Language Specifications is Specified

Item

With -Xansi Specification

Without -Xansi Specification

Bit field

An errorNote 1 occurs if type other than int is specified for bit field.

Specification of types other than int is allowed.

# line number

An error occurs.

Treated in same manner as "#line line number".Note 2

Parameters of functions declared with #pragma inline

If the type of a return value or parameter is different but type conversion is possible between the specified function call and definition, then an error will occur.

The type of the return value is converted to the type at the call site, the parameters are converted to the type of the function definition, and inline expansion is performed.

__STDC__

Defines value as macro with value 1.

Does not define.

_Bool type

long long type

An error occurs.

Specification is allowed.

Structure and union specifiers

If the member declaration list does not include named members, then an error message will be output indicating that the list has no effect.

If the member declaration list does not include named members, then an warning message will be output indicating that the list has no effect.

Note 1.

Normal error beginning with "E". The same applies hereafter.

Note 2.

See the ANSI standards.