===================================================================
@@ -2050,7 +2050,7 @@ gfc_match_varspec (gfc_expr *primary, int equiv_fl
if (m != MATCH_YES)
return MATCH_ERROR;
- if (sym->f2k_derived)
+ if (sym && sym->f2k_derived)
tbp = gfc_find_typebound_proc (sym, &t, name, false, &gfc_current_locus);
else
tbp = NULL;
===================================================================
@@ -0,0 +1,10 @@
+! { dg-do compile }
+!
+! PR 78593: [6/7 Regression] ICE in gfc_match_varspec, at fortran/primary.c:2053
+!
+! Contributed by Gerhard Steinmetz <gerhard.steinmetz.fortran@t-online.de>
+
+type(t) function add (x, y) ! { dg-error "is not accessible" }
+ integer, intent(in) :: x, y
+ add%a = x + y ! { dg-error "Unclassifiable statement" }
+end