r175681 - Revert "intmax_t is long long on Darwin, not long."

John McCall rjmccall at apple.com
Wed Feb 20 15:56:09 PST 2013


On Feb 20, 2013, at 2:42 PM, Hal Finkel <hfinkel at anl.gov> wrote:
> ----- Original Message -----
>> From: "Jordan Rose" <jordan_rose at apple.com>
>> To: cfe-commits at cs.uiuc.edu
>> Sent: Wednesday, February 20, 2013 4:28:41 PM
>> Subject: r175681 - Revert "intmax_t is long long on Darwin, not long."
>> 
>> Author: jrose
>> Date: Wed Feb 20 16:28:41 2013
>> New Revision: 175681
>> 
>> URL: http://llvm.org/viewvc/llvm-project?rev=175681&view=rev
>> Log:
>> Revert "intmax_t is long long on Darwin, not long."
>> 
>> 'long' and 'long long' are different for the purposes of mangling.
>> This caused <rdar://problem/13254874>.
> 
> Can you please explain this? I understand the name-mangling difference, but if long long is larger than long, then intmax_t needs to be long long, no?

Jordan's commit message is imprecise;  he's only changing the x86-64
Darwin platform.  On 32-bit platforms, intmax_t should definitely be
'long long'.

intmax_t is still not actually the largest type supported by the compiler —
we do support int128_t on several platforms.

Anyway, in this case, our hands are tied by the existing behavior of GCC.

John.



More information about the cfe-commits mailing list