On Fri, Feb 16, 2018 at 09:25:30PM +0100, Richard Biener wrote: > But the broken compilers will overwrite the memset data with possibly > uninitialized fields of a TARGET_EXPR.
For the vec.h case no, there is no temporary involved, it is constructed directly into the memory. For the hash-table.h you're right, so we shouldn't change anything, perhaps we can add something based on C++11 type_traits conditionally to determine what ctors to look at (std::is_pod false, std::is_trivially_constructible true?)? Jakub