; RUN: llvm-extract -func foo -S < %s | FileCheck %s ; RUN: llvm-extract -delete -func foo -S < %s | FileCheck --check-prefix=DELETE %s ; Test that we don't convert weak_odr to external definitions. ; CHECK: @bar = external global i32 ; CHECK: define weak_odr i32* @foo() { ; CHECK-NEXT: ret i32* @bar ; CHECK-NEXT: } ; DELETE: @bar = weak_odr global i32 42 ; DELETE: declare i32* @foo() @bar = weak_odr global i32 42 define weak_odr i32* @foo() { ret i32* @bar } define void @g() { %c = call i32* @foo() ret void }