https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66461
Harald Anlauf <anlauf at gmx dot de> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |anlauf at gmx dot de --- Comment #1 from Harald Anlauf <anlauf at gmx dot de> --- (In reply to Gerhard Steinmetz from comment #0) > A missing end program in a "fixed" source s.f : > program p > integer x(2) > x = 0 > if ( x(1) < 0 .or. > & x(2) < 0 ) print *, x > !end > > yields : > f951: internal compiler error: free_expr0(): Bad expr type That's obviously an old regression: gcc/4.4.5: pr66451.f:4.27: if ( x(1) < 0 .or. 1 Error: Syntax error in expression at (1) Error: Unexpected end of file in 'pr66451.f' gcc/4.5.2: pr66451.f:4.9: if ( x(1) < 0 .or. 1 Internal Error at (1): free_expr0(): Bad expr type