HP aC++ A.03.85 Release Notes

HP aC++ Release Notes
New Features in Version A.03.65
Chapter 114
const C func2() { return C(); }
int main() {
const C b = func2();
In this case, the compiler eliminates the copy constructor call.
Improved Compile Time
With this release, there is a significant reduction in compile time for applications involving
operator overloading and function overloading.
Debugging of Inline Functions
HP aC++ Version A.03.65 now supports debugging of inline functions. This feature enables
you to set breakpoints and watch points, do 'step-in' and 'step-out', and display, view, or
change the value of local variables in inline functions using WDB. To enable this feature, use
the +inline_debug option, which will implicitly pass the -g option to the compiler.
Improved Template Usability
This version significantly improves the support for C++ template features with more
conformance to the ISO/IEC 14882 C++ Standard. Specifically, support for member templates,
argument deduction, partial specialization, and dependent name lookup have been improved.
Destruct Locals when pthread_exit is Called
When pthread_exit is called in multithreaded C++ applications, the exiting thread exits
without calling destructors for the active local objects. This behavior is not always desirable,
certain applications might require the destructors to be called for objects on the stack of
exiting thread.
From this release, support is provided for calling destructors for active local objects when
pthread_exit is called on a thread. To enable this feature, you need to set the environment
variable aCC_PTHREAD_EXIT_CLEANUP=1|ON.
Consider the following example:
#include <pthread.h>
#include <stdio.h>
class A {
public :
A() { printf("A()\n"); }