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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to work|                            |11.1.0
      Known to fail|                            |10.1.0, 9.4.0

--- Comment #10 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
In GCC 11:
  typedef double MAT[0:(sizetype) ((ssizetype) SAVE_EXPR <sz> -
1)][0:(sizetype) ((ssizetype) SAVE_EXPR <sz> - 1)];
  double[0:(sizetype) ((ssizetype) SAVE_EXPR <sz> - 1)][0:(sizetype)
((ssizetype) SAVE_EXPR <sz> - 1)] * a;

    double[0:(sizetype) ((ssizetype) SAVE_EXPR <sz> - 1)][0:(sizetype)
((ssizetype) SAVE_EXPR <sz> - 1)] * a;
  <<cleanup_point <<< Unknown tree: expr_stmt
  (void) (a = (double[0:(sizetype) ((ssizetype) SAVE_EXPR <sz> -
1)][0:(sizetype) ((ssizetype) SAVE_EXPR <sz> - 1)] *) malloc ((long unsigned
int) (((sizetype) SAVE_EXPR <sz> * (sizetype) SAVE_EXPR <sz>) * 8))) >>>>>;
  return <retval> = a == 0B;

While in GCC 10:

  typedef double MAT[0:(sizetype) (SAVE_EXPR <(ssizetype) sz +
-1>)][0:(sizetype) (SAVE_EXPR <(ssizetype) sz + -1>)];
  double[0:(sizetype) (SAVE_EXPR <(ssizetype) sz + -1>)][0:(sizetype)
(SAVE_EXPR <(ssizetype) sz + -1>)] * a;

    double[0:(sizetype) (SAVE_EXPR <(ssizetype) sz + -1>)][0:(sizetype)
(SAVE_EXPR <(ssizetype) sz + -1>)] * a;
  <<cleanup_point <<< Unknown tree: expr_stmt
  (void) (a = (double[0:(sizetype) (SAVE_EXPR <(ssizetype) sz +
-1>)][0:(sizetype) (SAVE_EXPR <(ssizetype) sz + -1>)] *) malloc ((long unsigned
int) ((((sizetype) (SAVE_EXPR <(ssizetype) sz + -1>) + 1) * ((sizetype)
(SAVE_EXPR <(ssizetype) sz + -1>) + 1)) * 8))) >>>>>;
  return <retval> = a == 0B;

Reply via email to