Closed penguian closed 6 years ago
@jxs599@nci.org.au changed status from new
to closed
@jxs599@nci.org.au changed resolution from ` to
fixed`
@jxs599@nci.org.au edited the issue description
@jxs599@nci.org.au changed milestone from 6. Report
to 1. Closed
@ccc561@nci.org.au set keywords to nogit
keyword_nogit
owner:jxs599@nci.org.au
resolution_fixed
type_defect
| by srb001@csiro.auAll subroutines need to be placed in modules. The main reason is that post ACCESS1.3/1.4 we no longer link CABLE as a library but build with CABLE alongside the UM/JULES. The UM build system includes dependencies via a "!depends on" flag recognised by the FCM builder. This was absolutely necessary with Fortran77 code, and is still used today. especially for standalone subroutines. However, f90 compilers will recognise dependency on modules where they are USEd by a calling subroutine.
Bonus is that compiler checks more thoroughly that argument/dummy lists match when the subr is in a module.
Implemented way back, in so far as satisfies UM in branch: see -c16397db0a54ad18144e62fb3ebf53e4eec67557
Issue migrated from trac:151 at 2023-11-27 11:21:13 +1100