r198497 - Move MS predefined type_info out of InitializePredefinedMacros

Aaron Ballman aaron at aaronballman.com
Sun Jan 5 15:37:50 PST 2014


On Sun, Jan 5, 2014 at 9:14 AM, Aaron Ballman <aaron at aaronballman.com> wrote:
> On Sun, Jan 5, 2014 at 12:20 AM, Alp Toker <alp at nuanti.com> wrote:
>> On 04/01/2014 21:07, David Majnemer wrote:
>>>
>>> It seems that I mixed up MicrosoftMode and MicrosoftExt which lead to a
>>> discussion between Alp Toker, Aaron Ballman, and myself.
>>>
>>> We agreed that the current state of affairs is confusing and should be
>>> remedied:
>>> - MicrosoftExt will be renamed to MSVCExt (and will still be controlled by
>>> -fms-extensions)
>>> - MicrosoftMode will be renamed to MSVCCompat (and will still be
>>> controlled by -fms-compatibility)
>>
>>
>> Attached patch does the mechanical regex replace described above, passed
>> through clang-format.
>>
>> The only manual changes are in LangOptions.def, where the MSVC-related
>> options are brought closer together with updated descriptions:
>>
>> LANGOPT(MSVCExt           , 1, 0, "Microsoft extensions")
>> LANGOPT(MSVCCompat        , 1, 0, "Microsoft Visual C++ quirks mode")
>
> I'm not too keen on calling it a "quirks mode" because it's not
> quirks. MSVCCompat is for conforming language extensions, and MSVCExt
> is for non-conforming language extensions (so, if anything, the naming
> should be reversed). How about:
>
> LANGOPT(MSVCCompat        , 1, 0, "Microsoft Visual C++ conforming extensions")
> LANGOPT(MSVCExt           , 1, 0, "Microsoft Visual C++ non-conforming
> extensions")

Of course, as David kindly pointed out, I promptly got it backwards. I
should have said:

LANGOPT(MSVCExt           , 1, 0, "Microsoft Visual C++ conforming extensions")
LANGOPT(MSVCCompat        , 1, 0, "Microsoft Visual C++ non-conforming
extensions")

~Aaron



More information about the cfe-commits mailing list