1*4168efe1SChuanqi Xu // RUN: %clang_cc1 -triple x86_64-unknown-linux-gnu -std=c++20 -emit-llvm -triple %itanium_abi_triple -o - %s | FileCheck %s 2e587372fSChuanqi Xu 3e587372fSChuanqi Xu module; 4e587372fSChuanqi Xu 5e587372fSChuanqi Xu #include "Inputs/module-extern-C.h" 6e587372fSChuanqi Xu 7e587372fSChuanqi Xu export module x; 8e587372fSChuanqi Xu 9*4168efe1SChuanqi Xu // CHECK: void @foo() foo()10e587372fSChuanqi Xuextern "C" void foo() { 11e587372fSChuanqi Xu return; 12e587372fSChuanqi Xu } 13e587372fSChuanqi Xu 14e587372fSChuanqi Xu extern "C" { 15*4168efe1SChuanqi Xu // CHECK: void @bar() bar()16e587372fSChuanqi Xuvoid bar() { 17e587372fSChuanqi Xu return; 18e587372fSChuanqi Xu } 19*4168efe1SChuanqi Xu // CHECK: i32 @baz() baz()20e587372fSChuanqi Xuint baz() { 21e587372fSChuanqi Xu return 3; 22e587372fSChuanqi Xu } 23*4168efe1SChuanqi Xu // CHECK: double @double_func() double_func()24e587372fSChuanqi Xudouble double_func() { 25e587372fSChuanqi Xu return 5.0; 26e587372fSChuanqi Xu } 27e587372fSChuanqi Xu } 28