#1740: GRHydro ReconstructPolytype.F90 passes wrong arguments to SimplePPM(M)_1d ------------------------------------+--------------------------------------- Reporter: rhaas | Owner: knarf Type: defect | Status: new Priority: major | Milestone: Component: EinsteinToolkit thorn | Version: development version Resolution: | Keywords: GRHydro ------------------------------------+---------------------------------------
Comment (by rhaas):
These routines should eventually be removed in favor for the C++ code, yes. Using interfaces would have been nice, however I find them to be less useful then in C since there is no way to enforce that the interface declaration eg in a file GRHydro_Interfaces.h90 matches the actual definition in say GRHydro_Prim2Con.F90 since one cannot include the interface block in the subroutine whose interface is described. Ie. {{{ subroutine foo(bar) implicit none real bar interface subroutine foo(bar) implicit none real bar end subroutine end interface
write (*,*) "Got you" end subroutine }}} is actually not allowed in Fortran (and the compilers abort). A module would enforce consistency but then one cannot have multiple subroutines from different files in the same module it seems.
Thank you. Applied as git hash d5b504bfffacc546d11664d4c9677f67bc835ace and b5c883fe647d380d6555f9614310920888027f4e of GRHydro.