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.

Reply via email to