I’m not someone who has used this in a program, but inherited some code that has worked previously under the Lahey compiler. It has generic functions defined within a module using the INTERFACE command, and then splits them out to specific functions, depending on the number of arguments that are passed to the generic function. These specific functions are then defined at the end of the same source code file, but after the END MODULE command. Also, the specific functions each contain a USE GLERLUTIL command (GLERLUTIL being the name of the module that contains the generic function, as well as other functions that are called by the specific functions.
The compiler squawks about assigning values to variable names that correspond to the names of the specific functions, even though they are headed as “INTEGER FUNCTION”.
Things I’ve tried:
Comment out ‘USE GLERLUTIL’ in the specific functions.
Put the specific functions inside the module GLERLUTIL. This leads to the linker not recognizing the calls to these functions.
Move all of the specific functions to a separate source code file and module.