annotate clang/test/SemaTemplate/member-specialization.cpp @ 222:81f6424ef0e3 llvm-original

LLVM original branch
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sun, 18 Jul 2021 22:10:01 +0900
parents 1d019706d866
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
150
anatofuz
parents:
diff changeset
1 // RUN: %clang_cc1 -std=c++17 -verify %s
anatofuz
parents:
diff changeset
2 // expected-no-diagnostics
anatofuz
parents:
diff changeset
3
anatofuz
parents:
diff changeset
4 template<typename T, typename U> struct X {
anatofuz
parents:
diff changeset
5 template<typename V> const V &as() { return V::error; }
anatofuz
parents:
diff changeset
6 template<> const U &as<U>() { return u; }
anatofuz
parents:
diff changeset
7 U u;
anatofuz
parents:
diff changeset
8 };
anatofuz
parents:
diff changeset
9 int f(X<int, int> x) {
anatofuz
parents:
diff changeset
10 return x.as<int>();
anatofuz
parents:
diff changeset
11 }