https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108512
--- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> --- Correction: I think I linked the wrong file, it should be: https://github.com/SOLLVE/sollve_vv/blob/master/tests/5.0/loop/test_loop_lastprivate_device.F90 * * * Probably better location is the following, which gives the diagnost shown below + p->where = omp_current_ctx->code->loc; Namely, this gives for 'x' and 'y': 85 | !$omp target parallel num_threads(OMPVV_NUM_THREADS_DEVICE) map(tofrom: a, b, x, y) | 1 And for 'x': 48 | !$omp target parallel num_threads(OMPVV_NUM_THREADS_DEVICE) map(tofrom: a, b, x) | 1 Error: Symbol 'x' present on multiple clauses at (1) The latter code is: !$omp target parallel num_threads(OMPVV_NUM_THREADS_DEVICE) map(tofrom: a, b, x) !$omp loop lastprivate(x) DO x = 1, NSIZE a(x) = a(x) + b(x) END DO !$omp end loop !$omp end target parallel