! RUN: split-file %s %t ! RUN: %flang_fc1 -fsyntax-only -x cuda -module-dir %t %t/m.cuf ! RUN: not %flang_fc1 -fsyntax-only -fopenacc -module-dir %t %t/use.f90 2>&1 | FileCheck %s ! RUN: %flang_fc1 -fsyntax-only -x cuda -module-dir %t %t/m2.cuf ! RUN: %flang_fc1 -fsyntax-only -fopenacc -module-dir %t %t/use2.f90 ! RUN: %flang_fc1 -fsyntax-only -x cuda -module-dir %t %t/m3.cuf ! RUN: not %flang_fc1 -fsyntax-only -fopenacc -module-dir %t %t/use3.f90 2>&1 | FileCheck --check-prefix=CHECK-M3 %s !--- m.cuf module modfile84m real, device :: d contains attributes(device) subroutine s() end subroutine end module !--- m2.cuf module modfile84m2 contains attributes(device) subroutine s() end subroutine end module !--- m3.cuf module modfile84m3 type dt real, device, pointer :: dp end type type(dt) :: d ! Should trigger the error end module !--- use.f90 use modfile84m end !--- use2.f90 use modfile84m2 end !--- use3.f90 use modfile84m3 end ! CHECK: error: Cannot use module file for module 'modfile84m': CUDA is not enabled, but '{{.*modfile84m.mod}}' defines CUDA symbols ! CHECK-M3: error: Cannot use module file for module 'modfile84m3': CUDA is not enabled, but '{{.*modfile84m3.mod}}' defines CUDA symbols