1*c9bd88e6SHans Wennborg // RUN: %clang_cc1 %s -DNS=std -emit-llvm -triple %itanium_abi_triple -o - | FileCheck %s --check-prefix=CHECK-STD 2*c9bd88e6SHans Wennborg // RUN: %clang_cc1 %s -DNS=n -emit-llvm -triple %itanium_abi_triple -o - | FileCheck %s --check-prefix=CHECK-N 37583ccdcSJames Molloy 47583ccdcSJames Molloy // _ZNSt1DISt1CE1iE = std::D<std::C>::i 57583ccdcSJames Molloy // CHECK-STD: @_ZNSt1DISt1CE1iE = 67583ccdcSJames Molloy 77583ccdcSJames Molloy // _ZN1n1DINS_1CEE1iE == n::D<n::C>::i 87583ccdcSJames Molloy // CHECK-N: @_ZN1n1DINS_1CEE1iE = 97583ccdcSJames Molloy 107583ccdcSJames Molloy namespace NS { 117583ccdcSJames Molloy extern "C" { 127583ccdcSJames Molloy class C { 137583ccdcSJames Molloy }; 147583ccdcSJames Molloy } 157583ccdcSJames Molloy 167583ccdcSJames Molloy template <class T> 177583ccdcSJames Molloy class D { 187583ccdcSJames Molloy public: 197583ccdcSJames Molloy static int i; 207583ccdcSJames Molloy }; 217583ccdcSJames Molloy 227583ccdcSJames Molloy } 237583ccdcSJames Molloy 247583ccdcSJames Molloy f()257583ccdcSJames Molloyint f() { 267583ccdcSJames Molloy return NS::D<NS::C>::i; 277583ccdcSJames Molloy } 28