explicit81.c

来自「linux下编程用 编译软件」· C语言 代码 · 共 44 行

C
44
字号
// { dg-do assemble  }// // Copyright (C) 2000 Free Software Foundation, Inc.// Contributed by Nathan Sidwell 10 Aug 2000 <nathan@codesourcery.com>// bug 371 We failed to subst explicit template args before trying to// deduce the template.namespace N{enum E { e0 };template< E e > void nf();}template< N::E e > void gf();struct X {  template<N::E e> void xfn ();  template<N::E e> static void sfn ();};template < class C >void tf(C *ptr){  N::nf<N::e0>();  gf<N::e0>();  ptr->X::xfn <N::e0> ();  ptr->C::template xfn <N::e0> ();  ptr->template xfn <N::e0> ();  ptr->X::sfn <N::e0> ();  ptr->C::template sfn <N::e0> ();  ptr->template sfn <N::e0> ();  X::sfn <N::e0> ();  C::template sfn <N::e0> ();}void f(X *ptr){  ptr->xfn <N::e0> ();  tf(ptr);}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?