HP aC++/HP ANSI C A.06.27 Release Notes
2 What’s new in this version
HP aC++/HP C compiler version A.06.27 provides additional support for C++11 core language
features, with complete binary compatibility with earlier releases and -AA compilation mode.
Following are the changes in HP aC++/HP C compiler version A.06.27:
• “Improved support for C++11 core language features” (page 7)
“New char types char16_t and char32_t” (page 7)◦
◦ “Alias and alias template declarations” (page 8)
◦ “Variadic templates” (page 8)
◦ “nullptr keyword” (page 8)
◦ “Explicit conversion functions and boolean-conversion” (page 8)
◦ “Trailing return types (with "auto")” (page 9)
◦ “Standard attributes” (page 9)
◦ “Attributes for checking, hiding and overriding” (page 9)
◦ “Use of "this" in trailing-return-types” (page 9)
• “Improved support for GNU extensions” (page 10)
“Better support for type trait pseudo functions” (page 10)◦
◦ “Better support for attributes” (page 10)
◦ “Better support for templates” (page 10)
◦ “Better support for built-ins” (page 11)
• “Support for default template arguments for function templates” (page 11)
• “New options in this release” (page 11)
◦ “Option to perform less aggressive optimizations to thread local variables” (page 11)
• “Experimental features in this release” (page 11)
◦ “IELF file-splitting to improve the compilation time at +O4” (page 11)
• “Diagnostic Changes” (page 11)
Improved support for C++11 core language features
Preliminary support for the following C++11 core language features has been introduced in this
release:
New char types char16_t and char32_t
This release of the compiler supports the char16_t and char32_t char types under the C++11
compilation mode, enabled by the compiler option -Ax. U-literals are also enabled in the C++11
compilation mode.
int main(int argc, char** argv)
{
char16_t *str = u"A 16-bit character string";
char32_t ch = U'\U00012345'; // A 32-bit character literal
Improved support for C++11 core language features 7