You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
FCM can falsely report dependencies from FCM generated interface files because it assumes 'USE'd modules in the .F90 are needed in the interface. This can lead to non-existent cyclic dependencies being reported halting the build.
Consider, dr_hook_util.F90:
SUBROUTINE DR_HOOK_UTIL(PKEY)
USE PARKIND1 ,ONLY : JPRB
USE MPL_INIT_MOD, ONLY : MPL_INIT
REAL(KIND=JPRB),INTENT(INOUT) :: PKEY
END
The generated interface is then, dr_hook_util.intfb.h :
INTERFACE
SUBROUTINE DR_HOOK_UTIL(PKEY)
USE PARKIND1 ,ONLY : JPRB
REAL(KIND=JPRB),INTENT(INOUT) :: PKEY
END INTERFACE
The module MPL_INIT_MOD is not needed for the interface file. However, for this (larger than shown) code, FCM incorrectly reports a cyclic dependency stemming from dr_hook_util.intfb.h (intfb.h being automatically generated).
e.g:
The dependency is on the dr_hook_util.o file, but the 'mpl_init_mod.mod' should not be considered a dependency on the generated interface file in this case.
The text was updated successfully, but these errors were encountered:
FCM can falsely report dependencies from FCM generated interface files because it assumes 'USE'd modules in the .F90 are needed in the interface. This can lead to non-existent cyclic dependencies being reported halting the build.
Consider, dr_hook_util.F90:
The generated interface is then, dr_hook_util.intfb.h :
The module MPL_INIT_MOD is not needed for the interface file. However, for this (larger than shown) code, FCM incorrectly reports a cyclic dependency stemming from dr_hook_util.intfb.h (intfb.h being automatically generated).
e.g:
The dependency is on the dr_hook_util.o file, but the 'mpl_init_mod.mod' should not be considered a dependency on the generated interface file in this case.
The text was updated successfully, but these errors were encountered: