ericniebler / stl2

LaTeX and Markdown source for the Ranges TS/STL2 and associated proposals
88 stars 8 forks source link

Exposition-only has-arrow concept is ill-formed #602

Open ericniebler opened 5 years ago

ericniebler commented 5 years ago
template<InputIterator I>
  concept has-arrow = // exposition only
    is_pointer_v<I> || requires(I i) { i.operator->(); };

A concept cannot have a constrained template parameter. Should be:

Proposed Resolution

template<class I>
  concept has-arrow = // exposition only
    InputIterator<I> && (is_pointer_v<I> || requires(I i) { i.operator->(); });