1 inline int var1 = 4; 2 static inline int var7 = 9; 3 namespace N 4 { 5 int inline var2; 6 inline const int var6 = 8; 7 static inline double var8 = 2.0; 8 extern inline char var10; 9 } 10 struct S 11 { 12 static constexpr int var3 = 5; 13 static inline int var4 = 6; 14 static constexpr int var5 = 7; 15 static inline double var9 = 3.0; 16 static constexpr inline int var11 = 11; 17 }; 18 const int S::var3; 19 const int S::var3; 20 extern int foo (int); 21 extern int bar (int); TT22struct T { T () { t = foo (3); } T (int x) { t = foo (x); } int t; }; 23 inline int var12 = foo (0); 24 int inline var13 = foo (1); 25 struct U 26 { 27 static inline int var14 = foo (2); 28 static inline T var15; 29 static inline T var16 = 4; 30 static int inline var17 = foo (5); 31 static constexpr double var18 = 4.0; 32 }; 33 template <typename T> 34 struct Y 35 { 36 static constexpr T var24 = 6; 37 static inline T var25 = 7; 38 static inline int var26 = 8; 39 static constexpr T var28 = 10; 40 }; 41 template <typename T> 42 const T Y<T>::var24; 43 template <typename T> 44 const T Y<T>::var24; 45 template <typename T> 46 inline T var27 = 9; 47