https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107085
--- Comment #6 from Marek Polacek <mpolacek at gcc dot gnu.org> --- (In reply to Roy Jacobson from comment #3) > Thanks! But a Base const& is still not detected: > > static_assert(__reference_constructs_from_temporary(Base const&, Derived)); > > And in this case I think it _is_ a bug that this doesn't compile? To make sure I understand this correctly, __reference_constructs_from_temporary should say "yes" here, because it's just like const Base& b(Derived{}); where we bind 'b' to the Base subobject of a temporary Derived object, yes?