Hi Paul,
I want to sound out if this is acceptable as the way to fix these problems before going to the trouble of doing the final clean up; especially of trans.c (gfc_build_array_ref) and trans-array.c(build_array_ref).
The method you use looks OK to me, and the time till completion of the Great Array Descrptor Reform (TM) tends to become longer, not shorter. So, OK to proceed from my side. And thank you very much for taking on this thorny (and, for gfortran, very fundamental problem). Regards Thomas