Feedback
IBM United States
Software Announcement 203-129
May 13, 2003

IBM C/C++ for z/VM Speeds Time to Market with Object-Oriented Programming

 ENUS203-129.PDF (38KB)


At a Glance

IBM C/C++ for z/VM, V1.1:

  • Improves flexibility with both a C and C++ compiler in one offering
  • Offers a C++ compiler that supports the latest ANSI/ISO 1998 C++ standard
  • Includes a standards-conforming C compiler
  • Provides additional C compiler options and pragmas
  • Generates highly optimized code for both C and C++
  • Simplifies portability of applications to z/VM from both IBM and non-IBM platforms
  • Supports industry standards

For ordering, contact:

Your IBM representative, an IBM Business Partner, or the Americas Call Centers at 800-IBM-CALL (Reference: LE001).

Overview

C/C++ for z/VM™, V1.1 introduces C++ to the z/VM platform. Application programmers can now take advantage of the C++ object-oriented model of programming to create mission-critical applications on z/VM more quickly and with fewer errors.

C/C++ for z/VM includes a C compiler and a C++ compiler giving you the flexibility to write both C and C++ applications or to extend existing C applications using C++.

C/C++ for z/VM is the newest platform addition to the IBM family of C/C++ compilers which supports the C and C++ languages on z/OS™ and OS/390® (zSeries™), AIX® and Linux™ (pSeries™), and OS/400® (iSeries™). This software provides the following:

  • A standards-conforming C++ compiler that supports the latest 1998 ANSI/ISO C++ standard
  • A complete implementation of the 1998 ANSI/ISO C++ Standard Library including the Standard Template Library (STL)
  • An enhanced and standards-conforming C compiler which is one of the latest in the family of IBM C/C++ compilers

Because the C/C++ for z/VM compiler is part of the IBM family of C/C++ compilers, portability of applications to z/VM from other IBM platforms is greatly enhanced. And because C/C++ for z/VM builds on official international standards, portability of applications to and from other non-IBM platforms is also made easier.

C/C++ for z/VM, V1.1 brings a highly productive and powerful object-oriented development environment to z/VM programmers.

Key Prerequisites

z/VM V4.4, or later

Planned Availability Date

August 15, 2003

Description

C/C++ for z/VM, V1.1 makes both a C and C++ compiler available in one offering.

Few programming languages have the flexibility of the C language. C contains the same capabilities as other modern structured programming languages plus it provides bit manipulation capability, making it an excellent assembly language substitute. This general-purpose, high-function programming language is popular with application developers worldwide.

C++ combines the technical and practical advantages of the C language with the benefits of object-oriented programming. Benefits of C++ include:

  • Interfaces with, and extends, existing C applications
  • Speeds time to market with inheritance and reuse

C++ Compiler

C/C++ for z/VM makes the C++ program language available to z/VM application programmers.

1998 C++ Standard: The ISO/IEC 14882:1998 International Standard (also known as the Standard C++) specifies the form and establishes the interpretation of programs written in the C++ language. This International Standard is designed to promote the portability of C++ programs among a variety of implementations. ISO/IEC 14882:1998 is the first formal definition of the C++ language. The C++ compiler within IBM C/C++ for z/VM conforms to this latest 1998 ISO/IEC Standard.

With representation from IBM's compiler development team on the ISO/ANSI C++ committee, IBM is in a position to understand the latest updates and clarifications of the ISO 1998 C++ Standard.

C/C++ for z/VM includes all of the features defined by the ISO 1998 C++ Standard, including:

  • Namespaces and associated keywords namespace and using.
  • New type bool and associated keywords bool, true, and false.
  • New class member modifying keywords mutable and explicit.
  • New casts and associated keywords static_cast, dynamic_cast, reinterpret_cast, and const_cast.
  • New template model and associated keyword typename.
  • Run Time Type Identification (RTTI) and its associated keyword typeid. The C++ compiler does not support exported template definitions, nor does it allow overloading functions in ways that differ only in the linkage type of function pointer parameters.
  • The C++ Standard Library, including the Standard Template Library (STL) and other library features of ISO C++ 1998.

