diff options
author | Tobias Burnus <tburnus@baylibre.com> | 2025-02-05 14:03:47 +0100 |
---|---|---|
committer | Tobias Burnus <tburnus@baylibre.com> | 2025-02-05 14:34:06 +0100 |
commit | 6f95af4f22b641fbb3509f1436bce811d4e4acad (patch) | |
tree | 00b2debc23985320ec094ac50b4bd3ad82c11767 | |
parent | 6094801d6fd7849d2d95ce78f7c6ef01686b9f63 (diff) | |
download | gcc-6f95af4f22b641fbb3509f1436bce811d4e4acad.zip gcc-6f95af4f22b641fbb3509f1436bce811d4e4acad.tar.gz gcc-6f95af4f22b641fbb3509f1436bce811d4e4acad.tar.bz2 |
Fortran/OpenMP: Add location data to 'sorry' [PR118740]
PR fortran/118740
gcc/fortran/ChangeLog:
* openmp.cc (gfc_match_omp_context_selector, match_omp_metadirective):
Change sorry to sorry_at and use gfc_current_locus as location.
* trans-openmp.cc (gfc_trans_omp_clauses): Likewise, but use n->where.
gcc/testsuite/ChangeLog:
* gfortran.dg/gomp/append_args-2.f90: Update for line change.
-rw-r--r-- | gcc/fortran/openmp.cc | 6 | ||||
-rw-r--r-- | gcc/fortran/trans-openmp.cc | 8 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/gomp/append_args-2.f90 | 2 |
3 files changed, 10 insertions, 6 deletions
diff --git a/gcc/fortran/openmp.cc b/gcc/fortran/openmp.cc index b1684f8..e8df9d6 100644 --- a/gcc/fortran/openmp.cc +++ b/gcc/fortran/openmp.cc @@ -6536,7 +6536,8 @@ gfc_match_omp_context_selector (gfc_omp_set_selector *oss, /* FIXME: The "requires" selector was added in OpenMP 5.1. Currently only the now-deprecated syntax from OpenMP 5.0 is supported. */ - sorry ("%<requires%> selector is not supported yet"); + sorry_at (gfc_get_location (&gfc_current_locus), + "%<requires%> selector is not supported yet"); return MATCH_ERROR; } else @@ -6942,7 +6943,8 @@ match_omp_metadirective (bool begin_p) gfc_matching_omp_context_selector = false; if (is_omp_declarative_stmt (directive)) - sorry ("declarative directive variants are not supported"); + sorry_at (gfc_get_location (&gfc_current_locus), + "declarative directive variants are not supported"); if (gfc_error_flag_test ()) { diff --git a/gcc/fortran/trans-openmp.cc b/gcc/fortran/trans-openmp.cc index e29ef85..e9103cd 100644 --- a/gcc/fortran/trans-openmp.cc +++ b/gcc/fortran/trans-openmp.cc @@ -3345,7 +3345,8 @@ gfc_trans_omp_clauses (stmtblock_t *block, gfc_omp_clauses *clauses, if (openacc && n->sym->ts.type == BT_CLASS) { if (n->sym->attr.optional) - sorry ("optional class parameter"); + sorry_at (gfc_get_location (&n->where), + "optional class parameter"); tree ptr = gfc_class_data_get (decl); ptr = build_fold_indirect_ref (ptr); OMP_CLAUSE_DECL (node) = ptr; @@ -3761,7 +3762,8 @@ gfc_trans_omp_clauses (stmtblock_t *block, gfc_omp_clauses *clauses, gcc_assert (!ref->next); } else - sorry ("unhandled expression type"); + sorry_at (gfc_get_location (&n->where), + "unhandled expression type"); } tree inner = se.expr; @@ -4041,7 +4043,7 @@ gfc_trans_omp_clauses (stmtblock_t *block, gfc_omp_clauses *clauses, gcc_unreachable (); } else - sorry ("unhandled expression"); + sorry_at (gfc_get_location (&n->where), "unhandled expression"); finalize_map_clause: diff --git a/gcc/testsuite/gfortran.dg/gomp/append_args-2.f90 b/gcc/testsuite/gfortran.dg/gomp/append_args-2.f90 index a20f610..7a68977 100644 --- a/gcc/testsuite/gfortran.dg/gomp/append_args-2.f90 +++ b/gcc/testsuite/gfortran.dg/gomp/append_args-2.f90 @@ -40,7 +40,7 @@ contains subroutine f5 () !$omp declare variant (f1ox) match(user={condition(flag)}) & ! { dg-error "the 'append_args' clause can only be specified if the 'dispatch' selector of the construct selector set appears in the 'match' clause at .1." } !$omp& append_args ( interop ( target , targetsync) ) - ! { dg-error "'q' at .1. must be a nonpointer, nonallocatable scalar integer dummy argument of 'omp_interop_kind' kind as it utilized with the 'append_args' clause at .2." "" { target *-*-* } .-2 } + ! { dg-error "'q' at .1. must be a nonpointer, nonallocatable scalar integer dummy argument of 'omp_interop_kind' kind as it utilized with the 'append_args' clause at .2." "" { target *-*-* } .-1 } end subroutine subroutine f6 (x, y) |