xref: /llvm-project/clang/test/SemaCXX/PR19955.cpp (revision 07910d6ab548e7a57717af7e28d994cd652fd75d)
1*07910d6aSDavid Majnemer // RUN: %clang_cc1 -triple i686-win32 -verify -std=c++11 %s
2*07910d6aSDavid Majnemer // RUN: %clang_cc1 -triple i686-mingw32 -verify -std=c++11 %s
3c28a964cSDavid Majnemer 
411a54c34SDavid Majnemer extern int __attribute__((dllimport)) var;
511a54c34SDavid Majnemer constexpr int *varp = &var; // expected-error {{must be initialized by a constant expression}}
611a54c34SDavid Majnemer 
711a54c34SDavid Majnemer extern __attribute__((dllimport)) void fun();
811a54c34SDavid Majnemer constexpr void (*funp)(void) = &fun; // expected-error {{must be initialized by a constant expression}}
90c43d807SDavid Majnemer 
100c43d807SDavid Majnemer template <void (*)()>
110c43d807SDavid Majnemer struct S {};
120c43d807SDavid Majnemer S<&fun> x;
130c43d807SDavid Majnemer 
140c43d807SDavid Majnemer template <int *>
150c43d807SDavid Majnemer struct U {};
160c43d807SDavid Majnemer U<&var> y;
17