https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124390
Nathaniel Shead <nshead at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
Target Milestone|--- |16.0
Assignee|unassigned at gcc dot gnu.org |nshead at gcc dot
gnu.org
--- Comment #2 from Nathaniel Shead <nshead at gcc dot gnu.org> ---
Reduced:
module;
template <typename T> struct tuple {
template <typename U> friend void operator==(tuple, U);
};
template <typename T> tuple<T> make_unique();
export module M;
void foo() {
auto lambda = [] {};
make_unique<decltype(lambda)>();
}
Skipping all hidden declarations may not be feasible, but I think skipping
bindings for at least hidden friends would be a sensible fix for this change;
I'll test and post a patch soon.