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
A few things are bothering me in the Fortran interface as it is implemented at the moment:
codebase layout: Fortran compatible functions are defined in src/cpp/muscle2 (fortranmuscle.h/.cpp), src/fortran contains only example programs
binding: implementation of fortranmuscle.h/.cpp is outdated and lacks control over the compatible types, and requires to define C void functions with all parameters passed by address (non-standard C interface). Definition of wrapper functions using ISO_C_BINDING should be considered instead, for instance using the standard C interface (cmuscle.h) as target to our Fortran wrappers (in order to avoid code duplication and cherry-picking of API functions to be provided in a given interface)
The text was updated successfully, but these errors were encountered:
A few things are bothering me in the Fortran interface as it is implemented at the moment:
codebase layout: Fortran compatible functions are defined in src/cpp/muscle2 (fortranmuscle.h/.cpp), src/fortran contains only example programs
binding: implementation of fortranmuscle.h/.cpp is outdated and lacks control over the compatible types, and requires to define C void functions with all parameters passed by address (non-standard C interface). Definition of wrapper functions using ISO_C_BINDING should be considered instead, for instance using the standard C interface (cmuscle.h) as target to our Fortran wrappers (in order to avoid code duplication and cherry-picking of API functions to be provided in a given interface)
The text was updated successfully, but these errors were encountered: