! { dg-do link { target offload_target_any } } ! { dg-additional-sources requires-1-aux.f90 } ! Check diagnostic by device-compiler's lto1. ! Other file uses: 'requires unified_address'. module m integer :: a(10) interface subroutine foo end end interface end program main !$omp requires unified_shared_memory !$omp target a = 0 !$omp end target call foo () end ! { dg-error "OpenMP 'requires' directive with non-identical clauses in multiple compilation units: 'unified_shared_memory' vs. 'unified_address'" "" { target *-*-* } 0 } ! { dg-note {requires-1\.f90' has 'unified_shared_memory'} {} { target *-*-* } 0 } ! TODO We're currently not streaming location information for the OpenMP ! directives used in 'requires-7-aux.c', so we're not seeing the source file ! name here (but a temporary '*.o' instead; for details, see ! ): ! { dg-note {requires-1-aux\.f90' has 'unified_address'} {} { xfail *-*-* } 0 } ! ..., but we may still verify that the rest of the diagnostic is correct: ! { dg-note {' has 'unified_address'} {} { target *-*-* } 0 } ! { dg-excess-errors "Ignore messages like: errors during merging of translation units|mkoffload returned 1 exit status" }