On 02/08/2012 12:19, ext Thiago Macieira wrote: > On quinta-feira, 2 de agosto de 2012 17.15.26, marius.storm-ol...@nokia.com > wrote: >> So, perhaps we can identify the cases where they are similar and use >> that with MSVC until proper noexcept()/noexcept(<type>) support is provided? > > Yes. I can identify where they are similar: nowhere. > > If you add it, the function with the throw() specification will *add* code to > check all exceptions. That's why throw() is deprecated.
Huh? The documentation explicitly says " void MyFunction(int i) throw(); tells the compiler that the function does not throw any exceptions. It is the equivalent to using __declspec(nothrow)." So, i.o.w. throw() == __declspec(nothrow), which in turn means "the compiler can eliminate the mechanics of tracking the lifetime of certain unwindable objects in such a function, and significantly reduce the code size". So no, throw() will effectively remove all checking for exceptions. Using "throw(...)" *will* add code to check all exceptions, but that's not what we were talking about. -- .marius _______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development