https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84693
Bug ID: 84693 Summary: scalar DT not broadcast across an array in an initialization expression Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: kargl at gcc dot gnu.org Target Milestone: --- This code program foo type t integer :: z end type t type(t), parameter :: s(5) = t(42) if (any(s%z /= 42)) stop 1 end gives gfc -c a.f90 f951: internal compiler error: Segmentation fault 0x86f2f5a crash_signal ../../gcc/gcc/toplev.c:325 0x8efb604 splay_tree_min ../../gcc/libiberty/splay-tree.c:484 0x81f61c3 gfc_constructor_first(splay_tree_s*) ../../gcc/gcc/fortran/constructor.c:234 0x821413a find_component_ref ../../gcc/gcc/fortran/expr.c:1356 0x821413a simplify_const_ref ../../gcc/gcc/fortran/expr.c:1795 0x8214494 simplify_const_ref ../../gcc/gcc/fortran/expr.c:1740 0x8214ca3 gfc_simplify_expr(gfc_expr*, int) ../../gcc/gcc/fortran/expr.c:2004 0x8214dab simplify_parameter_variable ../../gcc/gcc/fortran/expr.c:1869 0x8214c8c gfc_simplify_expr(gfc_expr*, int) ../../gcc/gcc/fortran/expr.c:1976 0x8214789 simplify_intrinsic_op ../../gcc/gcc/fortran/expr.c:1105 0x8214789 gfc_simplify_expr(gfc_expr*, int) ../../gcc/gcc/fortran/expr.c:1965 0x827c748 resolve_operator ../../gcc/gcc/fortran/resolve.c:4158 0x827c748 gfc_resolve_expr(gfc_expr*) ../../gcc/gcc/fortran/resolve.c:6702 0x827e203 resolve_actual_arglist ../../gcc/gcc/fortran/resolve.c:2050 0x827e8de resolve_function ../../gcc/gcc/fortran/resolve.c:3123 0x827c0ac gfc_resolve_expr(gfc_expr*) ../../gcc/gcc/fortran/resolve.c:6709 0x828335b gfc_resolve_blocks(gfc_code*, gfc_namespace*) ../../gcc/gcc/fortran/resolve.c:10009 0x8274287 gfc_resolve_code(gfc_code*, gfc_namespace*) ../../gcc/gcc/fortran/resolve.c:11074 0x82771a4 resolve_codes ../../gcc/gcc/fortran/resolve.c:16512 0x827721e gfc_resolve(gfc_namespace*) ../../gcc/gcc/fortran/resolve.c:16547