Mercurial > hg > CbC > CbC_llvm
view clang/test/Modules/Inputs/merge-using-decls/a.h @ 266:00f31e85ec16 default tip
Added tag current for changeset 31d058e83c98
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 14 Oct 2023 10:13:55 +0900 |
parents | 5f17cb93ff66 |
children |
line wrap: on
line source
struct X { int v; typedef int t; void f(X); }; struct YA { int value; typedef int type; }; struct Z { void f(Z); }; template<typename T> struct C : X, T { using T::value; using typename T::type; using X::v; using typename X::t; }; template<typename T> struct D : X, T { using T::value; using typename T::type; using X::v; using typename X::t; }; template<typename T> struct E : X, T { using T::value; using typename T::type; using X::v; using typename X::t; }; template<typename T> struct F : X, T { using T::value; using typename T::type; using X::v; using typename X::t; }; // Force instantiation. typedef C<YA>::type I; typedef D<YA>::type I; typedef E<YA>::type I; typedef F<YA>::type I; #if __cplusplus >= 201702L template<typename ...T> struct G : T... { using T::f...; }; using Q = decltype(G<X, Z>()); #endif