Dear all,
I write statistical analysis software, in the form of functions
(mostly), that people can call from a number of environments.
My functions are fortran subroutines (I opted for subroutines because
C and "R" happily accepts them as they do not
put anything in the "return" of the function). These functions are
built as a dynamically linked library (.so or .dll depending
upon the system).
I compile them using gcc-4.1.1 because later versions have problem
creating dlls (but this is not why I am writing) as do
previous ones.
If I call a function that is parts of a module, the return appear to
be a "null". However, when it is on its own, it seems to
return a number (which does not seem to have any meaning). R and C
happily ignore that return, so I have no problems
in either case. However IDL seems to require one so I presume that
other systems might have the same problem.
Do you know why a module subroutine contains no return value, while
an independent subroutine does?
Do you know of any way to work around this inconsistency?
Thanks a lot,
Lorenzo