On Jun 21 2019, NightStrike wrote:
https://gcc.gnu.org/onlinedocs/gfortran/Working-with-Pointers.html "If a pointer is a dummy-argument of an interoperable procedure, it usually has to be declared using the VALUE attribute. void* matches TYPE(C_PTR), VALUE, while TYPE(C_PTR) alone matches void**." What does "usually" mean in this context? Under what conditions do we have to do this?
Just as it says. Use VALUE to match 'void *' and not to match 'void **'; the former is more common in C interfaces. Regards, Nick Maclaren.