VSI C++ for OpenVMS is a native programming language product, which generates highly optimized object code. VSI C++ for OpenVMS is based on the ANSI/ISO C++ International Standard, reference designation number ISO/IEC 14882:1998. In addition to this standard, VSI C++ supports the ARM, GNU, and MS dialects.
VSI C++ for OpenVMS includes access to the following language libraries. Some of these components shipwith the compiler kit, while others are shipped with the base OpenVMS operating system:
- The C++ Standard Library, which is an implementation of the ANSI/ISO C++ Standard Library. Portions of this library are implemented using source code licensed from and copyrighted by Rogue Wave Software, Inc.
- The C++ Class Library, which is a set of headers and other files implementing a collection of basic C++ classes including the pre-ANSI IOSTREAMS classes. This library is provided to support software developers using VSI C++ for OpenVMS in conjunction with preexisting software that depends uponpre- ANSI library features.
- The OpenVMS C Run-Time Library header files, reference manual, and library. These components allow programmers to access the rich functionality of the C Run-Time Library.
- Features to facilitate porting between VSI C++ for OpenVMS and other implementations of the C++ language. The compiler allows you to choose from several C++ language dialects that have evolved over the past several years: MS, GNU, ARM, or ANSI.
- CXXDEMANGLE, a tool to decode compiler-generated names, that enables other tools (besides the compiler and debugger) to present these decoded names to the user
- CXXLINK, a facility that lets you link your C++ application. Global names which are displayed by the linker utility are automatically demangled for readability.
FeaturesVSI C++ for OpenVMS provides the following features:
- Extensive error checking diagnostics
- Automatic template instantiation compatible with older compilers for the OpenVMS Alpha platform. New ELF comdat-based template instantiationmodel for the OpenVMS Integrity servers platform.
- Enhanced debugger support
- Language mode and diagnostic message options increase compatibility with earlier versions of the compiler as well as with other implementations of C++.
- Fast compilation and increased code optimization by directly translating C++ source programs to object files
- Extensive global and local optimizations of generated code for increased performance
- Option for running only the preprocessor phase of compilation
- Pragmas to control compiler options
- Pragmas to control extern models, sharing of data between concurrent processes, and structure member alignment
- Compiler-generated listing file, including optional: machine code, micro expansion, compilation statistics
- Data types for numeric, nonnumeric, and systems programming
- Integration into the Program Development Environment:
- Generation of debug and traceback records for symbolic debugger support
- Conformance to the OpenVMS calling standard
- Access to OpenVMS run-time libraries for general purpose routines and support of multi-language environments
- Access to the data management facilities of OpenVMS RMS (Record Management Services)
- Ability to package C++ code as shareable libraries
- Ability to use additional class libraries
- Support for generation of diagnostic information that can be used by the VSI Language-Sensitive Editor
Integrity: per concurrent use.