Reviewed By: peixin
Differential Revision: https://reviews.llvm.org/D144383
// Allocatable sub-objects are not themselves allocatable (9.5.3.1 NOTE 2).
if (const semantics::Symbol *
sym{UnwrapWholeSymbolOrComponentOrCoarrayRef(expr)}) {
- return semantics::IsAllocatable(*sym);
+ return semantics::IsAllocatable(sym->GetUltimate());
}
return false;
}
subroutine s
integer, pointer :: p
integer, target :: t
+ real(4), allocatable :: arr
!$omp parallel private(p)
p=>t
!$omp end parallel
+
+ allocate(arr)
+ !$omp parallel private(arr)
+ if (.not. allocated(arr)) then
+ print *, 'not allocated'
+ endif
+ !$omp end parallel
end subroutine