summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen
diff options
context:
space:
mode:
authorPeter Collingbourne <peter@pcc.me.uk>2010-10-24 18:30:18 +0000
committerPeter Collingbourne <peter@pcc.me.uk>2010-10-24 18:30:18 +0000
commita99fdcf93ef8a1f55a5e7da6aca1a72444ac4838 (patch)
tree78c3fc747b82496f5e515f1f6c1374408a396374 /clang/test/CodeGen
parent800fd3533c2c862c88bcfd86694e2fd9875c461f (diff)
downloadbcm5719-llvm-a99fdcf93ef8a1f55a5e7da6aca1a72444ac4838.tar.gz
bcm5719-llvm-a99fdcf93ef8a1f55a5e7da6aca1a72444ac4838.zip
Implement GNU C extension: two types are compatible if they appear
as a function argument, one of the types is a transparent union type and the other type is compatible with a union member llvm-svn: 117243
Diffstat (limited to 'clang/test/CodeGen')
-rw-r--r--clang/test/CodeGen/transparent-union.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/clang/test/CodeGen/transparent-union.c b/clang/test/CodeGen/transparent-union.c
index 9f1cdda18d1..0bdbd577f90 100644
--- a/clang/test/CodeGen/transparent-union.c
+++ b/clang/test/CodeGen/transparent-union.c
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -triple i386-unknown-unknown -emit-llvm -o %t %s
+// RUN: %clang_cc1 -Werror -triple i386-unknown-unknown -emit-llvm -o %t %s
// RUN: FileCheck < %t %s
//
// FIXME: Note that we don't currently get the ABI right here. f0() should be
@@ -12,9 +12,12 @@ void f0(transp_t0 obj);
// CHECK: define void @f1_0(i32* %a0)
// CHECK: call void @f0(%union.anon* byval %{{.*}})
+// CHECK: call void %{{.*}}(i8* %{{[a-z0-9]*}})
// CHECK: }
void f1_0(int *a0) {
+ void (*f0p)(void *) = f0;
f0(a0);
+ f0p(a0);
}
void f1_1(int *a0) {
OpenPOWER on IntegriCloud