C++ Standard Library: The new C++ Standard Library includes the following:

  • The C++ Standard I/O Stream Library for performing input and output (I/O) operations
  • The C++ Standard Complex Mathematics Library for manipulating complex numbers
  • The STL which is composed of C++ template-based algorithms, container classes, iterators, localization object, and the string class

The IBM Open Class® Library is currently included with the z/OS V1R2 C/C++ compiler. While documented in association with the z/OS C/C++ compiler, the IBM Open Class Library is not included with the C/C++ for z/VM program. The IBM Open Class was implemented prior to the availability of the C++ Standard Library. With the introduction of the new ISO C++ 1998 standard, IBM will standardize on the C++ Standard Library and the STL. IBM has withdrawn or announced its intention to withdraw the IBM Open Class Library from the C++ implementation on other IBM Platforms. Customers who wish to gain the most portability for their new applications should use the C++ Standard Library.

From the z/OS V1R2 C/C++ compiler, the UNIX® System Laboratories I/O Stream and Complex Mathematics libraries are included with C/C++ for z/VM. You are able to choose between the C++ Standard I/O Stream and Complex Mathematics libraries, or the UNIX System Laboratories C++ Language System Release (USL) I/O Stream and Complex Mathematics libraries. However, for the most portability you should use the C++ Standard libraries.

C Compiler

The C compiler within C/C++ for z/VM V1.1 conforms to the ISO/IEC 9899:1990 (1992) C language standard. Conformance to the ISO/IEC standards gives the source code written for the C/C++ for z/VM compiler the advantage of a high level of portability to other C compiler implementations.

With representation from IBM's compiler development team on the ANSI C committee, IBM is in a position to understand the latest updates and clarifications of the C programming language standard.

The IBM family of C/C++ compilers includes C for VM/ESA®, V3.1. Therefore there is a high degree of source level compatibility between C for VM/ESA, V3.1 and C/C++ for z/VM, V1.1.

Additional C and C++ Features

The C and C++ compilers of C/C++ for z/VM, when used with Language Environment® Environment, offer many other features to enhance your programming:

  • Dynamic link libraries (DLLs) to share parts among applications or parts of applications, and dynamically link to exported variables and functions at run time. You can use DLLs to split applications into smaller modules and improve system memory usage. DLLs also offer more flexibility for building, packaging, and redistributing applications.
  • Full program reentrancy which will allow many users to simultaneously run a program.
  • The INLINE compiler option which gives you additional optimization capabilities.
  • Locale-based internationalization support derived from the IEEE POSIX 1003.2-1992 standard and the X/Open CAE Specification, System Interface Definitions, Issue 4 and Issue 4 Version 2. This allows programmers to use locales to specify language/country characteristics for their applications.
  • The ability to call and be called by other languages such as assembler, COBOL, and PL/I. z/VM programmers can integrate C/C++ code with existing applications.

Accessibility by People with Disabilities

C/C++ supports a command line interface and is fully accessible.

Product Positioning

IBM C/C++ for z/VM introduces the C++ programming language to the VM platform.

The C language introduced structured programming to the application development (AD) process. C++ introduces object-oriented programming to the AD process.

If you have a requirement for porting applications to and from other IBM or non-IBM platforms then C/C++ for z/VM is the answer.

C/C++ for z/VM is part of IBM family of C/C++ compilers that support all of IBM's major platforms. The code base for all of these compilers (both C and C++) is the same which greatly enhances source-level portability.

In addition, both the C and the C++ compilers conform to the ISO/IEC International Standards which enhances portability of code to a variety of compiler implementations.

Hardware and Software Support Services

SmoothStart™/Installation Services

IBM SmoothStart and Installation Services are not provided.

Reference Information

Refer to Software Announcement 203-128 , dated May 13, 2003.

Trademarks

 
z/VM, z/OS, iSeries, pSeries, zSeries, and SmoothStart are trademarks of International Business Machines Corporation in the United States or other countries or both.
 
OS/390, AIX, OS/400, Open Class, VM/ESA, and Language Environment are registered trademarks of International Business Machines Corporation in the United States or other countries or both.
 
UNIX is a registered trademark of the Open Company in the United States and other countries.
 
Linux is a trademark of Linus Torvalds in the United States, other Countries or both
 
Other company, product, and service names may be trademarks or service marks of others.

Technical Information

Specified Operating Environment

Hardware Requirements

