 






          Software
          Product
          Description

          ___________________________________________________________________

          PRODUCT NAME:  HP C++ for OpenVMS
                                                                 SPD 70.57.08

          DESCRIPTION

          This document addresses HP C++ Version 7.1 for OpenVMS Alpha and Open-
          VMS I64.

          HP C++ for OpenVMS is a native programming language product, which gen-
          erates highly optimized object code. HP C++ for OpenVMS is based on
          the ANSI/ISO C++ International Standard, reference designation num-
          ber ISO/IEC 14882:1998. In addition to this standard, C++ supports the
          ARM, GNU, and MS dialects.

          HP C++ for OpenVMS includes access to the following language libraries.
          Some of these components ship with the compiler kit, while others are
          shipped with the base OpenVMS operating system:

          o  The C++ Standard Library, which is an implementation of the ANSI/ISO
             C++ Standard Library. Portions of this library are implemented us-
             ing source code licensed from and copyrighted by Rogue Wave Soft-
             ware, Inc.

          o  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 soft-
             ware developers using HP C++ for OpenVMS in conjunction with pre-
             existing software that depends upon pre-ANSI library features.

          o  The OpenVMS C Run-Time Library header files, reference manual, and
             library. These components allow programmers to access the rich func-
             tionality of the C Run-Time Library.

                                                                November 2005

 



          HP C++ for OpenVMS


          o  Features to facilitate porting between HP 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:

             -  the MS dialect for maximizing compatibility with Microsoft's Vi-
                sual C++ product.

             -  the GNU dialect for compatibility with the Open Source compil-
                ers.

             -  the ARM dialect for compatibility with The Annotated C++ Ref-
                erence Manual by Ellis and Stroustrup. Using this dialect min-
                imizes the source changes necessary for applications that com-
                pile with C++ Version 5.6.

             -  the ANSI dialect for developers who want to write applications
                that comply with the C++ International Standard.

          o  CXXDEMANGLE, a tool to decode compiler-generated names, that en-
             ables other tools (besides the compiler and debugger) to present
             these decoded names to the user.

          o  CXXLINK, a facility that lets you link your C++ application. Global
             names which are displayed by the linker utility are automatically
             demangled for readability.

          HP C++ for OpenVMS documentation provides comprehensive reference and
          usage information for all product components. Online help is provided
          with the software, and HTML documents are provided on the Layered Prod-
          ucts CD-ROM Library for the following manuals:

          o  HP C++ User's Guide for OpenVMS Systems

          o  HP C++ Installation Guides for OpenVMS Alpha and I64

          o  HP C++ Class Library Reference Manual

          HTML files are provided for the release notes and some of the prod-
          uct manuals, for use with a web browser.

          Hardcopy documentation is available by ordering the separate software
          documentation kit.

                                           2

 



          HP C++ for OpenVMS


          Features

          o  Extensive error checking diagnostics

          o  Automatic template instantiation compatible with older compilers
             for the OpenVMS Alpha platform. New ELF comdat based template in-
             stantiation model for the OpenVMS I64 platform.

          o  Enhanced debugger support

          o  Language mode and diagnostic message options increase compatibil-
             ity with earlier versions of the compiler as well as with other im-
             plementations of C++.

          o  Fast compilation and increased code optimization by directly trans-
             lating C++ source programs to object files

          o  Extensive global and local optimizations of generated code for in-
             creased performance

          o  Option for running only the preprocessor phase of compilation

          o  Pragmas to control compiler options

          o  Pragmas to control extern models, sharing of data between concur-
             rent processes, and structure member alignment

          o  Compiler-generated listing file, including optional:

             -  Machine code

             -  Macro expansion

             -  Compilation statistics

          o  Data types for numeric, nonnumeric, and systems programming, as fol-
             lows:

             -  8, 16, 32, and 64-bit [un]signed integers

             -  32, 64, and 128-bit IEEE floating point

             -  32 and 64-bit VAX floating-point

                                           3

 



          HP C++ for OpenVMS


          o  Integration into the Program Development Environment:

             -  Generation of debug and traceback records for symbolic debug-
                ger support

             -  Conformance to the OpenVMS calling standard

             -  Access to OpenVMS run-time libraries for general purpose rou-
                tines 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 source code analysis information that
                can be used by the HP Source Code Analyser (Alpha Only)

             -  Support for generation of diagnostic information that can be used
                by the HP Language-Sensitive Editor

          Run-Time Library for C Applications

          The complete C Run-Time Library that is needed for use with HP C++ for
          OpenVMS is distributed with the OpenVMS operating system. The C Run-
          Time Library provides routines to perform input/output, character and
          string handling, mathematical computations, memory allocation, and em-
          ulation of selected UNIX features. These routines are provided both
          in shared image and object module library form.

          C++ Standard Library

          The C++ Standard Library is an implementation of the ANSI/ISO C++ Stan-
          dard Library. This library is comprised of a suite of header files and
          the run-time code needed to implement the string library, numeric lim-
          its, auto pointer, exceptions, complex math, and the STL (Standard Tem-
          plate Library). Portions of this library are implemented using source
          code licensed from and copyrighted by Rogue Wave Software, Inc.

          C++ Run-Time Support Library (OpenVMS I64)

                                           4

 



          HP C++ for OpenVMS


          The C++ Run-Time Support Library is distributed with the OpenVMS I64
          operating system. This library provides support for language features
          such as RTTI, new and delete, exception support, and some parts of 128-
          bit IEEE floating point support. These routines are provided both in
          shared image and object module library form.

          C++ Class Library

          The C++ Class Library Run-Time components are distributed with the Open-
          VMS operating systems. The Class Library provides the following pack-
          ages: iostream, generic, mutex, objection, stopwatch, string, message
          and vector. These routines are provided both in shared image and ob-
          ject module library form.

          Run-Time Library Redistribution

          The HP C++ for OpenVMS kit may include Run-Time Library components in
          either shareable image or object library form. HP grants the user a
          nonexclusive royalty-free worldwide right to reproduce and distribute
          these Run-Time Libraries ("the RTLs") provided that the user:

          o  distributes the RTLs only in conjunction with and as a part of the
             users's software application product, which is designed to oper-
             ate in the OpenVMS environment;

          o  does not use HP's name, logo, or trademarks to market the user's
             software application product;

          o  includes HP's copyright notice for HP C++ for OpenVMS on one of the
             following:

                a. the user's product disk label
                b. each copy of the application
                c. the title or copyright page of the documentation for the soft-
                ware application product

          o  agrees to indemnify, hold harmless, and defend HP from and against
             any claims or lawsuits, including attorney's fees, that arise or
             result from the use or distribution of the software application prod-
             uct. Except as expressly provided herein, HP grants no implied or

                                           5

 



          HP C++ for OpenVMS


             express license under any of its patents, copyrights, trade secrets,
             trademarks, or any license or other proprietary interests and rights.

          See the Deploying Your Application chapter in the users guide.

          ALPHA HARDWARE REQUIREMENTS

          Processors Supported:
          Any Alpha system capable of running OpenVMS Alpha Version 7.3-2 or higher.

          Refer to the OpenVMS Software Product Description (SPD 82.35.xx) for
          details.

          Disk Space Requirements (Block Cluster Size = 1)

          Disk space required for      160,000 blocks (80 MB)
          compiler kit installa-
          tion:
          Disk space required for      150,000 blocks (75 MB)
          use (permanent):
          Disk space required for      80,000 blocks (40 MB)
          Debug kit installation:
          Disk space required for      16,000 blocks
          use (permanent):             ( 8 MB)

          These counts refer to the disk space required on the system disk. The
          sizes are approximate; actual sizes may vary depending on the user's
          system environment, configuration, and software options.

          I64 HARDWARE REQUIREMENTS

          OpenVMS I64 supports the following Integrity Servers:

          -  HP Integrity server rx2600 (2 sockets) - all speeds

          -  HP Integrity server rx1600 (2 sockets) - all speeds

          -  HP Integrity server rx4640 (4 sockets) - all speeds

          Note: A socket is a receptacle for microprocessor modules. A single
          microprocessor module may contain one or more CPUs.

                                           6

 



          HP C++ for OpenVMS


          Refer to the OpenVMS Software Product Description (SPD 82.35.xx) for
          details.

          Disk Space Requirements (Block Cluster Size = 1)

          Disk space required for      ? blocks (? MB)
          compiler kit installa-
          tion:
          Disk space required for      ? blocks (? MB)
          use (permanent):
          Disk space required for      ? blocks (? MB)
          Debug kit installation:
          Disk space required for      ? blocks
          use (permanent):             ( ? MB)

          These counts refer to the disk space required on the system disk. The
          sizes are approximate; actual sizes may vary depending on the user's
          system environment, configuration, and software options.

          SOFTWARE REQUIREMENTS

          The following are software requirements:

          o  HP C++ for OpenVMS Alpha requires OpenVMS Alpha Version 7.3-2 or
             higher.

          o  HP C++ for OpenVMS I64 requires OpenVMS I64 Version 8.2.

          Note: A version update represents a complete distribution media replace-
          ment for the previous release of HP C++ for OpenVMS. To provide for
          proper operation with the new release of HP C++ for OpenVMS, product
          changes and functional enhancements in a version update may require
          the recompilation and relinking of all modules in an application built
          with a prior version.







                                           7

 



          HP C++ for OpenVMS


          SOFTWARE LICENSING

          A software license is required in order to use the HP C++ software prod-
          uct. For VAX and Alpha platforms, HP C++ is offered with Concurrent
          Use, Personal Use and Traditional 'capacity' licenses. For I64, it is
          offered with Concurrent Use licenses. Version update licenses are not
          available for the I64 platform. Rights to use future revisions of HP
          C++ are available only through a Support Agreement or through a new
          license purchase. For more information about OpenVMS license terms and
          policies, contact your local HP sales office, or refer to the Soft-
          ware Licensing site at: <http://licensing.hp.com/swl/view.slm?page=index>


          LICENSE MANAGEMENT FACILITY SUPPORT

          This layered product supports the OpenVMS License Management Facil-
          ity.

          License units for Alpha and VAX HP C++ are allocated on a Capacity Use,
          Personal Use, or Concurrent Use basis. License units for I64 HP C++
          are allocated on a Concurrent Use basis.

          Each Personal Use license allows one identified individual to use the
          layered product. Each Concurrent Use license allows any one individ-
          ual at a time to use the layered product.

          For more information on the License Management Facility, refer to the
          OpenVMS Operating System Software Product Description or the License
          Management Facility manual of the OpenVMS Alpha documentation set. For
          more information about HP's licensing terms and policies, contact your
          local HP office.










                                           8

 



          HP C++ for OpenVMS


          CLUSTER ENVIRONMENT

          This layered product is fully supported when installed on any valid
          and licensed OpenVMS Cluster* configuration. The HARDWARE REQUIREMENTS
          section of this product's Software Product Description detail any spe-
          cial hardware required by this product.

          * OpenVMS Cluster configurations are fully described in the OpenVMS
          Cluster Software Product Description (29.78.xx) and include CI, Eth-
          ernet, and Mixed Interconnect configurations.

          OpenVMS TAILORING CLASSES

          The following OpenVMS classes are required for full functionality of
          this layered product:

          o  OpenVMS Required Saveset

          o  Programming Support

          o  Utilities

          For more information on OpenVMS classes and tailoring, refer to the
          OpenVMS Operating System Software Product Description (SPD 82.35.xx).

          OPTIONAL SOFTWARE

          o  HP DECset Release 12.5 for OpenVMS Systems, which includes:

             -  Language-Sensitive Editor/Source Code Analyzer (LSE/SCA) for Open-
                VMS Systems

             -  Test Manager (DTM) for OpenVMS Systems

             -  Performance and Coverage Analyzer (PCA) for OpenVMS Systems

             -  Code Management System (CMS) for OpenVMS Systems

             -  Module Management System (MMS) for OpenVMS Systems


                                           9

 



          HP C++ for OpenVMS


          The HP DECset product is available for both OpenVMS Alpha and Open-
          VMS I64, with similar capabilities. For more information on HP DEC-
          set Release 12.5 for OpenVMS Alpha Systems, and HP DECset Release 12.6
          for OpenVMS I64 Systems, refer to the Software Product Description (SPD
          42.29.xx).


          GROWTH CONSIDERATIONS

          The minimum hardware and software requirements for any future version
          of this product may be different from the requirements for the cur-
          rent version.

          DISTRIBUTION MEDIA

          HP C++ for OpenVMS Alpha product is available on the OpenVMS Alpha Soft-
          ware Layered Products Library Package (QA-03XAA-H8). The library pack-
          age includes media and documentation on CD-ROM.

          The software documentation for C++ on OpenVMS Alpha is available as
          part of the OpenVMS Alpha Online Documentation CD-ROM Library (QA-4KM8A-
          G8). A hardcopy documentation set can be ordered separately (QA-0HQAA-
          GZ).

          HP C++ OpenVMS I64 ONLY:

          HP C++ for OpenVMS I64 is available on the Layered Products media within
          the Operating Environment package. The Layered Products media includes
          the product binaries and on-line documentation. An optional hardcopy
          documentation kit is also offered.

          SOFTWARE WARRANTY

          This software is provided by HP with a 90 day conformance warranty in
          accordance with the HP warranty terms applicable to the license pur-
          chase.





                                           10

 



          HP C++ for OpenVMS


          ORDERING INFORMATION

          When purchasing HP C++ both a license and media must be ordered. The
          license deliverable provides the LMF PAK required to run the HP C++
          software. The VMS Operating System or Operating Environment (license
          and media) is a prerequisite to running HP C++.

          HP C++ for OpenVMS OpenVMS Alpha Software Licenses:

          Software Licenses:

          o  Personal Use: QL-MJ1AA-2B

          o  Concurrent Use: QL-MJ1AA-3*

          o  Traditional/Capacity Use: QL-0HQA*-AA

          Software Update Licenses:

          o  Personal Use: QL-MJ1AA-4B

          o  Concurrent Use: QL-MJ1AA-5*

          o  Traditional/Capacity Use: QL-0HQA*-RA

          Software Media/Documentation: QA-0HQAA-H8
          Software Documentation (hardcopy): QA-0HQAA-GZ

          HP C++ for OpenVMS I64 ONLY:

          Software Licenses:
             Concurrent Use: BA349AC
          Software Media:
             Foundation Operating Media, BA322AA or
             Enterprise Operating Media, BA323AA or
             Mission Critical Media, BA324AA
          Software Documentation (Hard Copy): BA349MN

          An example of a new order for HP C++:

          Concurrent Use License - BA349AC
          Binaries: Operating Environment Media - BA32*A
          Hardcopy Documentation Kit (Optional) BA349MN

                                           11

 



          HP C++ for OpenVMS


          For more information on the Operating Environments, please see the HP
          Operating Environments for OpenVMS I64 SPD: 82.34.**

          The "*" denotes variant fields.

          The ordering information is valid at the time of release. Please con-
          tact your local HP office for the most up-to-date information.

          SOFTWARE PRODUCT SERVICES

          A variety of service options are available from HP. For more infor-
          mation, contact your local HP office.

          TRADEMARK INFORMATION

           2005 Hewlett-Packard Development Company, L.P.

          Confidential computer software. Valid license from HP and/or its sub-
          sidiaries required for possession, use, or copying. Consistent with
          FAR 12.211 and 12.212, Commercial Computer Software, Computer Soft-
          ware Documentation, and Technical Data for Commercial use.

          The information contained herein is subject to change without notice.
          The only warranties for HP products and services are set forth in the
          express warranty statements accompanying such products and services.
          Nothing here in should be construed as constituting an additional war-
          ranty. HP shall not be liable for technical or editorial errors or omis-
          sions contained herein.













                                           12
