https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68434

--- Comment #5 from ryan.burn at gmail dot com ---
reduction for the other test case:

template <typename, typename>                                                   
struct is_same  {                                                               
  static constexpr bool value = true;                                           
};                                                                              

template <typename T, typename U>                                               
concept bool Same = is_same<T, U>::value;                                       

template <typename T>                                                           
concept bool Integral = requires{                                               
  { T() } -> Same<typename T::value_type>;                                      
};                                                                              

struct A {                                                                      
  using value_type = bool;                                                      
};                                                                              

template <Integral B>                                                           
using not_ = A;                                                                 

int main() {                                                                    
  Integral<not_<A>>;                                                            
  return 0;                                                                     
}

Reply via email to