13883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher// RUN: %clang_cc1 -w -emit-llvm %s -O1 -o - | FileCheck %s 23883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher// Check for bug compatibility with gcc. 33883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher 43883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopherconst int x __attribute((weak)) = 123; 53883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher 63883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopherint* f(void) { 73883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher return &x; 83883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher} 93883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher 103883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopherint g(void) { 113883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher // CHECK: ret i32 123 123883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher return *f(); 133883e66cfd55de70d89831cf26f9ae53931d11d3Eric Christopher} 14