gcc: Characters implementation
1
1 4.4 Characters
1 ==============
1
1 * 'The number of bits in a byte (C90 3.4, C99 and C11 3.6).'
1
1 Determined by ABI.
1
1 * 'The values of the members of the execution character set (C90, C99
1 and C11 5.2.1).'
1
1 Determined by ABI.
1
1 * 'The unique value of the member of the execution character set
1 produced for each of the standard alphabetic escape sequences (C90,
1 C99 and C11 5.2.2).'
1
1 Determined by ABI.
1
1 * 'The value of a 'char' object into which has been stored any
1 character other than a member of the basic execution character set
1 (C90 6.1.2.5, C99 and C11 6.2.5).'
1
1 Determined by ABI.
1
1 * 'Which of 'signed char' or 'unsigned char' has the same range,
1 representation, and behavior as "plain" 'char' (C90 6.1.2.5, C90
1 6.2.1.1, C99 and C11 6.2.5, C99 and C11 6.3.1.1).'
1
1 Determined by ABI. The options '-funsigned-char' and
11 '-fsigned-char' change the default. ⇒Options Controlling C
Dialect C Dialect Options.
1
1 * 'The mapping of members of the source character set (in character
1 constants and string literals) to members of the execution
1 character set (C90 6.1.3.4, C99 and C11 6.4.4.4, C90, C99 and C11
1 5.1.1.2).'
1
1 Determined by ABI.
1
1 * 'The value of an integer character constant containing more than
1 one character or containing a character or escape sequence that
1 does not map to a single-byte execution character (C90 6.1.3.4, C99
1 and C11 6.4.4.4).'
1
11 ⇒Implementation-defined behavior (cpp)Implementation-defined
behavior.
1
1 * 'The value of a wide character constant containing more than one
1 multibyte character or a single multibyte character that maps to
1 multiple members of the extended execution character set, or
1 containing a multibyte character or escape sequence not represented
1 in the extended execution character set (C90 6.1.3.4, C99 and C11
1 6.4.4.4).'
1
11 ⇒Implementation-defined behavior (cpp)Implementation-defined
behavior.
1
1 * 'The current locale used to convert a wide character constant
1 consisting of a single multibyte character that maps to a member of
1 the extended execution character set into a corresponding wide
1 character code (C90 6.1.3.4, C99 and C11 6.4.4.4).'
1
11 ⇒Implementation-defined behavior (cpp)Implementation-defined
behavior.
1
1 * 'Whether differently-prefixed wide string literal tokens can be
1 concatenated and, if so, the treatment of the resulting multibyte
1 character sequence (C11 6.4.5).'
1
1 Such tokens may not be concatenated.
1
1 * 'The current locale used to convert a wide string literal into
1 corresponding wide character codes (C90 6.1.4, C99 and C11 6.4.5).'
1
11 ⇒Implementation-defined behavior (cpp)Implementation-defined
behavior.
1
1 * 'The value of a string literal containing a multibyte character or
1 escape sequence not represented in the execution character set (C90
1 6.1.4, C99 and C11 6.4.5).'
1
11 ⇒Implementation-defined behavior (cpp)Implementation-defined
behavior.
1
1 * 'The encoding of any of 'wchar_t', 'char16_t', and 'char32_t' where
1 the corresponding standard encoding macro ('__STDC_ISO_10646__',
1 '__STDC_UTF_16__', or '__STDC_UTF_32__') is not defined (C11
1 6.10.8.2).'
1
11 ⇒Implementation-defined behavior (cpp)Implementation-defined
behavior. 'char16_t' and 'char32_t' literals are always encoded in
1 UTF-16 and UTF-32 respectively.
1