On Thu, Mar 30, 2017 at 10:21:09AM -0600, Martin Sebor wrote: > I don't think rejecting all VLA initialization just to avoid > an Asan ICE with string literals is a good way to solve the > problem. For one, it will break working programs that rely on
The Asan ICE can be easily worked around, the reason I don't want to do that is that this is the second time this broke something; the FE should not pass a VLA static constant (STRING_CST in this case) to the middle-end, VLA objects can be by definition only automatic variables or something on the heap, never in the data/rodata sections. Plus, while for VLA initialized from arrays etc. we copy the initializer and zero initialize the rest, for VLA initialization by STRING_CST we just copy over the STRING_CST and the rest is uninitialized. Jakub