C/C++ for z/VM™, V1.1 and its generated object code can be executed on any zSeries™ or S/390® server supported by z/VM V4.4. The C/C++ for z/VM compiler will only execute on z/VM V4.4 and can only be licensed to operate on standard processor engines.

Software Requirements

Required Licensed Programs

  • z/VM V4.4, or later

User Group Requirements: This announcement satisfies or partially satisfies one requirement from one or more of the worldwide user group communities. Groups include Australasian SHARE/GUIDE (ASG), COMMON, COMMON Europe, GUIDE International, G.U.I.D.E. Europe, Japan GUIDE/SHARE (JGS), Guide Latin American (LAG), SHARE EUROPE, and SHARE Incorporated. Requirements satisfied include:

  • Requirement number MR00057114 — Provide a C/C++ Compiler on VM

Planning Information

Packaging: The product package will be shipped on the following media type: 3480 tape.

Security, Auditability, and Control

This program uses the security and auditability features of the host hardware and operating system software. The customer is responsible for evaluation, selection, and implementation of security features, administrative procedures, and appropriate controls in application systems and communication facilities.

Ordering Information

New Licensees

Orders for new licenses will be accepted now.

Shipment will not occur before availability date.

Unless a later date is specified, orders entered before the planned availability date will be assigned a schedule date of one week following availability.

Shipment will begin on the planned availability date.

New users of IBM C/C++ for z/VM Version 1 should specify:

          Type           Model
 
          5654           A22

Note: IBM C/C++ for z/VM V1 may also be ordered using the z/VM V4 SDO packaged offering, program number 5739-A04 after August 1, 2003.

For additional information on IBM z/VM V4.4, refer to Software Announcement 203-128 , dated May 13, 2003.

Basic License: To order a basic license, specify the program number and feature number 9001 for asset registration. For graduated monthly license charge (MLC), specify the feature number below that corresponds to the group that contains the designated machine.

Also, specify the feature number of the desired distribution medium.

Group                         Basic Graduated
Number                        MLC Feature Number
 
18                            0439
20                            0459
25                            0479
28                            0499
29                            0519
30                            1079
31                            1595
32                            1596
35                            1597
38                            1598
40                            1599
50                            1994
60                            1995
70                            1996
80                            1997

Multiple Operating System — PR/SM™ (MOSP): For a graduated MLC, specify the feature number below that corresponds to the group that contains the designated machine.

Group                         MOSP Basic Graduated
Number                        MLC Feature Number
 
18                            2289
20                            2290
25                            2291
28                            2292
29                            2293
30                            2294
31                            2295
32                            2296
35                            2297
38                            2298
40                            2299
50                            2898
60                            2899
70                            3397
80                            3398

Note: The group can be determined by referring to the Exhibit for IBM System/370™ and System/390® Machines (Z125-3901) associated with the IBM Customer Agreement (Z125-4575).

Entry Support License (ESL): To order an ESL license, specify the program number, feature number 9001 for asset registration, and the applicable ESL OTC feature number. Also specify the feature number of the desired distribution medium.

                                             ESL OTC
Program Number/Description                   Feature Number
 
5654-A22, C/C++ for z/VM V1                  3650

ESL machines can be determined by referring to the IBM Entry End User/390 Attachment (Z125-4379).

Workload License Charge (WLC) Basic License: To order a basic license, specify the program number and feature number 9001 for asset registration. Also, specify the feature number of the desired distribution medium.

Flat Workload License Charge (FWLC) Features

FWLC                FWLC
Feature             Feature
Number              Description
 
3661                WLC C/C++ for z/VM V1

Growth Opportunity License Charge (GOLC)

To order a GOLC software, specify the program number, feature number 9001 for asset registration, and the GOLC monthly charge feature number from the table below. Also, specify the feature number for the desired distribution medium.

GOLC                GOLC
Category            Feature Number
 
H30                 3658
H50                 3659
H70                 3660

zSeries Entry License Charge (zELC)

To order zELC software, specify the program number, feature number 9001 for asset registration, and the zELC monthly charge feature number from the table below. Also, specify the feature number for the desired distribution medium.

z800 Models                   zELC Feature Number
 
