https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94960
--- Comment #16 from Jonathan Wakely <redi at gcc dot gnu.org> --- I think libc++ makes everything always_inline as a way to avoid libc++ symbol names being ABI artifacts that user code depends on, not because they really want everything inlined. I could be wrong about that though.