[GCC-XML] last commit

Brad King brad.king at kitware.com
Wed Jun 4 14:17:17 EDT 2008


Roman Yakovenko wrote:
> Good evening.
> 
> Brad, can you explain your last commit?
> 
> "... BUG: xml_output_record_type should perform lazy declaration of
> implicitly declared constructors, destructors, and assignment
> operators so they are reported in the output.  See issue #7148. ..."
> 
> Can you give an example of a code that this commit fix?

It was a fix for this bug:

  http://www.gccxml.org/Bug/view.php?id=7148

For this code:

  struct A { template <class T> A(T&); };

gccxml was dumping no constructors at all which made the class look
default-constructible.  We still don't dump the template, but now
someone reading the output can assume from the lack of a default
constructor that there is no such constructor available.

> Code generation for Boost.Python could be very tricky, especially when
> it is related to constructors and destructors.

After this fix, all constructors and destructors that exist for a class
are dumped whether the user declared them or not.  Those that were
implicitly declared by the compiler are marked as "artificial".

-Brad



More information about the gccxml mailing list