0E1 -- 1 engine               3679
0A1 -- 1 engine               3662
0B1 -- 1 engine               3663
0C1 -- 1 engine               3664
0X2 -- 1 engine               3680
001 -- 1 engine               3665
0A2 -- 2 engines              3666
002 -- 2 engines              3667
003 -- 3 engines              3668
004 -- 4 engines              3669

Single Version Charging: To elect single version charging, the customer must notify and identify to IBM the prior program and replacement program and the designated machine the programs are operating on.

Basic Machine-Readable Material

                                   Feature        Distribution
Environment                        Number         Medium
 
C/C++ for z/VM, Eng/Jpn            5822           3480 tape
                                                   cartridge

Customization Options: Select the appropriate feature numbers to customize your order to specify the delivery options desired. These features can be specified on the initial or MES orders.

Example: If publications are not desired for the initial order, specify feature number 3470 to ship media only. For future updates, specify feature number 3480 to ship media updates only. If, in the future, publication updates are required, order an MES to remove feature number 3480; then, the publications will ship with the next release of the program.

                                                    Feature
Description                                         Number
 
Initial Shipments
 
Serial Number Only (suppresses shipment             3444
 of media and documentation)
 
Ship Media Only (suppresses initial                 3470
 shipment of documentation)
 
Ship Documentation Only (suppresses                 3471
 initial shipment of media)
 
Satellite Electronic Delivery                       3450
 
Update Shipments
 
Ship Media Updates Only (suppresses                 3480
 update shipment of documentation)
 
Ship Documentation Only (suppresses                 3481
 update shipment of media)
 
Suppress Updates (suppresses update                 3482
 shipment of media and documentation)
 
Expedite Shipments
 
Local IBM Office Expedite                           3445
 (for IBM use only)
 
Customer Expedite Process Charge                    3446
 ($30 charge for each product)

Expedite shipments will be processed to receive 72-hour delivery from the time IBM Software Delivery and Fulfillment (SDF) receives the order. SDF will then ship the order via overnight air transportation.

DSLO License: To order a DSLO license, specify the program number, feature number 9901 for asset registration, and the feature number below for the graduated monthly license charge (MLC) that corresponds to the group containing the designated machine.

Group                         DSLO Graduated
Number                        MLC Feature Number
 
18                            1998
20                            1999
25                            2248
28                            2249
29                            2250
30                            2251
31                            2252
32                            2253
35                            2254
38                            2255
40                            2256
50                            2257
60                            2258
70                            2259
80                            2288

Multiple Operating System — PR/SM™ (MOSP): For a graduated MLC, specify the following feature number below that corresponds to the group that contains the designated machine.

Group                         MOSP DSLO Graduated
Number                        MLC Feature Number
 
18                            3399
20                            3636
25                            3637
28                            3638
29                            3639
30                            3640
31                            3641
32                            3642
35                            3643
38                            3644
40                            3645
50                            3646
60                            3647
70                            3648
80                            3649

Ordering a DSLO feature will result in IBM maintaining a record of this customer location as a DSLO user only. All material for the DSLO license will be provided through the basic license location. If a user selects DSLO, no other feature numbers are valid for this order and no program materials or updates will be shipped.

Unlicensed Documentation

Extended License Charge (ELC) Basic License: To order a basic license, specify the appropriate program and feature number, if required, for asset registration. Specify the applicable Extended License Charge feature(s). Also, specify the feature number of the desired distribution medium.

Processors with assigned capacity above 80 MSUs will now have VM and VSE software prices based on the CPU service unit capacity of the processor. The ELC price structure will have a Base Charge for 80 MSU capacity and an incremental Per MSU charge for all additional MSUs above the 80 MSU base.

                                                            ELC
                                                            Feature
Description                                                 Number
 
Including 80 MSU, Basic Per User Base                       3655
Above 80 MSU, Per Usage Additional                          3656
 Quantity
Above 80 MSU, Per Block of 50 MSU                           3657
 Additional Quantity

Terms and Conditions Licensing: The following apply to products ordered with ELCs:

  1. Z125-6018 ICA Attachment for Extended License Charges, which should be signed by the customer
  2. Z125-6019 ICA Exhibit for Extended License Charges

A memo, program directory, and one copy of the following publications are supplied automatically with the basic machine-readable material:

                                                       Order
Title                                                  Number
 
