aboutsummaryrefslogtreecommitdiff
path: root/CodeGen/CodeGenTypes.cpp
diff options
context:
space:
mode:
authorChristopher Lamb <christopher.lamb@gmail.com>2007-12-01 09:20:34 +0000
committerChristopher Lamb <christopher.lamb@gmail.com>2007-12-01 09:20:34 +0000
commitc4de6a27031831e6413ce5d1e9b8664b08ec2d6e (patch)
tree1637641c9e6d9e9d891e2bf45bbc65a768b23e72 /CodeGen/CodeGenTypes.cpp
parent0f8db7021ef6a9f16f2571ecf68cc3f3eda4eae5 (diff)
Better match llvm-gcc's behavior for CodeGen naming of anonymous structs and unions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44490 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'CodeGen/CodeGenTypes.cpp')
-rw-r--r--CodeGen/CodeGenTypes.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/CodeGen/CodeGenTypes.cpp b/CodeGen/CodeGenTypes.cpp
index 7b8a73c100..199199519d 100644
--- a/CodeGen/CodeGenTypes.cpp
+++ b/CodeGen/CodeGenTypes.cpp
@@ -313,9 +313,12 @@ const llvm::Type *CodeGenTypes::ConvertNewType(QualType T) {
// Name the codegen type after the typedef name
// if there is no tag type name available
- if (TD->getName() == "" && T->getTypeClass() == Type::TypeName) {
- const TypedefType *TdT = cast<TypedefType>(T);
- TypeName += TdT->getDecl()->getName();
+ if (TD->getName() == "") {
+ if (T->getTypeClass() == Type::TypeName) {
+ const TypedefType *TdT = cast<TypedefType>(T);
+ TypeName += TdT->getDecl()->getName();
+ } else
+ TypeName += "anon";
} else
TypeName += TD->getName();