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

            Bug ID: 84734
           Summary: [8 Regression] Compiling
                    gfortran.dg/size_kind_(2|3).f90 with
                    -fdefault-integer-8 gives an ICE
           Product: gcc
           Version: 8.0.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: fortran
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dominiq at lps dot ens.fr
  Target Milestone: ---

Compiling gfortran.dg/size_kind_(2|3).f90 with -fdefault-integer-8 gives an
ICE:

% gfc /opt/gcc/_clean/gcc/testsuite/gfortran.dg/size_kind_2.f90
-fdefault-integer-8
f951: internal compiler error: Segmentation fault: 11

The backtrace is

* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS
(code=1, address=0x0)
    frame #0: 0x0000000100002367 f951`::eval_intrinsic_f3(op=INTRINSIC_PLUS,
eval=(f951`::gfc_arith_plus(gfc_expr *, gfc_expr *, gfc_expr **) at
arith.c:614), op1=0x0000000000000000, op2=0x0000000000000000)(gfc_expr *,
gfc_expr *, gfc_expr **), gfc_expr *, gfc_expr *) at arith.c:1661
   1658 static int
   1659 gfc_zero_size_array (gfc_expr *e)
   1660 {
-> 1661   if (e->expr_type != EXPR_ARRAY)
   1662     return 0;
   1663 
   1664   return e->value.constructor == NULL;
Target 0: (f951) stopped.
(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS
(code=1, address=0x0)
  * frame #0: 0x0000000100002367 f951`::eval_intrinsic_f3(op=INTRINSIC_PLUS,
eval=(f951`::gfc_arith_plus(gfc_expr *, gfc_expr *, gfc_expr **) at
arith.c:614), op1=0x0000000000000000, op2=0x0000000000000000)(gfc_expr *,
gfc_expr *, gfc_expr **), gfc_expr *, gfc_expr *) at arith.c:1661
    frame #1: 0x000000010003cc13 f951`gfc_simplify_expr(p=0x00000001439187e0,
type=0) at expr.c:1133
    frame #2: 0x0000000100029a4f f951`gfc_match_data_decl() at decl.c:2365
    frame #3: 0x00000001000299d4 f951`gfc_match_data_decl()
    frame #4: 0x000000010008e984 f951`::decode_statement() at parse.c:65
    frame #5: 0x000000010008e97f f951`::decode_statement()
    frame #6: 0x00000001000928b5 f951`::next_statement() at parse.c:1230
    frame #7: 0x000000010009a05f f951`gfc_parse_file() at parse.c:6190
    frame #8: 0x00000001000e661c f951`::gfc_be_parse_file() at f95-lang.c:204
    frame #9: 0x0000000100c2f59a f951`::compile_file() at toplev.c:455
    frame #10: 0x00000001012973eb f951`toplev::main(int, char**) at
toplev.c:2132
    frame #11: 0x0000000101298f2e f951`main(argc=3, argv=0x00007ffeefbff220) at
main.c:39

The change occurred between revisions r257969 (2018-02-25, OK) and r258235
(2018-03-04, ICE).

Reply via email to