Committed as r365377. On Mon, 8 Jul 2019 at 12:43, Kristóf Umann via cfe-commits < cfe-commits@lists.llvm.org> wrote:
> Thank you so much! Sorry for the inconvencience, I'll be that much more > careful next time :) > =) No worries. It's one of those pesky "no diagnostic required" cases; they're often a pain. > On Mon, 8 Jul 2019, 21:42 Richard Smith, <rich...@metafoo.co.uk> wrote: > >> I'll commit the change below once my testing finishes :) >> >> On Mon, 8 Jul 2019 at 12:40, Kristóf Umann via cfe-commits < >> cfe-commits@lists.llvm.org> wrote: >> >>> Noted, thanks! Gabor, could you please fix this? >>> >>> On Mon, 8 Jul 2019, 21:37 Richard Smith, <rich...@metafoo.co.uk> wrote: >>> >>>> This is in any case the wrong fix. The code *is* wrong, for the reason >>>> this compiler is reporting. >>>> >>>> The correct fix is to declare the explicit specializations in the >>>> header file: >>>> >>>> template <> void CFGDominatorTreeImpl<true>::anchor(); >>>> template <> void CFGDominatorTreeImpl<false>::anchor(); >>>> >>>> Clang will tell you to do this under -Wundefined-func-template (which >>>> we haven't turned on by default because people get this wrong too >>>> often...). >>>> >>>> On Mon, 8 Jul 2019 at 12:29, JF Bastien via cfe-commits < >>>> cfe-commits@lists.llvm.org> wrote: >>>> >>>>> Kristof, >>>>> >>>>> It looks like your fix didn’t address all the bots: >>>>> >>>>> /Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/tools/clang/lib/Analysis/Dominators.cpp:14:48: >>>>> error: explicit specialization of 'anchor' after instantiation void >>>>> CFGDominatorTreeImpl</*IsPostDom=*/true>::anchor() {} ^ >>>>> /Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/tools/clang/include/clang/Analysis/Analyses/Dominators.h:225:3: >>>>> note: implicit instantiation first required here >>>>> ControlDependencyCalculator(CFG *cfg) ^ >>>>> >>>>> Can you please address the issue? >>>>> >>>>> http://green.lab.llvm.org/green/job/clang-stage2-coverage-R/4153/consoleFull >>>>> >>>>> Thanks, >>>>> >>>>> JF >>>>> >>>>> >>>>> On Jul 3, 2019, at 5:06 AM, Kristof Umann via cfe-commits < >>>>> cfe-commits@lists.llvm.org> wrote: >>>>> >>>>> Author: szelethus >>>>> Date: Wed Jul 3 05:06:10 2019 >>>>> New Revision: 365030 >>>>> >>>>> URL: http://llvm.org/viewvc/llvm-project?rev=365030&view=rev >>>>> Log: >>>>> Make a buildbot using a buggy gcc happy >>>>> >>>>> When specializing a template in a namespace, it has to be in a >>>>> namespace >>>>> block, else gcc will get confused. Hopefully this fixes the issue. >>>>> >>>>> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56480 >>>>> >>>>> Modified: >>>>> cfe/trunk/lib/Analysis/Dominators.cpp >>>>> >>>>> Modified: cfe/trunk/lib/Analysis/Dominators.cpp >>>>> URL: >>>>> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Analysis/Dominators.cpp?rev=365030&r1=365029&r2=365030&view=diff >>>>> >>>>> ============================================================================== >>>>> --- cfe/trunk/lib/Analysis/Dominators.cpp (original) >>>>> +++ cfe/trunk/lib/Analysis/Dominators.cpp Wed Jul 3 05:06:10 2019 >>>>> @@ -8,10 +8,12 @@ >>>>> >>>>> #include "clang/Analysis/Analyses/Dominators.h" >>>>> >>>>> -using namespace clang; >>>>> +namespace clang { >>>>> >>>>> template <> >>>>> -void clang::CFGDominatorTreeImpl</*IsPostDom=*/true>::anchor() {} >>>>> +void CFGDominatorTreeImpl</*IsPostDom=*/true>::anchor() {} >>>>> >>>>> template <> >>>>> -void clang::CFGDominatorTreeImpl</*IsPostDom=*/false>::anchor() {} >>>>> +void CFGDominatorTreeImpl</*IsPostDom=*/false>::anchor() {} >>>>> + >>>>> +} // end of namespace clang >>>>> >>>>> >>>>> _______________________________________________ >>>>> cfe-commits mailing list >>>>> cfe-commits@lists.llvm.org >>>>> https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits >>>>> >>>>> >>>>> _______________________________________________ >>>>> cfe-commits mailing list >>>>> cfe-commits@lists.llvm.org >>>>> https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits >>>>> >>>> _______________________________________________ >>> cfe-commits mailing list >>> cfe-commits@lists.llvm.org >>> https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits >>> >> _______________________________________________ > cfe-commits mailing list > cfe-commits@lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits >
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits