| subroutine test1 | |
| character*8 c | |
| character*1 d, f | |
| dimension d(2), f(2) | |
| character*4 e | |
| equivalence (c(1:1), d(1)), (c(3:5), e(2:4)), (c(6:6), f(2)) | |
| c='abcdefgh' | |
| if (c.ne.'abcdefgh'.or.d(1).ne.'a'.or.d(2).ne.'b') STOP 1 | |
| if (e.ne.'bcde'.or.f(1).ne.'e'.or.f(2).ne.'f') STOP 2 | |
| end subroutine test1 | |
| subroutine test2 | |
| equivalence (c(1:1), d(1)), (c(3:5), e(2:4)), (c(6:6), f(2)) | |
| character*8 c | |
| character*1 d, f | |
| dimension d(2), f(2) | |
| character*4 e | |
| c='abcdefgh' | |
| if (c.ne.'abcdefgh'.or.d(1).ne.'a'.or.d(2).ne.'b') STOP 3 | |
| if (e.ne.'bcde'.or.f(1).ne.'e'.or.f(2).ne.'f') STOP 4 | |
| end subroutine test2 | |
| subroutine test3 | |
| character*8 c | |
| character*1 d, f | |
| character*4 e | |
| equivalence (c(1:1), d(1)), (c(3:5), e(2:4)), (c(6:6), f(2)) | |
| dimension d(2), f(2) | |
| c='abcdefgh' | |
| if (c.ne.'abcdefgh'.or.d(1).ne.'a'.or.d(2).ne.'b') STOP 5 | |
| if (e.ne.'bcde'.or.f(1).ne.'e'.or.f(2).ne.'f') STOP 6 | |
| end subroutine test3 | |
| subroutine test4 | |
| dimension d(2), f(2) | |
| equivalence (c(1:1), d(1)), (c(3:5), e(2:4)), (c(6:6), f(2)) | |
| character*8 c | |
| character*1 d, f | |
| character*4 e | |
| c='abcdefgh' | |
| if (c.ne.'abcdefgh'.or.d(1).ne.'a'.or.d(2).ne.'b') STOP 7 | |
| if (e.ne.'bcde'.or.f(1).ne.'e'.or.f(2).ne.'f') STOP 8 | |
| end subroutine test4 | |
| program main | |
| call test1 | |
| call test2 | |
| call test3 | |
| call test4 | |
| end program main |