https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89219
Dominique d'Humieres <dominiq at lps dot ens.fr> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2019-02-06 CC| |jvdelisle at gcc dot gnu.org Summary|[gfortran 7.3] compiler |ICE with derived type I/O |throws internal compiler | |error: segmentation fault | Ever confirmed|0 |1 --- Comment #2 from Dominique d'Humieres <dominiq at lps dot ens.fr> --- > Works for me with FSF 7.3.0 on x86_64-linux. Did you uncomment the line !print*, l%get() ! in this way doesn't work, throws internal compile error ? If I do so, I get with 7.3.0 up to trunk (9.0) * thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x37) frame #0: 0x00000001001395a8 f951`::transfer_expr(se=0x00007ffeefbfe810, ts=0x0000000143e16c08, addr_expr=0x0000000143c0bce8, code=0x0000000143e16cd0, vptr=<unavailable>) at trans-io.c:2438 2435 && !(ts->u.derived->attr.sequence 2436 || ts->u.derived->attr.is_bind_c)) 2437 || (ts->type == BT_CLASS -> 2438 && !GFC_CLASS_TYPE_P (TREE_TYPE (decl)))) 2439 gfc_conv_derived_to_class (se, code->expr1, 2440 dtio_sub->formal->sym->ts, 2441 vptr, false, false); Target 0: (f951) stopped. (lldb) bt * thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x37) * frame #0: 0x00000001001395a8 f951`::transfer_expr(se=0x00007ffeefbfe810, ts=0x0000000143e16c08, addr_expr=0x0000000143c0bce8, code=0x0000000143e16cd0, vptr=<unavailable>) at trans-io.c:2438 frame #1: 0x000000010013c8a1 f951`gfc_trans_transfer(code=<unavailable>) at trans-io.c:2663 frame #2: 0x00000001000dffec f951`::trans_code(code=0x0000000143e16cd0, cond=0x0000000143df12f8) at trans.c:2038 frame #3: 0x000000010013a2d8 f951`::build_dt(function=0x0000000143dcb600, code=0x0000000143e16f40) at trans-io.c:2026 frame #4: 0x00000001000e000c f951`::trans_code(code=0x0000000143e16f40, cond=0x0000000000000000) at trans.c:2010 frame #5: 0x0000000100107b41 f951`gfc_generate_function_code(ns=<unavailable>) at trans-decl.c:6527 frame #6: 0x0000000100094f24 f951`gfc_parse_file() [inlined] translate_all_program_units(gfc_global_ns_list=<unavailable>) at parse.c:6134 frame #7: 0x0000000100094e3a f951`gfc_parse_file() frame #8: 0x00000001000dd157 f951`::gfc_be_parse_file() at f95-lang.c:204 frame #9: 0x0000000100b51b2a f951`::compile_file() at toplev.c:456 frame #10: 0x0000000100f64014 f951`toplev::main(int, char**) at toplev.c:2176 frame #11: 0x0000000100f63ee0 f951`toplev::main(this=0x00007ffeefbff0fe, argc=<unavailable>, argv=<unavailable>) frame #12: 0x0000000100f66881 f951`main(argc=2, argv=0x00007ffeefbff130) at main.c:39 frame #13: 0x00007fff63ab6ed9 libdyld.dylib`start + 1