diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2009-05-26 01:22:57 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2009-05-26 01:22:57 +0000 |
commit | 895771aa4b784e1ba3bce2b97ae38a86b8f90c8e (patch) | |
tree | 6864775829063864473ab0caf1f43ccd7efed1f2 /clang/test/CodeGen/weak-incomplete.c | |
parent | b7e69b06b52d84c22cbe414bbb3593445303507e (diff) | |
download | bcm5719-llvm-895771aa4b784e1ba3bce2b97ae38a86b8f90c8e.tar.gz bcm5719-llvm-895771aa4b784e1ba3bce2b97ae38a86b8f90c8e.zip |
Handle the edge case of a weak function with incomplete type correctly.
Found by code inspection; I haven't seen this in real-world code.
llvm-svn: 72408
Diffstat (limited to 'clang/test/CodeGen/weak-incomplete.c')
-rw-r--r-- | clang/test/CodeGen/weak-incomplete.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/clang/test/CodeGen/weak-incomplete.c b/clang/test/CodeGen/weak-incomplete.c new file mode 100644 index 00000000000..a15dbac03cb --- /dev/null +++ b/clang/test/CodeGen/weak-incomplete.c @@ -0,0 +1,5 @@ +// RUN: clang-cc -emit-llvm < %s | grep 'extern_weak' | count 1 + +struct S; +void __attribute__((weak)) foo1(struct S); +void (*foo2)(struct S) = foo1; |