Opened 15 years ago

Closed 15 years ago

#255 closed bug (Fixed)

Empty wrt_impulse.F causes error message

Reported by: m.hadfield Owned by: arango
Priority: minor Milestone: Release ROMS/TOMS 3.2
Component: Nonlinear Version: 3.2
Keywords: Cc:

Description

File ROMS/Utility/wrt_impulse.F is of the form

#include "cppdefs.h"
#if defined ADJOINT && defined IMPULSE
      SUBROUTINE wrt_impulse (ng, tile, model, INPncname)
...
      RETURN
      END SUBROUTINE wrt_impulse
#endif

Therefore it is empty if ADJOINT and IMPULSE are not both defined. This causes an error on some systems. One solution is to insert an empty subroutine in this case.

#include "cppdefs.h"
#if defined ADJOINT && defined IMPULSE
      SUBROUTINE wrt_impulse (ng, tile, model, INPncname)
...
      RETURN
      END SUBROUTINE wrt_impulse
#else
      SUBROUTINE wrt_impulse
      END SUBROUTINE wrt_impulse
#endif

Change History (1)

comment:1 by arango, 15 years ago

Resolution: Fixed
Status: newclosed

Yes, thank you. I missed that one.

I also corrected the declaration of NritzEV in mod_fourdvar.F. We need always to declare this variable since it is read from input script even if is not used. There is an orphan END IF in the initialization routines (initial.F, ad_initial.F, and tl_initial.F) for certain cpp flag combinations. This logic was cleaned. Many thanks to Gregoire Broquet for reporting these problems.

Note: See TracTickets for help on using tickets.