erichkeane added a comment. Alright, a touch more: It looks like the looping through the `CurContext` at line 6084 finds the wrong thing in evaluating this `CXXMethodDecl`! The "broken" version has its CurContext as `bar` in the example above, the "working" versions have `foo` or `foo2<int>`. Therefore the 2nd time through the loop, those both end up on the `ClassTemplateSpecializationDecl`, but the broken one finds the `isFileContext` version.
So I don't know HOW to fix it, but it seems that the `CheckFunctionConstraints` probably has to change the `CurContext`. I suspect the instantiation of the `WorkingRequires` does something like this correctly. I'm poking on/off on it today, but if @ChuanqiXu has an idea/help, it would be greatly appreciated. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D119544/new/ https://reviews.llvm.org/D119544 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits