Closed Kun-Qu closed 1 year ago
Thanks for the issue report, I believe the current implementation is correct here - as this is using Fortran's c-bind, it is typical to prototype the called c function as a pointer and then the Fortran subroutine not. You will see the same pattern throughout the entire wrapper, with variables that are actually pointers in the c code defined as double pointers and then set as type c_ptr in the Fortran subroutine.
I'm going to close this one as I believe the current implementation is correct.
In the cpp code, arguments 'upper' and 'reset_log' are the pointers. thus its fortran interface should be consistance. since fortran transfers the pointers of arguments by default so, the default mode should be used. that's why I think 'value' should not be present
if a argument in C function is transfered by value
then we need value
in the frotran interface.
In its fortran interface
For arguments
upper
andreset_log
, is the propertyvalue
is right? since they are pointers in cpp?