1! { dg-do run } 2program a 3 4 implicit none 5 6 integer n 7 character(len=70) e1 8 character(len=30) e2 9 integer, allocatable :: i(:) 10 11 e1 = 'No error' 12 allocate(i(4), stat=n, errmsg=e1) 13 if (trim(e1) /= 'No error') call abort 14 deallocate(i) 15 16 e2 = 'No error' 17 allocate(i(4),stat=n, errmsg=e2) 18 if (trim(e2) /= 'No error') call abort 19 deallocate(i) 20 21 22 e1 = 'No error' 23 allocate(i(4), stat=n, errmsg=e1) 24 allocate(i(4), stat=n, errmsg=e1) 25 if (trim(e1) /= 'Attempt to allocate an allocated object') call abort 26 deallocate(i) 27 28 e2 = 'No error' 29 allocate(i(4), stat=n, errmsg=e2) 30 allocate(i(4), stat=n, errmsg=e2) 31 if (trim(e2) /= 'Attempt to allocate an allocat') call abort 32 33end program a 34