https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66193
--- Comment #14 from Gerhard Steinmetz <gerhard.steinmetz.fort...@t-online.de> --- Attached some prepared test files. Added more test cases for integer and real. Added new test case for logical : subroutine s2 logical(8), parameter :: z1(2) = .true. .or. [ logical(8) :: [ logical(4) :: ], .false., .false. ] logical(8) :: z2(2) = .true. .or. [ logical(8) :: [ logical(4) :: ], .false., .false. ] logical(8) :: z3(2) z3 = .true. .or. [ logical(8) :: [ logical(4) :: ], .false., .false. ] if ( (.not. z1(1)) .and. (.not. z1(2)) ) call abort if ( (.not. z2(1)) .and. (.not. z2(2)) ) call abort if ( (.not. z3(1)) .and. (.not. z3(2)) ) call abort end subroutine s2