As @jsgf points out in #556, the current code generated for constructors relies on RVO, or requires memmovable fields.