C/C++ Programmer's Guide (G06.27+, H06.03+)

Table Of Contents
Features and Keywords of Version 2 Native C++
HP C/C++ Programmer’s Guide for NonStop Systems429301-010
E-4
Features Not Supported in VERSION2
Placement delete is implemented.
[18.4.1.3 Placement forms]
An array allocated via a placement new can be deallocated via delete.
[18.4.1.2 Array forms]
Covariant return types on overriding virtual functions are supported.
[10.3 (5) Virtual functions]
enum types are considered to be nonintegral types.
[7.2 Enumeration types]
Partial specialization of class templates is implemented.
[14.5.4 Class template partial specialization]
Partial ordering of function templates is implemented.
[14.5.5.2 Partial ordering of function templates]
Function declarations that match a function template are regarded as independent
functions, not as "guiding declarations" that are instances of the template.
[14.5.5 Function templates]
Features Not Supported in VERSION2
These features are not accepted in the VERSION2 dialect of native C++. These
features are not in the The Annotated C++ Reference Manual (Ellis and Stroustrup) but
are in the X3J16/WG21 Working Paper (WP) [The relevant sections of the WP are
cited inside brackets]:
It is not possible to overload operators using functions that take enum types and no
class types.
[13.3.1.2 Operators in expressions]
enum types cannot contain values larger than can be contained in an int.
[7.2 (5) Enumeration types]
reinterpret_cast does not allow casting a pointer to member of one class to a
pointer to member of another class if the classes are unrelated.
[5.2.10 Reinterpret cast]
Explicit qualification of template functions is not implemented.
[14.6 Name resolution]
In a reference of the form f()->g(), with g a static member function, f() is not
evaluated. This is as required by the ARM. The WP, however, requires that f() be
evaluated.
[9.4 Static members]
Putting a try/catch around the initializers and body of a constructor is not
implemented. function-try-block is not implemented.
[15 Exception handling]