2011-04-05から1日間の記事一覧
gcc-4.6.0 では、以下のコードが正しくコンパイルされてしまう。 template<class T> T&& declval() noexcept; template< class T > inline void f1( T& x ) noexcept( noexcept( declval<T&>().foo() ) ) { x.foo(); } template< class T, bool Noexcept = noexcept( decl</t&></class>…
エミュレーションすると言っても、基本的に常時 false ですが: #include <boost/config.hpp> #ifdef BOOST_NO_NOEXCEPT // 今のところそんなマクロ無いけど #define NOEXCEPT(expr) ( sizeof( (void)( expr ), 0 ) < 0 ) #define NOEXCEPT_IF(expr) #define NOTHROW #else #de</boost/config.hpp>…