https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110138
--- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> --- (In reply to Hongyu Wang from comment #0) > GCC 12.3/Clang 16 outputs: > Alloc: 3 > Alloc: 6 > Alloc: 9 > Alloc: 12 "Clang 16" here actually means "Any version of Clang with libstdc++ headers from GCC 12". The figures for Clang's own libc++ are different: Alloc: 0 Alloc: 4 Alloc: 8 Alloc: 12 But again, this is meaningless. Nobody cares how many times an allocator is copied.