HP OpenVMS Systems

ask the wizard
Content starts here

VAX C to DEC C porting? (opcdef, builtins)

» close window

The Question is:

 
I am porting our software from VAX C (Last ran on VMS V5.5)
to DEC C (On VAX VMS V 6.2). I had compilation errors due to the fact
symbols were changed from upper case to lower case
(For example, opc$v_nm_centrl).
I have 2 problems:
1) even after changing the  case, I still get errors on other symbols.
In this case, on opc$r_ms_maxsz_overlay.
2) The original program had "#pragma builtins"
statement to include "our" needed symbol _BBSSI.
I had to change it to "#include <builtins.h>.
 
Can you please elaborate about why these changes are needed?
 
Thanks.
 
Shraga Broyer
 


The Answer is :

 
  The Wizard does not believe that the change of casing was intentional.
 
  As part of the work to move from the hand-built and hand-maintained (and
  often unfortunately outdated) include files used for VAX C -- if you will
  remember, VAX C required a new release of the compiler to track new system
  symbols -- over to a set of include files that are used by DEC C that are
  automatically derived from the current system definition files when the
  compiler kit is installed.
 
  These particular symbols -- like may other include files specific to
  OpenVMS (as differentiated from those that are specific to the C language
  itself) are now generated using SDL, based on information provided with
  the OpenVMS distribution.
 
  As for your question on #pragma builtin, that was a VAX C extension to
  the C language.   Use CC[/DECC]/STANDARD=VAXC to compile a program with
  this particular syntax.
 
  The Wizard will pass these reports along to the DEC C team.  (If you
  wish to make a formal report and receive status updates, please contact
  the customer support center.)
 
 

answer written or last revised on ( 15-SEP-1998 )

» close window