]> granicus.if.org Git - clang/commitdiff
IRgen/Obj-C: Fix encoding of "long double".
authorDaniel Dunbar <daniel@zuster.org>
Mon, 11 Oct 2010 21:13:48 +0000 (21:13 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Mon, 11 Oct 2010 21:13:48 +0000 (21:13 +0000)
 - The mind boggles.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@116226 91177308-0d34-0410-b5e6-96231b3b80d8

lib/AST/ASTContext.cpp
test/CodeGenObjC/encode-test.m

index 72d7f600f04fa98b884c9ff7834c1ee674d7b0e5..e25429bfb93c72a3f7df24ea377332b28c1bd99a 100644 (file)
@@ -3701,7 +3701,7 @@ static char ObjCEncodingForPrimitiveKind(const ASTContext *C, QualType T) {
     case BuiltinType::Int128:     return 't';
     case BuiltinType::Float:      return 'f';
     case BuiltinType::Double:     return 'd';
-    case BuiltinType::LongDouble: return 'd';
+    case BuiltinType::LongDouble: return 'D';
     }
 }
 
index 2f0c335cfa6662fd0dca612f60d9a527ebe52db3..24a90a0b4b998fa1b24b6a01d466d4c546488b8e 100644 (file)
@@ -138,3 +138,9 @@ const char g6[] = @encode(Base1X);
 
 // CHECK: @g7 = constant [27 x i8] c"{Derived1X=b2b3b4b5b5b4b3}\00"
 const char g7[] = @encode(Derived1X);
+
+// CHECK: @g8 = constant [7 x i8] c"{s8=D}\00"
+struct s8 {
+  long double x;
+};
+const char g8[] = @encode(struct s8);