https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91726
--- Comment #8 from Paul Thomas <pault at gcc dot gnu.org> --- (In reply to José Rui Faustino de Sousa from comment #7) > Hi all! > > Still ICEs with 9/10/11 using -ftrapv -fcheck=bounds > > Best regards, > José Rui Yes, indeed. This with those compile options module m type s class(*), allocatable :: a[:] ! This ICEd end type end gives ../pr91726/pr91726.f90:5:3: 5 | end | ^ Error: mismatching comparison operand types integer(kind=8) unsigned long if (_10 != 1) goto <D.4205>; else goto <D.4206>; ../pr91726/pr91726.f90:5:3: internal compiler error: ‘verify_gimple’ failed 0xec247d verify_gimple_in_seq(gimple*) ../../gcc/gcc/tree-cfg.c:5119 The problem appears to lie in the bounds checking in trans-expr.c(gfc_copy_class_to_class) at line 1425 in master. It is produced by the vtable _copy function. For some reason that I cannot see from the code, 10-branch compiles this snippet just fine, while 9-branch produces a completely different error. It's now in my spreadsheet as an intersting one! Paul