Compilation and modules of interfaces self-generated

Two options of compilation for gfortran are automatically activated (Rules.LXgfortran.mk) :

  • -fbacktrace to traceback compilation errors
  • -fopenmp to verify the directives openmp in the code

From Surfex v7, the modules of interfaces were suppressed in files that contain only one subroutine.

Nevertheless, they are automatically generated during the compilation.

So that the USE MODI_... are still topical.

They are not always necessary (as it was the case before), but they allow to verify the consistency between the arguments passed at the call of a subroutine and the declared arguments into the subroutine.

So it’s recommended to include them for all called subroutines.

In case of compilation problems, the suppression of interfaces allows that the indicated line is this of the original file present in SURFEX directory.

A script to include missing USE MODI_... exists here.