https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94010
--- Comment #4 from joseph at codesourcery dot com <joseph at codesourcery dot com> --- See bug 59863, with discussion of the requirement for distinct copies of the array in recursive calls to have distinct addresses. (Thus, this would definitely not be valid without -fmerge-all-constants, as the example in this bug could involve a recursive call - whereas the example in bug 59863 does not involve the address of the const array escaping, so the transformation would be valid in that example even without -fmerge-all-constants. It's not valid for code to write to an array defined as const, however.)