https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122062
Bug ID: 122062
Summary: piecewise_linear_distribution(InputIteratorB,
InputIteratorB, InputIteratorW) invokes comma
operator
Product: gcc
Version: 15.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: libstdc++
Assignee: unassigned at gcc dot gnu.org
Reporter: hewillk at gmail dot com
Target Milestone: ---
#include <random>
struct I {
using iterator_category = std::input_iterator_tag;
using value_type = double;
using difference_type = std::ptrdiff_t;
using pointer = double*;
using reference = double&;
reference operator*() const;
pointer operator->() const;
I& operator++();
I operator++(int);
bool operator==(const I&) const;
void operator,(auto) = delete;
};
int main() {
std::piecewise_linear_distribution<double> dist(I{}, I{}, I{});
}
https://godbolt.org/z/7cMT6qT5Y