diff options
author | John McCall <rjmccall@apple.com> | 2010-09-03 18:58:50 +0000 |
---|---|---|
committer | John McCall <rjmccall@apple.com> | 2010-09-03 18:58:50 +0000 |
commit | 9c20fa9d46645480872f239a2fc631996ba7dc23 (patch) | |
tree | d59f497820d5aab333db66e2efb44968f96935b0 /test/CodeGen/const-init.c | |
parent | aaa80b208de3e2c706badf45060bd126fa747b84 (diff) |
A constant initializer never matches the type of the variable it's
initializing; it at best matches the element type of the variable
it's initializing. Fixes PR8073.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@112992 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/const-init.c')
-rw-r--r-- | test/CodeGen/const-init.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/test/CodeGen/const-init.c b/test/CodeGen/const-init.c index c7a53be02c..ac26b65e68 100644 --- a/test/CodeGen/const-init.c +++ b/test/CodeGen/const-init.c @@ -117,9 +117,14 @@ struct g22 {int x;} __attribute((packed)); struct g23 {char a; short b; char c; struct g22 d;}; struct g23 g24 = {1,2,3,4}; -// CHECK: @__func__.g25 = private constant [4 x i8] c"g25\00" // CHECK: @g25.g26 = internal global i8* getelementptr inbounds ([4 x i8]* @__func__.g25, i32 0, i32 0) +// CHECK: @__func__.g25 = private constant [4 x i8] c"g25\00" int g25() { static const char *g26 = __func__; return *g26; } + +// CHECK: @g27.x = internal global i8* bitcast (i8** @g27.x to i8*), align 4 +void g27() { // PR8073 + static void *x = &x; +} |