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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ice-checking,
                   |                            |ice-on-valid-code
   Last reconfirmed|                            |2024-04-08
                 CC|                            |jason at gcc dot gnu.org
   Target Milestone|---                         |13.3
            Summary|[14 regression] ICE with    |[13/14 regression] ICE with
                   |-fno-elide-constructors in  |-fno-elide-constructors in
                   |C++14 mode for non-constant |C++14 mode for non-constant
                   |initializer in array new    |initializer in array new
                   |                            |since
                   |                            |r13-3175-g6ffbf87ca66f4e
             Status|UNCONFIRMED                 |NEW
     Ever confirmed|0                           |1
           Priority|P3                          |P2

--- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> ---
    case TARGET_EXPR: 
      /* A TARGET_EXPR that expresses direct-initialization should have been
         elided by cp_gimplify_init_expr.  */
      gcc_checking_assert (!TARGET_EXPR_DIRECT_INIT_P (*expr_p));
      /* Likewise, but allow extra temps of trivial type so that
         gimplify_init_ctor_preeval can materialize subobjects of a CONSTRUCTOR
         on the rhs of an assignment, as in constexpr-aggr1.C.  */
      gcc_checking_assert (!TARGET_EXPR_ELIDING_P (*expr_p)
                           || !TREE_ADDRESSABLE (TREE_TYPE (*expr_p)));

Reply via email to