diff options
author | Douglas Gregor <dgregor@apple.com> | 2011-02-24 02:36:08 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2011-02-24 02:36:08 +0000 |
commit | 7b26ff912f49f787d25f4ea9677f88c2f512790f (patch) | |
tree | 3bad9490f7419343d705560bc4efbf6a1a510fa2 /clang/lib/AST/ItaniumMangle.cpp | |
parent | 8e74e79145a60e4d3a49d5b85de4a15ee443022e (diff) | |
download | bcm5719-llvm-7b26ff912f49f787d25f4ea9677f88c2f512790f.tar.gz bcm5719-llvm-7b26ff912f49f787d25f4ea9677f88c2f512790f.zip |
Teach NestedNameSpecifier to keep track of namespace aliases the same
way it keeps track of namespaces. Previously, we would map from the
namespace alias to its underlying namespace when building a
nested-name-specifier, losing source information in the process.
llvm-svn: 126358
Diffstat (limited to 'clang/lib/AST/ItaniumMangle.cpp')
-rw-r--r-- | clang/lib/AST/ItaniumMangle.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/AST/ItaniumMangle.cpp b/clang/lib/AST/ItaniumMangle.cpp index e2dbb839838..939ca7a924a 100644 --- a/clang/lib/AST/ItaniumMangle.cpp +++ b/clang/lib/AST/ItaniumMangle.cpp @@ -606,6 +606,9 @@ void CXXNameMangler::mangleUnresolvedScope(NestedNameSpecifier *Qualifier) { case NestedNameSpecifier::Namespace: mangleName(Qualifier->getAsNamespace()); break; + case NestedNameSpecifier::NamespaceAlias: + mangleName(Qualifier->getAsNamespaceAlias()->getNamespace()); + break; case NestedNameSpecifier::TypeSpec: case NestedNameSpecifier::TypeSpecWithTemplate: { const Type *QTy = Qualifier->getAsType(); |