]> granicus.if.org Git - clang/commit
Fix the AST representation for non-type template arguments to encode
authorEli Friedman <eli.friedman@gmail.com>
Wed, 26 Sep 2012 02:36:12 +0000 (02:36 +0000)
committerEli Friedman <eli.friedman@gmail.com>
Wed, 26 Sep 2012 02:36:12 +0000 (02:36 +0000)
commitd7a6b1640e565487d163023a6a2e83f55476ae96
treed5f4472454c04080fc1f329d70b8c71c91b24aa0
parent073819806ba2441e2a3e550107f1e756a6ee3ad0
Fix the AST representation for non-type template arguments to encode
enough information so we can mangle them correctly in cases involving
dependent parameter types. (This specifically impacts cases involving
null pointers and cases involving parameters of reference type.)
Fix the mangler to use this information instead of trying to scavenge
it out of the parameter declaration.

<rdar://problem/12296776>.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164656 91177308-0d34-0410-b5e6-96231b3b80d8
23 files changed:
include/clang/AST/RecursiveASTVisitor.h
include/clang/AST/TemplateBase.h
lib/AST/ASTContext.cpp
lib/AST/ASTDiagnostic.cpp
lib/AST/ASTImporter.cpp
lib/AST/Decl.cpp
lib/AST/DumpXML.cpp
lib/AST/ItaniumMangle.cpp
lib/AST/StmtProfile.cpp
lib/AST/TemplateBase.cpp
lib/AST/TypeLoc.cpp
lib/Sema/SemaLookup.cpp
lib/Sema/SemaTemplate.cpp
lib/Sema/SemaTemplateDeduction.cpp
lib/Sema/SemaTemplateInstantiate.cpp
lib/Sema/TreeTransform.h
lib/Serialization/ASTReader.cpp
lib/Serialization/ASTWriter.cpp
test/CodeGenCXX/mangle-nullptr-arg.cpp
test/CodeGenCXX/mangle-template.cpp
tools/libclang/CIndex.cpp
tools/libclang/CIndexUSRs.cpp
tools/libclang/RecursiveASTVisitor.h