diff options
Diffstat (limited to 'test/CodeGenCXX/cxx1z-inline-variables.cpp')
-rw-r--r-- | test/CodeGenCXX/cxx1z-inline-variables.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/test/CodeGenCXX/cxx1z-inline-variables.cpp b/test/CodeGenCXX/cxx1z-inline-variables.cpp index 2d16acd8a8c2..50eab3b70611 100644 --- a/test/CodeGenCXX/cxx1z-inline-variables.cpp +++ b/test/CodeGenCXX/cxx1z-inline-variables.cpp @@ -58,14 +58,22 @@ template<typename T> struct X { static int a; static inline int b; static int c; + static const int d; + static int e; }; // CHECK: @_ZN1XIiE1aE = linkonce_odr global i32 10 // CHECK: @_ZN1XIiE1bE = global i32 20 // CHECK-NOT: @_ZN1XIiE1cE +// CHECK: @_ZN1XIiE1dE = linkonce_odr constant i32 40 +// CHECK: @_ZN1XIiE1eE = linkonce_odr global i32 50 template<> inline int X<int>::a = 10; int &use3 = X<int>::a; template<> int X<int>::b = 20; template<> inline int X<int>::c = 30; +template<typename T> constexpr int X<T>::d = 40; +template<typename T> inline int X<T>::e = 50; +const int *use_x_int_d = &X<int>::d; +const int *use_x_int_e = &X<int>::e; template<typename T> struct Y; template<> struct Y<int> { |