
What is new in Release 1.80 of Systems/C++
-fpack option to specify per-compilation structure member
alignment. #include files from PDS members under
OpenEdition. -frsa=NNN to provide the user a mechanism for
defining the per-function register-save-area. -fc370=z1r2i (or
later) is enabled. "OS" and extern "PLI"
linkages. long double) data type. -march=esa390 option; causes the compiler to use halfword
immediate instructions, use string instructions and to assume 16 floating-pt
registers. Enabled by default with -flinux is specified. For other enhancements to the utilities and runtime library, see the DCC "whatsnew" description.
What is new in Release 1.76 of Systems/C++
What is new in Release 1.75 of Systems/C++
__rent and __norent keywords
applied to data. -march=zarch is specified, the compiler will predefine the
macro _LP64 to 1; otherwise, it defines the _ILP32
macro to 1. -fc370 is not specified, the compiler recognizes #pragma
pack(pop) as a equivalent to #pragma pack(reset). LNAMEADDR= parameter was added to
DCCPRLG which provides the label for this string. This allows the
string to be as long as necessary, and contain any required bytes, and also be
properly demangled in the C++ case. With this change, the results of a call to
__traceback are much better. -fc370=z1r2 option, to indicate compatibility with the
IBM V1R2 z/OS compiler. -fptr_to_unsized_array_parm option, to allow for
compatibility with compilers that incorrectly allow this in C++ source (e.g.
SAS/C++ and Microsoft.) For enhancements to the utilities and runtime library, see the DCC "whatsnew" description.
What is new in Release 1.70 of Systems/C++
This allows version 1.70 of Systems/C++ to provide much better management of automatic template instantiation; without the need for "side files", or bloated executables.
-finstrument_functions option. For Linux (-flinux),
this decorates function entry/exit points compatibly with the normal Linux
utilities. In Systems/C mode, this causes macros to be generated a function
entry/exit points. -fstructmap/-fno_structmap option to enable/disable
the "structure map" portion of the listing. -fasmcomm option in the C++ compiler, which describes how
the original C++ lines should appear in the generated assembler output. -fasmlnno option in the C++ compiler. This causes the
codegenerator to generate comments detailing the line number in the generated
assembler source. -fflex, -fmin_lm_reg=X and -fmin_stm_reg=X
options in the C and C++ compiler. These control peepholing of consecutive
Load/STore instructions. On the FLEX/ES(tm) system, LM and STM instructions
can perform slower than the sequence of L/ST instructions. -fopts[=macro] and -fendmacro[=text] option
in the C++ compiler. -fexportall option in C++ compiler (in IBM mode.) -fdollar option in the C++ compiler - allows '$' in
identifiers. What is new in Release 1.65 of Systems/C++
#if 0 or 1
#pragma ident and #ident which place
text characters into the generated object. -O option to engage optimizations. What is new in Release 1.60 of Systems/C++
As well as the new features of the C compiler , Systems/C++ V1.60 provides the following enhancements
-fquiet option, which suppresses the banner messages -march=zarch option: extern "align4" linkage for C++ -famode=any to support using Grande instructions and 64-bit
integers/pointers when the execution AMODE may not be 64-bits. __ptr31/__ptr64 pointer type qualifiers, for
specifically declaring 32 (31) bit or 64 bit pointers, no matter what type of
code is being compiled. -fc99 not enabled -fc370 now supports the following IBM builtin functions:
alloca, tsched, cs, cds.
Thus, all of the documented IBM C builtin functions are now supported. export supported in IBM compatiblity mode -flinux
mode. C and C++ code compiled with -flinux is now directly
debuggable by the Linux debugger gdb. -fpic and -fPIC for Linux/390 and
z/Linux.