[aspectc-user] Announcement of AspectC++ 0.9.1

Olaf Spinczyk Olaf.Spinczyk at informatik.uni-erlangen.de
Thu Feb 10 21:43:29 CET 2005


Hi,

the new AspectC++ release 0.9.1 is now available from www.aspectc.org. 
We uploaded binaries for Linux, Solaris, MacOS X and Win32 (all 
statically linked). The sources are also available. The woven sources 
follow tomorrow.

The new version comes with the following new features (excerpt from the
Changelog):

Version 0.9.1 (2005-02-10)

         * AspectC++ is now always statically linked. We therefore had to
           compile libxml2 on our own (see the updated README file).

         * AspectC++ and Puma can now be woven and compiled with
           g++ 3.4.1

         * Many parser bug fixes. Parser can now deal with the g++
           3.4.1 STL in normal and --real-instances mode.

         * modified execution join point code generation pattern. This
           avoid problems with recursive functions and reduces the
           chance of code manipulation problems if the function
           signature depends on conditional compilation. Furthermore,
           it now also works if a function is declared more than once.

         * Bug fixes:
           - Project repository inconsitencies, which caused ACDT
             problems
           - Fixed problems with advice for functions declared as
             extern "C"
           - Advice for calls to template functions works now
           - Fixed the signature strings of template functions
           - Fixed construction advice code generation. Generated copy
             constructors didn't handle attribute arrays correctly in any
             case.
           - Position of AC namespace in the translation units.
           - Problems with functions that have a "void" argument
             (C-style)
           - Initialization of that and target in the action structure
           - Handle #pragma once correctly now
           - Bug #198 Inheritance from abstract aspects (more than
             2-level)
           - Bug #207: ac++ mixes up private and public

         * Added a few lines to the Language Reference Manual.

         * Added check for cyclic include relationships between internal
           and external header files. This caused a crash in earlier
           versions.

         * Reimplemented the code for handling the result values of
           wrapped functions. This code no longer relies on the
           accessibility of the constructor and assignment operator.

         * Improved call advice:
           - works for functions with variable arguments now (e.g.
             printf)
           - default arguments are now evaluated *after* the advice is
             run
           - JoinPoint::ARGS now depend on the call expression

         * Extended the JoinPoint-API:
           - More Information about the Result type

         * Improved and added many tests. Test performs diffs now.

---- *Solaris* users: ----
The problem described in the announcement of version 0.9 has been fixed. 
It was related to the order of -I options in parser configuration files 
generated by ag++.
--------------------------

This release fixes many simple and also some severe problems. New 
features are planned for the next (pre-release) version.

Please continue to help us improve the ac++ implementation by entering
bug reports at http://www.aspectc.org/bugzilla or simply asking
questions on this mailing list.

Have fun,

Olaf Spinczyk

PS: Come and meet Daniel and me at AOSD 2005 in Chicago!



More information about the aspectc-user mailing list