DIGITAL Software Product Description ___________________________________________________________________ PRODUCT NAME: DIGITAL C++ Version 6.1 for OpenVMS Alpha SPD 70.57.01 DESCRIPTION DIGITAL C++ (formerly DEC C++) for the OpenVMS Alpha Operating Sys- tem is a native programming language product, which generates opti- mized object code without employing an intermediate translation to C. DIGITAL C++ for OpenVMS Alpha is based on the ANSI/ISO C++ Interna- tional Standard, reference designation number ISO/IEC 14882:1998. In addition to this standard, C++ supports the ARM, CFRONT, and MS di- alects. DIGITAL C++ includes: o The DIGITAL C++ Standard Library, which is an implementation of the ANSI/ISO C++ Standard Library. This library is comprised of a suite of header files and the run time code needed to implement the string library, numeric limits, auto pointer, exceptions, complex math, and the STL (Standard Template Library). Portions of this library are implemented using source code licensed from and copyrighted by Rogue Wave Software, Inc. o The DIGITAL C++ Class Library, which is a set of headers and other files implementing a collection of basic C++ classes that are iden- tical to those provided with previous versions of the compiler. This library is provided to support software developers using DIGITAL C++ Version 6.0 with software developed previously. o The OpenVMS DEC C Run-Time Library header files and reference man- ual, which together allow DIGITAL C++ programmers to access the rich functionality of the DEC C Run-Time Library. The OpenVMS DEC C Run- Time Library itself ships with the OpenVMS Alpha operating system. February 1999 DIGITAL C++ Version 6.1 for OpenVMS Alpha SPD 70.57.01 o Features to facilitate porting between DIGITAL C++ and other im- plementations of the C++ language. The compiler allows you to choose from several C++ language dialects that have evolved over the past several years: - the cfront dialect for compatibility with the AT&T cfront trans- lator - 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 DEC C++ V5.6. - the ms dialect for maximizing compatibility with Microsoft's Vi- sual C++ product. - the standard dialect for developers who want to write applica- tions 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 by com- pleting the automatic template instantiation process and ensuring that the necessary components are linked into your appplication. o An OpenVMS debugger enhanced to support the language constructs of DIGITAL C++. DIGITAL C++ 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 Products CD-ROM Library for the following manuals: o Using DIGITAL C++ for OpenVMS Alpha o DIGITAL C++ Installation Guide for OpenVMS Alpha o DIGITAL 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. 2 DIGITAL C++ Version 6.1 for OpenVMS Alpha SPD 70.57.01 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, 3rd edi- tion, by Bjarne Stroustrup. Features o Extensive error checking and generation of diagnostics o Automatic template instantiation including compatibility between version 5.x and 6.x compilers. o Enhanced debugger support o Language mode and diagnostic message options increase compatibil- ity with earlier versions. o Fast compilation and increased code optimization by directly trans- lating C++ source programs to OpenVMS Alpha object files o Extensive global and local optimizations of generated code for in- creased performance under OpenVMS 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 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, as fol- lows: - 8, 16, 32, and 64-bit [un]signed integers - 32, 64, and 128-bit IEEE floating point 3 DIGITAL C++ Version 6.1 for OpenVMS Alpha SPD 70.57.01 - 32 and 64-bit VAX floating-point o Integration into the Program Development Environment: - Generation of debug and traceback records for OpenVMS Alpha sym- bolic debugger support - Conformity to the OpenVMS Alpha 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 DIGITAL Source Code Analyser. - Support for generation of diagnostic information that can be used by the DIGITAL Language-Sensitive Editor. Run-Time Library for C Applications The complete DEC C Run-Time Library that is needed for use with DIG- ITAL C++ is distributed with the OpenVMS Alpha Operating System. The DEC C Run-Time Library provides routines to perform input/output, char- acter and string handling, mathematical computations, memory alloca- tion, and emulation of selected UNIX[R] features. These routines are provided both in shared image and object module library form. DIGITAL C++ Class Library The DIGITAL C++ Class Library Run-Time components are distributed with the OpenVMS Alpha Operating Systems. The DIGITAL C++ Class Library pro- vides the following packages: iostream, complex, generic, objection, stopwatch, string, task, message and vector. Run-Time Library Redistribution 4 DIGITAL C++ Version 6.1 for OpenVMS Alpha SPD 70.57.01 The DIGITAL C++ kit may include Run-Time library components in either shareable image or object library form. DIGITAL grants the user a nonex- clusive 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 Alpha environment; o does not use DIGITAL's name, logo, or trademarks to market the user's software application product; o includes DIGITAL's copyright notice for DIGITAL C++ on the user's product disk label and/or on the title page of the documentation for the software application product; and o agrees 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 of the software application prod- uct. Except as expressly provided herein, DIGITAL grants no implied or express license under any of its patents, copyrights, trade se- crets, trademarks, or any license or other proprietary interests and rights. For OpenVMS systems, the only RTL components that may be redistributed are LIBCXXSTD.OLB and DECC$CRTL.OLB. Refer to the DIGITAL C++ Version 6.0 Release Notes for instructions on redistributing these RTL com- ponents. HARDWARE REQUIREMENTS Processors Supported: Any Alpha system that is capable of running OpenVMS Alpha Version 6.2 to 7.2. Refer to the OpenVMS Software Product Description (SPD 25.01.xx) for details. 5 DIGITAL C++ Version 6.1 for OpenVMS Alpha SPD 70.57.01 Disk Space Requirements (Block Cluster Size = 1) Disk space required for 150,000 blocks (75MB) compiler kit installa- tion: Disk space required for 90,000 blocks (45MB) use (permanent): Disk space required for 65,000 blocks (32.5MB) Debug kit installation: Disk space required for 13,000 blocks (6.5 MB) use (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. SOFTWARE REQUIREMENTS The following are software requirements: o DIGITAL C++ for OpenVMS Alpha requires OpenVMS Alpha Version 6.2 to 7.2 o The graphic user interface (GUI) for the debugger shipped with the DIGITAL C++ kit requires Motif Version 1.2-4 or higher. Note: A version update represents a complete distribution media replace- ment for the previous release of DIGITAL C++. Product changes and func- tional enhancements in a version update may require the recompilation and relinking of all modules in an application built with a prior ver- sion of DIGITAL C++ to provide for proper operation with the new re- lease of DIGITAL C++. SOFTWARE LICENSING This software is furnished only under a license. For more information about DIGITAL's licensing terms and policies, contact your local Com- paq sales office or business partner. 6 DIGITAL C++ Version 6.1 for OpenVMS Alpha SPD 70.57.01 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 or the License Management Facility manual of the OpenVMS Operating System documen- tation set. 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 7 DIGITAL C++ Version 6.1 for OpenVMS Alpha SPD 70.57.01 For more information on OpenVMS classes and tailoring, refer to the OpenVMS Operating System Software Product Description (SPD 25.01.xx). OPTIONAL SOFTWARE o DECset Release 12.3 for OpenVMS Alpha, which includes: - DIGITAL Language-Sensitive Editor/Source Code Analyzer (LSE/SCA) for OpenVMS Alpha - DIGITAL Test Manager (DTM) for OpenVMS Alpha - DIGITAL Performance and Coverage Analyzer (PCA) for OpenVMS Al- pha - DIGITAL Code Management System (CMS) for OpenVMS Alpha - DIGITAL Module Management System (MMS) for OpenVMS Alpha For more information on DECset Release 12.3 for OpenVMS Alpha, refer to the Software Product Description (SPD 42.29.xx). 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 DIGITAL C++ for OpenVMS Alpha product is available on the OpenVMS Al- pha Software Layered Products Library Package (QA-03XAA-H8). The li- brary package includes media and documentation on CD-ROM. A media/documentation kit containing only the DIGITAL C++ for Alpha product is available sep- arately (QA-0HQAA-H8). Included in the kit are CD-ROM media and hard- copy documentation. 8 DIGITAL C++ Version 6.1 for OpenVMS Alpha SPD 70.57.01 YEAR 2000 READY This product is Year 2000 Ready. Year 2000 Ready is defined: "Year 2000 Ready" products are defined by DIGITAL as products capable of accurately processing, providing, and/or receiving date data from, into and between the twentieth and the twenty -first centuries, and the years 1999 and 2000, including leap year cal- culations, when used in accordance with the associated DIGITAL prod- uct documentation and provided that all hardware, firmware and soft- ware used in combination with such DIGITAL products properly exchange accurate date data with DIGITAL products. SOFTWARE WARRANTY This software is provided by DIGITAL with a 90 day conformance war- ranty in accordance with the DIGITAL warranty terms applicable to the license purchase. ORDERING INFORMATION DIGITAL C++ OpenVMS Alpha Software Licenses: Personal Use: QL-MJ1AA-2B Concurrent Use: QL-MJ1AA-3* Unlimited System Use: QL-0HQA*-AA Software Media/Documentation: QA-0HQAA-H8 Software Documentation (hardcopy): QA-0HQAA-GZ Software Product Services: QT-MJ1A*-**, QT-0HQA*-** * Denotes variant fields. For additional information on available li- censes, services, and media, refer to the appropriate price book. 9 DIGITAL C++ Version 6.1 for OpenVMS Alpha SPD 70.57.01 SOFTWARE PRODUCT SERVICES A variety of service options are available from Compaq. For more in- formation, contact your local Compaq sales office or business part- ner. The previous information is valid at time of release. Please contact your local Compaq office for the most up-to-date information. © 1998,1999 Digital Equipment Corporation, All rights reserved [TM] The DIGITAL Logo, Alpha, DEC, DECset, DECwindows, DIGITAL, OpenVMS, VAX, VAX RMS, and VMS are trademarks of Digital Equipment Corporation. [R] Microsoft is a registered trademark, and Visual C++ is a trademark of Microsoft Corporation. [R] UNIX is a registered trademark in the United States and other countries licensed exclusively through X/Open Company Ltd. All other trademarks and registered trademarks are the prop- erty of their respective holders. 10