[an error occurred while processing this directive]

HP OpenVMS Systems

ask the wizard
Content starts here

Signals, VAXC$ESTABLISH, LIB$ESTABLISH?

» close window

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.
 

answer written or last revised on ( 23-APR-2002 )

» close window