Author: dblaikie
Date: Fri Oct 17 21:21:26 2014
New Revision: 220122

URL: http://llvm.org/viewvc/llvm-project?rev=220122&view=rev
Log:
PR21305: Typedefs in non-type template parameters in member data pointers.

Patch by Stephen Crane!

Modified:
    cfe/trunk/lib/CodeGen/CGDebugInfo.cpp
    cfe/trunk/test/CodeGenCXX/debug-info-template.cpp

Modified: cfe/trunk/lib/CodeGen/CGDebugInfo.cpp
URL: 
http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGDebugInfo.cpp?rev=220122&r1=220121&r2=220122&view=diff
==============================================================================
--- cfe/trunk/lib/CodeGen/CGDebugInfo.cpp (original)
+++ cfe/trunk/lib/CodeGen/CGDebugInfo.cpp Fri Oct 17 21:21:26 2014
@@ -1255,7 +1255,7 @@ CollectTemplateParams(const TemplatePara
     } break;
     case TemplateArgument::Declaration: {
       const ValueDecl *D = TA.getAsDecl();
-      QualType T = TA.getParamTypeForDecl();
+      QualType T = TA.getParamTypeForDecl().getDesugaredType(CGM.getContext());
       llvm::DIType TTy = getOrCreateType(T, Unit);
       llvm::Value *V = nullptr;
       // Variable pointer template parameters have a value that is the address

Modified: cfe/trunk/test/CodeGenCXX/debug-info-template.cpp
URL: 
http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CodeGenCXX/debug-info-template.cpp?rev=220122&r1=220121&r2=220122&view=diff
==============================================================================
--- cfe/trunk/test/CodeGenCXX/debug-info-template.cpp (original)
+++ cfe/trunk/test/CodeGenCXX/debug-info-template.cpp Fri Oct 17 21:21:26 2014
@@ -97,7 +97,9 @@ struct foo {
   void f();
 };
 
-template<typename T, T, const int *x, int foo::*a, void (foo::*b)(), void 
(*f)(), int ...Is>
+typedef int foo::*foo_mem;
+
+template<typename T, T, const int *x, foo_mem a, void (foo::*b)(), void 
(*f)(), int ...Is>
 struct TC {
   struct nested {
   };


_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to