view clang/test/SemaTemplate/temp_explicit_cxx0x.cpp @ 236:c4bab56944e8 llvm-original

LLVM 16
author kono
date Wed, 09 Nov 2022 17:45:10 +0900
parents 1d019706d866
children
line wrap: on
line source

// RUN: %clang_cc1 -fsyntax-only -std=c++11 -verify %s
namespace N1 {

  template<typename T> struct X0 { }; // expected-note{{here}}

  namespace Inner {
    template<typename T> struct X1 { };
  }

  template struct X0<int>;
  template struct Inner::X1<int>;
}

template<typename T> struct X2 { }; // expected-note{{here}}

template struct ::N1::Inner::X1<float>;

namespace N2 {
  using namespace N1;

  template struct X0<double>; // expected-error{{must occur in namespace 'N1'}}

  template struct X2<float>; // expected-error{{at global scope}}
}