https://gcc.gnu.org/bugzilla/show_bug.cgi?id=14179
--- Comment #82 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Jason Merrill <ja...@gcc.gnu.org>: https://gcc.gnu.org/g:e98ebda074bf8fc5f630a93085af81f52437d851 commit r10-6388-ge98ebda074bf8fc5f630a93085af81f52437d851 Author: Jason Merrill <ja...@redhat.com> Date: Fri Jan 31 00:21:44 2020 -0500 c++: Reduce memory consumption for arrays of non-aggregate type. The remaining low-hanging fruit for improvement on memory consumption in the 14179 testcase was the duplication of the CONSTRUCTOR for the array by reshape_init. This patch changes reshape_init to reuse a single constructor for an array of non-aggregate type such as the one in the testcase. PR c++/14179 * decl.c (reshape_init_array_1): Reuse a single CONSTRUCTOR with non-aggregate elements. (reshape_init_array): Add first_initializer_p parm. (reshape_init_r): Change first_initializer_p from bool to tree. (reshape_init): Pass init to it.