DIGITAL Software Product Description ___________________________________________________________________ PRODUCT NAME: DEC C++ Version 5.6 for OpenVMS VAX SPD 37.39.09 DEC C++ Version 5.6 for OpenVMS Alpha DESCRIPTION DEC C++ for OpenVMS VAX and OpenVMS Alpha Operating Systems is a native programming language product that supports the C++ programming language. DEC C++ includes: o A C++ compiler which implements C++ as defined by The Annotated C++ Reference Manual, Ellis & Stroustrup, reprinted with corrections in May 1991. The compiler implementation includes support for automatic instantiation of templates, as well as C++ exception handling. DEC C++ directly generates optimized object code without employing an intermediate translation to C. o A subset of the ANSI C++ Standard Library, including the string library, numeric_limits, auto_ptr, standard exception classes, complex math library, and the Standard Template Library (STL) updated to a subset of the September 1996 ANSI C++ draft. Portions of the ANSI C++ Standard Library have been implemented using source licensed from and copyrighted by Rogue Wave Software, Inc. o A DEC C++ Class Library containing the following packages: iostream, complex, generic, objection, stopwatch, string, task, messages, and vector. o ANSI/ISO C header files enhanced for use with the DEC C++ compiler. These headers are currently packaged with DEC C++ to make them available for use with DEC C++. Packaging of the headers is subject to change as they become available in subsequent releases of related products. o Features to facilitate porting to DEC C++ from other C++ implementations. The /STANDARD:CFRONT option relaxes error checking for better compatibility with C++ compilers based on the AT&T "cfront" translator. The /STANDARD:MS option provides better compatibility with Microsoft's Visual C++ (TM). o Automatic instantiation of templates o A name demangler that enables other tools (besides the compiler and debugger) to present demangled names to the user. June 1997 DEC C++ Version 5.6 for OpenVMS VAX SPD 37.39.09 DEC C++ Version 5.6 for OpenVMS Alpha DEC C++ documentation provides comprehensive reference and usage information for all product components. Online help is provided with the software, and Bookreader documents are provided on the Layered Products CD-ROM for the following manuals: Using DEC C++ on OpenVMS Systems, DEC C++ Installation Guide for OpenVMS Systems, and the DEC C++ Class Library Reference Manual. HTML files are provided for the release notes and some of the product manuals for use with a web browser. Hardcopy documentation is available by ordering the separate software documentation kit. The hardcopy documentation also includes a copy of an authoritative book on C++, the C++ Programming Language, 2nd edition, by Bjarne Stroustrup, and a copy of the STL Tutorial and Reference Guide, by David R. Musser and Atul Saini. Features o Fast compilation and increased code optimization by directly translating C++ source programs to OpenVMS VAX and Alpha object files o Extensive global and local optimizations of generated code for increased performance under OpenVMS o Option for running only the preprocessor phase of compilation o Pragmas to control compiler options - Pragmas to control extern models, sharing of data between concurrent processes, and structure member alignment o Separate and combined compilation capabilities o Compiler-generated listing file, including optional: - Machine code - Macro expansion - Compilation statistics o Data types for numeric, nonnumeric, and systems programming: - DEC C++ OpenVMS supports 8, 16, 32-bit signed and unsigned integers. DEC C++ OpenVMS Alpha also supports 64-bit signed and unsigned integers. - DEC C++ supports the following data types: 32 and 64-bit IEEE floating point on Alpha - DEC C++ on VAX and Alpha: 32-bit and 64-bit VAX floating-point data types. The VAX floating-point formats include D-float and G-float and are user selectable. 2 DEC C++ Version 5.6 for OpenVMS VAX SPD 37.39.09 DEC C++ Version 5.6 for OpenVMS Alpha o Integration into the Program Development Environment: - Generation of debug and traceback records for OpenVMS VAX and Alpha symbolic debugger support - Conforms to the OpenVMS VAX and Alpha calling standard - Access to the OpenVMS Run-time Library 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. The DEC C++ compiler supports logical name search lists in conjunction with the preprocessor directive #include. - Support for DEC Language-Sensitive Editor to provide error diagnostics to the Editor Run-Time Library for C applications With the exception of OpenVMS VAX Operating System prior to Version 6.1, the complete DEC C Run-Time Library that is needed for use with DEC C++ is distributed with both OpenVMS VAX and OpenVMS Alpha Oper- ating Systems. The DEC C Run-Time Library provides routines to per- form input/output, character and string handling, mathematical com- putations, memory allocation, and emulation of selected UNIX® features. These routines are provided both in shared image and object module library form. DEC C++ Class Library With the exception of versions prior to 6.1 of the OpenVMS VAX Oper- ating System, the DEC C++ Class-Library Run-Time components are dis- tributed with OpenVMS VAX and OpenVMS Alpha Operating Systems. The DEC C++ Class Library provides the following packages: iostream, complex, generic, objection, stopwatch, string, task, message and vector. Run-time Library Redistribution for Older OpenVMS VAX Operating Sys- tems For OpenVMS VAX Operating V5.5-2 - Version 6.0, the DEC C++ VAX kit includes a separately packaged saveset that contains additional or modified run-time library components needed to execute programs developed with the DEC C++ compiler and class libraries. Revisions to the run-time components are shipped with the OpenVMS Operating System rather than the DEC C++ compiler, and the components in this special DEC C++ saveset, or more recent replacements, are included with the OpenVMS Operating System for versions 6.1 or later. 3 DEC C++ Version 5.6 for OpenVMS VAX SPD 37.39.09 DEC C++ Version 5.6 for OpenVMS Alpha DIGITAL grants you a nonexclusive, royalty-free, worldwide right to reproduce and distribute this save-set portion of the DEC C++ kit designated as AACRT060.A (the "RTL") provided that you: o distribute the entire RTL save set and copies of its accompanying installation documentation; o distribute the RTL only in conjunction with and as part of your software application product which is designed to operate in the OpenVMS VAX environment; o do not use DIGITAL's name, logo, or trademarks to market your software application product; o include DIGITAL's copyright notice for DEC C++ on your product disk label and/or on the title page of the documentation for your soft- ware application product; and o agree to indemnify, hold harmless, and defend DIGITAL from and against any claims or lawsuits, including attorney's fees, that arise or result from the use or distribution or your software application product. Except as expressly provided herein, DIGITAL grants no implied or expressed license under any of its patents, copyrights, trade secrets, trademarks, or any license or other proprietary interests and rights. 4 DEC C++ Version 5.6 for OpenVMS VAX SPD 37.39.09 DEC C++ Version 5.6 for OpenVMS Alpha HARDWARE REQUIREMENTS Processors Supported: Any Alpha system that is capable of running OpenVMS Alpha Version 6.1 or higher or any VAX system that is capable of running OpenVMS VAX Version 5.5-2 or higher. Disk Space Requirements (Block Cluster Size = 1) DEC C++ DEC C++ OpenVMS VAX OpenVMS Alpha ----------- ------------- Disk space 15,000 N/A required for blocks Run-Time Kit (7.5 MB) installation: Disk space 5,000 N/A required for blocks use (2.5 MB) (permanent): Disk space 22,000 65,000 required for blocks blocks Debug kit (11 MB) (32.5 MB) installation: Disk space 1,000 13,000 required for blocks blocks use (0.5 MB) (6.5 MB) (permanent): Disk space 29,000 40,000 required for blocks blocks compiler kit (14.5 MB) (20 MB) installation: Disk space 19,500 21,000 required for blocks blocks use (9.7 MB) (10.5 MB) (permanent): 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. The Debug kit saveset installation is not used on OpenVMS V6.0 systems, and the RunTime Kit saveset installation uses greatly reduced space on OpenVMS V6.0 systems. 5 DEC C++ Version 5.6 for OpenVMS VAX SPD 37.39.09 DEC C++ Version 5.6 for OpenVMS Alpha CLUSTER ENVIRONMENT This layered product is fully supported when installed on any valid and licensed VAXcluster* configuration. The HARDWARE REQUIREMENTS section of this product's Software Product Description detail any special hardware required by this product. * VAXcluster configurations are fully described in the VAXcluster Software Product Description (29.78.xx) and include CI, Ethernet, and Mixed Interconnect configurations. SOFTWARE REQUIREMENTS o DEC C++ for OpenVMS VAX requires OpenVMS VAX Version 5.5-2 - Version 7.0. o DEC C++ for OpenVMS Alpha requires OpenVMS Alpha Version 6.1 - Version 7.0. In addition, the graphic user interface (GUI) for the debugger that is shipped with the DEC C++ kit requires Motif Version 1.2-4 or later. Note: A version update represents a complete distribution media replacement for the previous release of DEC C++. 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 of DEC C++ to provide for proper operation with the new release of DEC C++. OpenVMS Tailoring: 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 25.01.xx). 6 DEC C++ Version 5.6 for OpenVMS VAX SPD 37.39.09 DEC C++ Version 5.6 for OpenVMS Alpha GROWTH CONSIDERATIONS The minimum hardware/software requirements for any future version of this product may be different from the requirements for the current version. DISTRIBUTION MEDIA DEC C++ OpenVMS VAX ONLY: 9-track 1600 BPI Magtape, TK50 Streaming Tape: This product is also available as part of the OpenVMS Consolidated software Distribution on CD-ROM (QA-VWJ8A-A8). DEC C++ OpenVMS Alpha ONLY: This product is available on the DIGITAL CD-ROM Software Library for OpenVMS Alpha (QA-03XAA-H8) or a CD-ROM containing only the DEC C++ for OpenVMS Alpha (QA-0HQAA-H8). Documentation in hardcopy format can be ordered separately. ORDERING INFORMATION DEC C++ OpenVMS VAX ONLY Software Licenses: Personal Use: QL-MJ1A*-2B Concurrent Use: QL-MJ1A*-3B Unlimited System Use: QL-MJ1A*-** Software Media: QA-MJ1A*-** Software Documentation: QA-MJ1A*-GZ Software Product Services: QT-MJ1A*-** DEC C++ OpenVMS Alpha ONLY Software License: Personal Use: QL-MJ1A*-2B Concurrent Use: QL-MJ1A*-3B Unlimited Use: QL-OHQA*-** Software Media/Documentation (CD-ROM): QA-OHQAA-H8 Software Documentation (hard copy): QA-OHQA*-GZ Software Product Services: QT-OHQA*-** * Denotes variant fields. For additional information on available licenses, services, and media, refer to the appropriate price book. DEC C++ Version 5.6 for OpenVMS VAX SPD 37.39.09 DEC C++ Version 5.6 for OpenVMS Alpha SOFTWARE LICENSING This software is furnished only under a license. For more information about DIGITAL's licensing terms and policies, contact your local DIGITAL office. License Management Facility Support This layered product supports the OpenVMS License Management Facil- ity. License units for this product are allocated on an Unlimited System Use, plus Personal and 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 (SPD 25.01.xx) or the License Management Facility manual of the OpenVMS VAX Operat- ing System documentation set. SOFTWARE PRODUCT SERVICES A variety of service options are available from DIGITAL. For more information, contact your local DIGITAL office. SOFTWARE WARRANTY Warranty for this software product is provided by DIGITAL with the purchase of a license for the product as defined in the Software Warranty Addendum of this SPD. © 1997 Digital Equipment Corporation, All rights reserved [TM] The DIGITAL Logo, Bookreader, DEC, DECwindows, DIGITAL, Open- VMS, VAX, VAX RMS, and VMS are trademarks of Digital Equip- ment Corporation. ®UNIX is a registered trademark in the United States and other countries licensed exclusively through X/Open Company Ltd. 8