C/C++ for z/VM User's Guide                            SC09-7625
C/C++ for z/VM Licensed Program                        GC09-7627
 Specifications
C/C++ for z/VM Program Directory                       GI10-5017

Additional copies of the publications will be available for a fee after availability. These copies may be ordered via direct order or you may contact your IBM representative.

All other publications are offered in displayable softcopy form.

Displayable Softcopy Publications: IBM C/C++ for z/VM manuals are offered in displayable softcopy form. All unlicensed manuals are included. The displayable manuals are part of the basic machine-readable material. The files are shipped on the same media type as the basic machine-readable material.

These displayable manuals can be used with the BookManager® READ licensed programs in any of the supported environments. Terms and conditions for use of the machine-readable files are shipped with the files.

Displayable manuals are also available in PDF form.

Displayable Softcopy Publications will include the applicable unlicensed manuals from the C/C++ feature of z/OS™ V1.2 as well as the following:

                                                       Order
Title                                                  Number
 
C/C++ for z/VM User's Guide                            SC09-7625
C/C++ for z/VM Runtime Library                         SC09-7624
 Reference

Displayable publications are also available on the C/C++ for z/VM Collection:

                                                       Order
Title                                                  Number
 
C/C++ for z/VM Book Collection                         SK3T-8850
C/C++ for z/VM PDF Library Collection                  SK3T-8851

Subsequent updates (technical newsletters or revisions between releases) to the publications shipped with the product will be distributed to the user of record for as long as a license for this software remains in effect. A separate publication order or subscription is not needed.

Terms and Conditions

Agreement: IBM Customer Agreement

Variable Charges Apply: Yes

Indexed Monthly License Charge (IMLC) Applies: No

Location License Applies: No

Use Limitation Applies: No

Education Allowance Available: Yes, 15% education allowance applies to qualified education institution customers.

Volume Orders: Not applicable

Replaced Program Information

Replaced Program                     Replacement Program
Program      Program                 Program      Program
Number       Name                    Number       Name
 
5688-040     IBM C/370(TM)           5654-A22     IBM C/C++
              Compiler V1                          for z/VM V1.1
 
5688-187     IBM C/370               5654-A22     IBM C/C++
              Compiler V2                          for z/VM V1.1
 
5688-216     IBM SAA(R)              5654-A22     IBM C/C++
              AD/Cycle(R)                          for z/VM V1.1
              C/370 V1
 
5654-033     IBM C for               5654-A22     IBM C/C++
              VM/ESA(R) V3                         for z/VM V1.1
 
5654-A22     IBM C/C++               To a follow-on, if any
              for z/VM V1.1

Warranted: Yes

Licensed Program Materials Availability

  • Restricted Materials of IBM: None
  • Non-Restricted Source Materials: None
  • Object Code Only (OCO): All

Testing Period: No longer applicable

Program Services/Support Line

Support Center                Yes
 applies:                     Access available through
                               the IBM Support Center
 
Available until               12-months written notice
 discontinued:
 
Services for DSLO             Provided through basic
 licenses:                     license location

IBM Operational Support Services — Support Line: Yes

Prices

Contact your IBM representative for charges information for this announcement.

Order Now

To order, contact the Americas Call Centers, your local IBM representative, or your IBM Business Partner.

To identify your local IBM representative or IBM Business Partner, call 800-IBM-4YOU (426-4968).

 Phone:     800-IBM-CALL (426-2255)
 Fax:       800-2IBM-FAX (242-6329)
 Internet:  ibm_direct@vnet.ibm.com
 Mail:      The Americas Call Centers
            Dept. LE001
            P.O. Box 2690
            Atlanta, GA  30301-2690
 
 Reference: LE001

The Americas Call Centers, our national direct marketing organization, can add your name to the mailing list for catalogs of IBM products.

Note: Shipments will begin after the planned availability date.

Trademarks

 
z/VM, zSeries, PR/SM, System/370, PR/SM, z/OS, and C/370 are trademarks of International Business Machines Corporation in the United States or other countries or both.
 
S/390, System/390, BookManager, SAA, AD/Cycle, and VM/ESA are registered trademarks of International Business Machines Corporation in the United States or other countries or both.
 
Other company, product, and service names may be trademarks or service marks of others.