On Thursday, June 28, 2012 09:20:54 PM Thiago Macieira wrote: > On quinta-feira, 28 de junho de 2012 18.53.03, viv...@gmail.com wrote: > > Il 28/06/2012 16:31, Thiago Macieira ha scritto: > > > On quinta-feira, 28 de junho de 2012 14.38.37, viv...@gmail.com wrote: > > >> actually for stability and feature related to c++11 gcc-4.7 is nearly > > >> the minimum, but in my experience gcc-4.7 is still a bit rough so +1 > > >> for > > >> gcc-4.6 > > > > > > That's nonsense. C++11 support in GCC 4.5 and 4.6 is just fine. > > > > Thiago you work to qt5 which include the c++11 stuff, so probably you > > know better than rumors around, must admit that I've spoken by those > > rather than an extended experience in the field. > > We may not be talking about the same thing. > > > What made me think the rumors were true is: > > a) many programs which support to be compiled with c++11 syntax require > > gcc-4.7 > > It depends on which C++11 feature you're using. Qt has an #define for each > of them so you can know if the compiler supports such a feature. > > Qt does not require C++11 and will not for many years. What's more, any > program requiring full and unrestricted C++11 support will be extremely > niche and not very popular until at least 2014. For those of us living in > the real world, we have to accept that C++11 support is limited and > therefore limit what we use of it. > > That being the case, GCC 4.5 and 4.6 are more than enough. > > > b) that the resolved/fixed bug list is rather long: > I used GCC 4.5 and 4.6 each for a year and I don't remember any serious bugs > with them. > > There was one bug I reported (I think it was 4.5), which wasn't promptly > fixed because it was in C++11 and that was experimental. Another issue I > remember, which is definitely non-fatal, is that constexpr variables end up > in the .data section instead of the .rodata one in 4.6.
It's probably worth mentioning that there are issues in GCC 4.7 with mixing C++98 and C++11 code on one system. Here's the best discussion of it I could find: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53646 I don't pretend to understand all that, so I'm unlikely to be a good source of further answers, but this isn't just theoretical. There are some projects in Ubuntu that were making a lot of use of C++11 features and they stepped all over this once Ubuntu moved to GCC 4.7 (which is standard in the current development release). Scott K