[cfe-dev] Late-parsing function templates in tools

Reid Kleckner via cfe-dev cfe-dev at lists.llvm.org
Tue Mar 27 11:33:33 PDT 2018


No, it doesn't do that, but it's right where we'd go through and parse all
the late-parsed templates for tools.

Honestly, I think delayed template parsing may be nearing the end of its
useful life. It may be causing more problems than it solves for users. We
should re-examine what MSVC allows in its default build modes and see if we
can get it turned off by default. Most Windows system headers these days
are supposed to be compilable with /permissive-, which is more conforming.

On Tue, Mar 27, 2018 at 11:19 AM Kim Gräsman <kim.grasman at gmail.com> wrote:

> Hi Reid,
>
> Thanks for the followup!
>
>
> Den mån 26 mars 2018 20:38Reid Kleckner <rnk at google.com> skrev:
>
>> It sounds like this issue would be fixed if we did what you are doing
>> (parsed all late parsed function templates) within
>> Sema::ActOnEndOfTranslationUnit, is that right?
>>
>> If so, that would be a pretty reasonable extension for tools.
>>
>
> Is that what your recent patch in r328567 does? I suppose we just need a
> tooling flag to force it to happen?
>
> I wonder if you should add a test with the
> GNU-builtin-inside-function-template that I mentioned above. But I guess
> TUScope is always non-NULL in Sema::ActOnEndOfTranslationUnit.
>
> Let me pull latest and try this out and see if I can learn more.
>
> - Kim
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20180327/9f7c4fc0/attachment.html>


More information about the cfe-dev mailing list