![]() |
![]() HP OpenVMS Systemsask the wizard |
![]() |
The Question is: Hello We are looking to use lib$find_symbol_image()to perform a run-time link to a shared image, as well as use lib$establish() to catch run-time errors generated by potential erroneous calls to lib$find_symbol_image(). During our investigation we have found information stating that... "On Alpha systems, LIB$ESTABLISH is not supported, though high-level languages may support it for compatibility." See link: http://www.openvms.compaq.com:8000/73final/5841/5841pro_032.html#1633_convertpoi ntf_vaxalpha) We have also tried, using signal(), and have not been sucesseful. Are there any other options for catching a run-time exception generated by calling lib$find_symbol_image()? Thank you! John Pechous The Answer is : You will want to use VAXC$ESTABLISH (for C code) or LIB$ESTABLISH. The internals of signal handling have changed, and the details of the implementation have definitely changed. That said, most (all?) existing supported languages continue to have condition-handling constructs -- though unlike OpenVMS VAX, these constructs are implemented with the assistance of the particular languages and the particular language run-time libraries. (The cited text is unfortunately rather misleading in this regard.) Please see (1314), (2002), (2486), (6363). Also (5891), (7129). If you wish to mix C signals and OpenVMS signals, you MUST be familiar with the C programming documentation, and you must use the VAXC$ESTABLISH call. Please see the available C documentation. You will also want to become familiar with the OpenVMS Programming Concepts manual.
|