]> granicus.if.org Git - clang/commitdiff
teach codegen to lay out enum types.
authorChris Lattner <sabre@nondot.org>
Mon, 27 Aug 2007 17:44:34 +0000 (17:44 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 27 Aug 2007 17:44:34 +0000 (17:44 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@41501 91177308-0d34-0410-b5e6-96231b3b80d8

CodeGen/CodeGenTypes.cpp

index 8543cbd1d79b16d603459e7096a1a1600296b70c..8c6c89054fdf8bfa038b3a01013cd1f7bdfd3dec 100644 (file)
@@ -144,7 +144,9 @@ const llvm::Type *CodeGenTypes::ConvertType(QualType T) {
       return ResultType;
     
     if (!TD->isDefinition()) {
-      ResultType = llvm::OpaqueType::get();    
+      ResultType = llvm::OpaqueType::get();  
+    } else if (TD->getKind() == Decl::Enum) {
+      return ConvertType(Context.getEnumDeclIntegerType(cast<EnumDecl>(TD)));
     } else if (TD->getKind() == Decl::Struct) {
       const RecordDecl *RD = cast<const RecordDecl>(TD);
       std::vector<const llvm::Type*> Fields;