On 3 October 2016 at 13:23, Alex L <arpha...@gmail.com> wrote: > > > On 3 October 2016 at 13:12, Alex Lorenz via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> Author: arphaman >> Date: Mon Oct 3 07:12:03 2016 >> New Revision: 283102 >> >> URL: http://llvm.org/viewvc/llvm-project?rev=283102&view=rev >> Log: >> Fix PR 28885: Fix AST Printer output for the inherited constructor using >> declarations. >> >> This commit ensures that the correct record type is printed out for the >> using declarations that represent C++ inherited constructors. >> It fixes a regression introduced in r274049 which changed the name that's >> stored in the using declarations that correspond to inherited >> constructors. >> >> Differential Revision: https://reviews.llvm.org/D25131 > > > This was meant to be D25113, I'll revert and recommit. > Sorry about that, > Alex > >
I ended up looking at the wrong tab, and though that this was meant to be D25113 (another one my phabricator diff), but the original link is correct. I re-committed with the right link. Sorry about all the noise (I just had a bad morning), Alex > >> >> Modified: >> cfe/trunk/lib/AST/DeclPrinter.cpp >> cfe/trunk/test/SemaCXX/cxx11-ast-print.cpp >> >> Modified: cfe/trunk/lib/AST/DeclPrinter.cpp >> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/DeclPr >> inter.cpp?rev=283102&r1=283101&r2=283102&view=diff >> ============================================================ >> ================== >> --- cfe/trunk/lib/AST/DeclPrinter.cpp (original) >> +++ cfe/trunk/lib/AST/DeclPrinter.cpp Mon Oct 3 07:12:03 2016 >> @@ -1346,6 +1346,17 @@ void DeclPrinter::VisitUsingDecl(UsingDe >> if (D->hasTypename()) >> Out << "typename "; >> D->getQualifier()->print(Out, Policy); >> + >> + // Use the correct record name when the using declaration is used for >> + // inheriting constructors. >> + for (const auto *Shadow : D->shadows()) { >> + if (const auto *ConstructorShadow = >> + dyn_cast<ConstructorUsingShadowDecl>(Shadow)) { >> + assert(Shadow->getDeclContext() == ConstructorShadow->getDeclCont >> ext()); >> + Out << *ConstructorShadow->getNominatedBaseClass(); >> + return; >> + } >> + } >> Out << *D; >> } >> >> >> Modified: cfe/trunk/test/SemaCXX/cxx11-ast-print.cpp >> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaCXX/ >> cxx11-ast-print.cpp?rev=283102&r1=283101&r2=283102&view=diff >> ============================================================ >> ================== >> --- cfe/trunk/test/SemaCXX/cxx11-ast-print.cpp (original) >> +++ cfe/trunk/test/SemaCXX/cxx11-ast-print.cpp Mon Oct 3 07:12:03 2016 >> @@ -43,6 +43,14 @@ template <class C, C...> const char *ope >> // CHECK: const char *PR23120 = operator""_suffix<char32_t, 66615>(); >> const char *PR23120 = U"ð ·"_suffix; >> >> +// PR28885 >> +struct A { >> + A(); >> +}; >> +struct B : A { >> + using A::A; // CHECK: using A::A; >> +}; // CHECK-NEXT: }; >> + >> // CHECK: ; >> ; >> // CHECK-NOT: ; >> >> >> _______________________________________________ >> cfe-commits mailing list >> cfe-commits@lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits >> > >
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits