yaxunl marked an inline comment as done.
yaxunl added inline comments.

================
Comment at: clang/lib/CodeGen/CodeGenModule.cpp:1028
     else
-      MC.mangleName(ND, Out);
+      MC.mangleName(GD, Out);
   } else {
----------------
yaxunl wrote:
> rjmccall wrote:
> > What would be necessary in order for this to turn into just `mangleName(GD, 
> > Out)`?   I suspect there are a lot of subtle assumptions between the 
> > different mangling methods today that could probably be broken down a bit 
> > and we'd end up with something much cleaner.
> It seems to be just API changes. I will try changing them.
I got one issue. When I tried to create `GlobalDecl(CD, Ctor_DefaultClosure)` I 
got assertion

include/llvm/ADT/PointerIntPair.h:186: static intptr_t 
llvm::PointerIntPairInfo<const clang::Decl *, 2, 
llvm::PointerLikeTypeTraits<const clang::Decl *> >::updateInt(intptr_t, 
intptr_t) [PointerT = const clang::Decl *, IntBits = 2, PtrTraits = 
llvm::PointerLikeTypeTraits<const clang::Decl *>]: Assertion `(IntWord & 
~IntMask) == 0 && "Integer too large for field"' failed.
CXXConstructor=v:7:25 (default constructor) (converting constructor)

This is because Ctor_DefaultClosure has value 4, which exceeds the value that 
can be put into PointerIntPairInfo


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D75700/new/

https://reviews.llvm.org/D75700



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to