https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113797
--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to martin from comment #3) > typedef character(kind=1) struct > character(kind=1)[1:slen.1][1:slen.1]; > pstr.2 = 0B; > slen.1 = 0; Maybe the order here. slen.1 should be set to 0 before the use inside the typedef. That is kinda of the reason why static works (with not openmp).