Now committed as r15-4291-g34b77d1b9ac53c – see attachment.
Except that I have excluded the diagnostic-location changes;
here, using ranges makes more sense. (I have patch, that works,
but I need to check that it won't cause corner-case issues.)
Fortran-part of the ChangeLog (see attachment for
GCC does not really handle mapping of polymorphic variables - and OpenMP
6 will also make it implementation defined. (While explicitly permitting
it with data-sharing clauses.)
This matches essentially what is in GCC, except that 'private' (and
other privatizations) are not properly handled.