view gcc/testsuite/g++.dg/concepts/req8.C @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children 84e7813d76e9
line wrap: on
line source

// { dg-do compile }
// { dg-options "-std=c++17 -fconcepts" }

// Check that type requirements are normalized correctly.

template<typename T>
  concept bool Has_member_type() {
    return requires() { typename T::type; };
  }

template<typename T>
  concept bool Concept() {
    return true && Has_member_type<T>();
  }

template<Concept T>
  void foo( T t  ) { }