Nico Weber | ea7386d | 2015-04-15 21:50:06 +0000 | [diff] [blame] | 1 | // 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. |
| 4 | extern __declspec(selectany) int x1; |
| 5 | extern "C" __declspec(selectany) int x2; |
| 6 | extern "C++" __declspec(selectany) int x3; |
| 7 | extern "C" { |
| 8 | __declspec(selectany) int x4; |
| 9 | } |
Nico Weber | 608e768 | 2015-04-15 23:04:24 +0000 | [diff] [blame] | 10 | __declspec(selectany) int x5; |
Nico Weber | ea7386d | 2015-04-15 21:50:06 +0000 | [diff] [blame] | 11 | // 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 Weber | 608e768 | 2015-04-15 23:04:24 +0000 | [diff] [blame] | 15 | // CHECK: @"\01?x5@@3HA" = weak_odr global i32 0, comdat, align 4 |