[cfe-dev] [PATCH] MS compatibility flag implies delayed parsing
Douglas Gregor
dgregor at apple.com
Mon Nov 14 11:30:59 PST 2011
On Nov 12, 2011, at 1:08 PM, Aaron Ballman wrote:
> On Tue, Nov 8, 2011 at 8:51 PM, Douglas Gregor <dgregor at apple.com> wrote:
>>
>> On Nov 8, 2011, at 6:56 AM, Aaron Ballman wrote:
>>
>>> On Mon, Nov 7, 2011 at 4:55 PM, Eli Friedman <eli.friedman at gmail.com> wrote:
>>>> I don't see why the changes to lib/Frontend/CompilerInvocation.cpp and
>>>> include/clang/Driver/CC1Options.td are necessary. The changes to
>>>> lib/Driver/Tools.cpp look fine.
>>>
>>> I'm not certain I understand why the two are separate from one
>>> another. Can you give me a quite education on the topic?
>>>
>>> On Mon, Nov 7, 2011 at 5:02 PM, Francois Pichet <pichet2000 at gmail.com> wrote:
>>>> How about we remove --fdelayed-template-parsing altogether and check
>>>> for fms-compatibility to do late template parsing?
>>>>
>>>> Anybody else needs delayed template parsing without microsoft compatibility?
>>>
>>> That would be the best solution IMO, but I wasn't sure if anyone was
>>> relying on them being separated. If no one objects, I can remove the
>>> delayed template parsing param and simply roll the functionality into
>>> MS compatibility. But I do have one question on this -- should I
>>> simply remove the flag entirely (so people start getting warnings
>>> about unused flags), or should I leave the flag in and make it no-op?
>>
>> I suggest removing the driver-level "-fdelayed-template-parsing" (from lib/Driver/Tools.cpp and include/clang/Driver/Options.td). However, please leave -fdelayed-template-parsing as a separate "-cc1" option, because delayed template parsing can be useful even when we're not emulating MSVC.
>
> I've attached a patch that implements these changes. I did still
> clean up CompilerInvocation to remove a duplicate assignment.
Looks great, please go ahead and commit!
- Doug
More information about the cfe-dev
mailing list