diff options
author | Chris Lattner <sabre@nondot.org> | 2010-07-01 06:20:47 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-07-01 06:20:47 +0000 |
commit | 0e7929f30ca08d09c181552176b31178dda6ce47 (patch) | |
tree | 96f0fc1d4bfb5824af6ca0a6c69fecf773941ae8 /clang/test/CodeGen/decl.c | |
parent | 79046273dd4cbab529bebbefa53b6f8212683b33 (diff) | |
download | bcm5719-llvm-0e7929f30ca08d09c181552176b31178dda6ce47.tar.gz bcm5719-llvm-0e7929f30ca08d09c181552176b31178dda6ce47.zip |
fix rdar://8147692 - yet another crash due to my abi work.
llvm-svn: 107387
Diffstat (limited to 'clang/test/CodeGen/decl.c')
-rw-r--r-- | clang/test/CodeGen/decl.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/clang/test/CodeGen/decl.c b/clang/test/CodeGen/decl.c index dcf120fd88a..7a9971ee181 100644 --- a/clang/test/CodeGen/decl.c +++ b/clang/test/CodeGen/decl.c @@ -102,3 +102,18 @@ void init_error(void) { global_dc->x = cp_diagnostic_starter; } + + +// rdar://8147692 - ABI crash in recursive struct-through-function-pointer. +typedef struct { + int x5a; +} x5; + +typedef struct x2 *x0; +typedef long (*x1)(x0 x0a, x5 x6); +struct x2 { + x1 x4; +}; +long x3(x0 x0a, x5 a) { + return x0a->x4(x0a, a); +} |