Nikolai Weibull wrote:
On 9/11/06, mwoehlke <[EMAIL PROTECTED]> wrote:
mwoehlke wrote:
> Mike Williams wrote:
>> mwoehlke did utter on 11/09/2006 17:44:
>>> Bram Moolenaar wrote:
>>>> I don't know what the rules are in all kinds of C, but at least things
>>>> like 0x0L, 0x0u, 0x0UL are valid.
>>>>
>>>> Using a match instead of region would be simpler.
>>>
>>> If one takes KATE's c.xml as canonical, supported suffixes (but not
>>> necessarily on all build configurations) are all combinations of 'U',
>>> 'L' and 'L', with no mention of 'u'. That makes: ULL, LUL, LLU, LL,
>>> UL, LU, L and U. As a regexp, 'U?L?L?|L?(UL|LU)'.
>>
>> Standard C only allows the following suffixes (in lower or uppercase):
>>
>>   u, ul, ull, l, lu, and llu.
>
> D'oh! I looked again, and I see that c.xml says 'insensitive="TRUE"', so
> all of the above are case-insensitive. But you are saying that
> 'ull'/'llu' are supported, but NOT 'll'? That can't be right? I would
> not be surprised if 'lul' is not well-supported, however.

...and I don't think it is. According to a cross-platform-support header
we use, 'LL' is supported on the default compilers for HPUX, Linux,
Irix, and Solaris (in 32-bit mode); possibly others as well.

For the literature, see /The C Programming Language/, Second Edition,
Section A2.5.1, "Integer Constants", p. 193.

Since none of the standards are freely available (not that I can see, anyway), all I can tell you is what is widely supported, and 'll' seems to qualify.

--
Matthew
KATE: Awesome Text Editor

Reply via email to