[cfe-dev] [PATCH] MS compatibility flag implies delayed parsing

dawn at burble.org dawn at burble.org
Thu Nov 17 11:46:56 PST 2011


Please let this be a separate option from the ms-mode option.  See comment
below.

On Sat, Nov 12, 2011 at 03:08:43PM -0600, 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?

We do!  And we don't want them to be tied to ms-mode, because we want to
be able to set ms-mode (to get ms language extensions) but allow 2-phase
lookup by default.  For legacy code however, we want to allow users to
be able to disable 2-phase lookup.

Thanks,
    -Dawn 
> >>
> >> 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.
> 
> ~Aaron


> _______________________________________________
> cfe-dev mailing list
> cfe-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev




More information about the cfe-dev mailing list