blob: decf5d6fcb229e6af3b62095b8906e29477a8c65 [file] [log] [blame]
Nico Weberea7386d2015-04-15 21:50:06 +00001// RUN: %clang_cc1 -triple i386-pc-win32 %s -emit-llvm -fms-compatibility -o - | FileCheck %s
2
3// selectany turns extern "C" variable declarations into definitions.
4extern __declspec(selectany) int x1;
5extern "C" __declspec(selectany) int x2;
6extern "C++" __declspec(selectany) int x3;
7extern "C" {
8__declspec(selectany) int x4;
9}
Nico Weber608e7682015-04-15 23:04:24 +000010__declspec(selectany) int x5;
Nico Weberea7386d2015-04-15 21:50:06 +000011// CHECK: @"\01?x1@@3HA" = weak_odr global i32 0, comdat, align 4
12// CHECK: @x2 = weak_odr global i32 0, comdat, align 4
13// CHECK: @"\01?x3@@3HA" = weak_odr global i32 0, comdat, align 4
14// CHECK: @x4 = weak_odr global i32 0, comdat, align 4
Nico Weber608e7682015-04-15 23:04:24 +000015// CHECK: @"\01?x5@@3HA" = weak_odr global i32 0, comdat, align 4