Hello all,
I'm tracking down some mysterious platform-dependent problems and am wondering just how
interoperable 0-sized arrays are with C. For example,
void func (int *array, ...)
interface
subroutine func (array, ...) bind(c)
integer(c_int) :: array(*)
end subroutine
end interface
Will this work with 0-sized actual arguments? Of course I'm assuming
that the C pointer will never be de-referenced in this case. Basically,
I'm wondering if some sensibly-valued address gets passed.
And more specifically, does C_LOC return some sensible dummy value for a 0-sized array argument, again with the caveat that you shouldn't attempt to use it for anything.
Thanks,
Neil