SInce I started this thread that somehow has devolved into a pointless discussion on issues that have nothing to do with my original post I reserve the right to end it. Therefore, I request the moderators lock this thread from further posts for no other reason than I’m tired of my email inbox being flooded with messages that I delete without reading.
To @FortranFan. I apologize for not acknowledging your original answer. It was a mistake on my part because I did not bother to read a word of your response because of its length and even though I’m on your side with respect to who the standards committee actually serves these days I tire of what should have been a simple two or three sentance response morphing into another diatribe. For that reason I seldom read your posts anymore. I’m not some novice with respect to the C-interop (I’m the original author of the Fortran C-interop bindings for netCDF that makes of about half of the netCDF Fortran interface code) but have not kept up with the changes in Fortran 2018. I was aware of some change with respect to optional arguments in F2018 (or was it F2008) in C interfaces but was not sure of the specifics. A simple answer along the lines of say “Fortran 2018 allowed optional arguments in C interfaces. If you call the interface routine without the optional argument a NULL pointer is passed to the bound C procedure” would have been enough. Thats all the response I needed. I didn’t need an opus on the order of War and Peace.
So thats my last word on this subject. I consider the problem resolved and its time for all of us swallow our pride and move on.