Index: test/cfi/icall/weak.c =================================================================== --- /dev/null +++ test/cfi/icall/weak.c @@ -0,0 +1,14 @@ +// Test that weak symbols stay weak. +// RUN: %clang_cfi -lm -o %t1 %s && %t1 + +__attribute__((weak)) void does_not_exist(void); + +__attribute__((noinline)) +void foo(void (*p)(void)) { + p(); +} + +int main(int argc, char **argv) { + if (does_not_exist) + foo(does_not_exist); +}