1b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy// RUN: %clang_cc1 %s -DNS=std -emit-llvm -o - | FileCheck %s --check-prefix=CHECK-STD 2b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy// RUN: %clang_cc1 %s -DNS=n -emit-llvm -o - | FileCheck %s --check-prefix=CHECK-N 3b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy 4b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy// _ZNSt1DISt1CE1iE = std::D<std::C>::i 5b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy// CHECK-STD: @_ZNSt1DISt1CE1iE = 6b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy 7b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy// _ZN1n1DINS_1CEE1iE == n::D<n::C>::i 8b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy// CHECK-N: @_ZN1n1DINS_1CEE1iE = 9b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy 10b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloynamespace NS { 11b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy extern "C" { 12b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy class C { 13b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy }; 14b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy } 15b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy 16b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy template <class T> 17b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy class D { 18b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy public: 19b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy static int i; 20b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy }; 21b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy 22b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy} 23b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy 24b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy 25b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloyint f() { 26b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy return NS::D<NS::C>::i; 27b3c312ce4d94a037a83ba6df6650b0317b15edd1James Molloy} 28