https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92728
--- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> --- See also PR 92730 for a related issue (OpenMP's map() does not handle /common/) Remark, as I only just remembered: "Named common blocks of the same name shall be of the same size in all scoping units of a program in which they appear, but blank common blocks may be of different sizes." (Fortran 2018, 8.10.2.5) If the common block is only on the host – and uses map(/block/), mapping single variables is fine. If it is only on the device, it is also fine – it only becomes interesting if the same-named common block is on both device and host. In this case, they have to be named (= same size) and a copy(/map/) should really copy the whole block and not only the (directly) used common-block variables. For OpenACC, device_resident seems to be about this feature, OpenMP seems to be silent on this topic.