[MAJOR BUG] g++ 2.95.x generates invalid code for KDE 3.3.0

Stefan Teleman steleman at nyc.rr.com
Mon Sep 20 02:04:28 BST 2004


ISO/IEC 14882: 2003 (The ANSI/ISO C++ Standard, Second Edition):

[12.7.3]

Member functions, including virtual functions[10.3], can be called 
during construction or destruction[12.6.2]. When a virtual function 
is called directly or indirectly from a constructor (including from 
the mem-initializer for a data member) or from a destructor, and the 
object to which the call applies is the object under construction or 
destruction, the function called is the one defined in the 
constructor or destructors's own class or in one of its bases, but 
not a function overriding it in a class derived from the construtctor 
or destructor's class, or overriding it in one of the other base 
classes of the most derived object[1.8]. If the virtual call uses an 
explicit class member access[5.2.5] and the object-expression refers 
to the object under construction or destruction but its type is 
neither the constructor or destructor's owne class or one of its 
bases, the result of the call is undefined.

-------------

--Stefan

-----

On Sunday 19 September 2004 20:10, Leo Savernik wrote:
> Is this behaviour mandated by the C++ standard?


-- 
Stefan Teleman          'Nobody Expects the Spanish Inquisition'
steleman at nyc.rr.com                          -Monty Python





More information about the kde-core-devel mailing list