"Alisdair Meredith" <[EMAIL PROTECTED]> writes: | Gabriel Dos Reis wrote: | | > The issue was whether GNU g++ uses it as an *implementation detail* | > that will be affected if constructors suddenly became recursive. | | I was not aware the proposal supported recursive constructors - in the | sense that the syntax I saw had no obvious way to terminate any | recursion. | | OTOH, there is no requirement to detect recursion and make the program | malformed, merely a hidden bug waiting to strike your users.
I know the proposals did not dig into all the corner cases -- and I don't even know whether they considered the case. But, at some point, someone has to go through the sheer number of proposals and try to paint a global picture and see how they interact with existing implementation techniques; C++ is not known to be orthogonal :-) [ in contrast, consider that the "generalized constant expressions" went through the trouble of not introducing recursion in the evaluation of constant expressions -- except the limiting cases with class templates. ] -- Gaby