One of our buildbots seems unhappy:

http://bb.pgr.jp/builders/ninja-x64-msvc-RA-centos6/builds/11939/steps/test_all/logs/Clang-Unit%20%3A%3A%20ASTMatchers__ASTMatchersTests__HasAncestor.MatchesClosestAncestor

Its testcase is this:

      template <typename T> struct C {
        void f(int) {
          struct I { void g(T) { int x; } } i; i.g(42);
        }
      };
      template struct C<int>;

It looks like the problem is some interaction of your patch and delayed
template parsing (running the above code through clang with
-fdelayed-template-parsing reproduces the issue). Can you take a look?

On Tue, Apr 28, 2015 at 5:23 PM, Michael Park <[email protected]> wrote:

> Awesome, Thanks Richard!
>
> On 28 April 2015 at 20:11, Richard Smith <[email protected]> wrote:
>
>> On Tue, Apr 28, 2015 at 4:00 PM, Michael Park <[email protected]> wrote:
>>
>>> The answer is that we don't really know. It would be more consistent
>>>> with the non-template case for it to be ill-formed (it also seems
>>>> reasonable to say that you can't instantiate a member function until its
>>>> class is complete), but the point of instantiation rules for constexpr
>>>> functions aren't settled yet; this is part of DR1581 (still open).
>>>>
>>>
>>> Agreed. Thanks for the pointer to DR1581!
>>>
>>> LGTM
>>>
>>>
>>> As this is my first patch for Clang, I'm not all that familiar with the
>>> required process to get this patch committed. Am I required to do anything
>>> further on my end?
>>>
>>
>> I've committed your patch as r236063. Feel free to go ahead and
>> mark PR20625 as fixed. Thanks!
>>
>>
>>> Thanks,
>>>
>>> MPark.
>>>
>>
>>
>
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to