The new code generator is integrated with Py++ package and reuse most
of its infrastructure:
* GCC-XML - generates an XML description of a C++ program from GCC's
internal representation
* pygccxml - powerful and simple Python package to work GCCXML generated file.
* Py++ design, code and utilities
* It was build with future ( ctypes-cpp ) functionality in mind.
* It has cross-platform ( Windows XP and Linux Ubuntu 8.10 ) unit tests

How it works:

1. Using pygccxml, the source files are parsed ( using pygccxml ) and
in-memory description of the code is created
2. .dll, .map or .so file is parsed ( pygccxml ) and exported symbols
list is created
3. Using decorated and undecorated names, mapping between declarations
and exported symbols is created.
4. The exported symbols and the mapping are used to:
* define for what declarations the code should be generated
* find out function calling convention
5. The last step - the code is generated

This is potentially very useful! Generated Python code can be shipped with any project and is (almost) platform independent without need for compilation; you just run Python code.

However I have to wonder how (if) do you support C++ calling conventions. Things like: - How to pass the 'this' parameter to call methods; - Function/method overloading.

I have followed the path of C++ code generation precisely because of the difficulty of calling C++ code via libffi, or else I would probably have contributed to the gobject-introspection and pybank projects. I thought ctypes did not support C++?