The Question is:
In my code , I am using the lib$find_image_symbol call to invoke
functions in a shared image. The modules in the shared image as well
as the code that invokes are compiled with switches "as_is" and
"shortened" and hence want to turn on the flag in
lib$find_image_symbol which will invoke symbols without converting
them to uppercase.
Here is my code segment to achieve this.
unsigned longword flags = LIB$M_FIS_MIXEDCASE;
status = LIB$FIND_IMAGE_SYMBOL(&log_dsc, &func_dsc, &retval, 0,
This is on alpha/openvms 7.3 and the entire code is compiled with
The above segment doesn't seem to work. When I step through the
debugger, the message I get at the point of invoking
%LIB-F-INVARG, invalid argument(s)
When I change the flags argument to "0", the RTL routine succeeds but
upcases the symbol by default which is not I want to happen
I will greatly appreciate your experience in using the
LIB$M_FIS_MIXEDCASE for this call.
Thanks and Regards,
The Answer is :
The documentation for LIB$FIND_IMAGE_SYMBOL incorrectly states that the
flags argument is passed by reference. Rather, the flags argument should
be passed by value.
This correction has been noted, and the necessary changes to the OpenVMS
documentation set will be incorporated as the various OpenVMS manuals
involved are next available for changes and updates.