aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/cpp2a/concepts-pr70037.C
blob: 7382764ea01b87b235b5ff0623ce313718642251 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// PR c++/70037
// { dg-do compile { target c++20 } }

namespace std {
  template<typename>
  struct F {
    static constexpr bool value = false;
  };

  template<typename T>
  struct tuple {
    constexpr tuple() requires (F<T>::value)  {}
    explicit constexpr tuple() requires (F<T>::value) && (true) {}
  };
}

using std::tuple;
template struct std::tuple<tuple<int>>;