This PR changes the build system to use use the sources for the module `omp_lib` and the `omp_lib.h` include file from the `openmp` runtime project and not from a separate copy of these files. This will greatly reduce potential for inconsistencies when adding features to the OpenMP runtime implementation. When the OpenMP subproject is not configured, this PR also disables the corresponding LIT tests with a "REQUIRES" directive at the beginning of the OpenMP test files. --------- Co-authored-by: Valentin Clement (バレンタイン クレメン) <clementval@gmail.com>
23 lines
624 B
Fortran
23 lines
624 B
Fortran
! REQUIRES: openmp_runtime
|
|
|
|
! RUN: %python %S/../test_errors.py %s %flang_fc1 -fopenmp
|
|
! OpenMP Version 5.2
|
|
! 6.7 allocators construct
|
|
! A variable that is part of another variable (as an array or
|
|
! structure element) cannot appear in an allocatprs construct.
|
|
|
|
subroutine allocate()
|
|
use omp_lib
|
|
|
|
type my_type
|
|
integer, allocatable :: array(:)
|
|
end type my_type
|
|
|
|
type(my_type) :: my_var
|
|
|
|
!ERROR: A variable that is part of another variable (as an array or structure element) cannot appear on the ALLOCATORS directive
|
|
!$omp allocators allocate(my_var%array)
|
|
allocate(my_var%array(10))
|
|
|
|
end subroutine allocate
|