[Bug c++/105256] [9/10/11/12 Regression] ICE compiling firefox-99

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Apr 14 13:52:31 GMT 2022


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105256

--- Comment #22 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
So, wonder if for a CONSTRUCTOR containing elements which are CONSTRUCTORs with
CONSTRUCTOR_PLACEHOLDER_BOUNDARY set we shouldn't move the
CONSTRUCTOR_PLACEHOLDER_BOUNDARY flag to the outer CONSTRUCTOR (if not set
there already).
The reason why the flag was introduced was to catch e.g. those
X x { 1, bar (X{2}).n }; etc. cases where the X{2} contains an unrelated
PLACEHOLDER_EXPR to the outer one.
But when we have directly nested CONSTRUCTORs, we can replace_placeholders all
of those PLACEHOLDER_EXPRs from in there, the object will be simply some member
of the var or TARGET_EXPR slot etc.


More information about the Gcc-bugs mailing list