1*67e74705SXin Li // RUN: %clang_cc1 -triple i386-pc-win32 %s -emit-llvm -fms-compatibility -o - | FileCheck %s 2*67e74705SXin Li 3*67e74705SXin Li // selectany turns extern "C" variable declarations into definitions. 4*67e74705SXin Li extern __declspec(selectany) int x1; 5*67e74705SXin Li extern "C" __declspec(selectany) int x2; 6*67e74705SXin Li extern "C++" __declspec(selectany) int x3; 7*67e74705SXin Li extern "C" { 8*67e74705SXin Li __declspec(selectany) int x4; 9*67e74705SXin Li } 10*67e74705SXin Li __declspec(selectany) int x5; 11*67e74705SXin Li // CHECK: @"\01?x1@@3HA" = weak_odr global i32 0, comdat, align 4 12*67e74705SXin Li // CHECK: @x2 = weak_odr global i32 0, comdat, align 4 13*67e74705SXin Li // CHECK: @"\01?x3@@3HA" = weak_odr global i32 0, comdat, align 4 14*67e74705SXin Li // CHECK: @x4 = weak_odr global i32 0, comdat, align 4 15*67e74705SXin Li // CHECK: @"\01?x5@@3HA" = weak_odr global i32 0, comdat, align 4 16