2011-08-01から1ヶ月間の記事一覧

boost::lazy_enable_if_c を更に lazy にする

C++

久々に 0x ではない C++ のコードを書いてみる.*1書いたコードは,こんな感じ. namespace pezzi { template< class T > int _validate_type(); template< class T, bool = true > struct lazy_identity_ { // nested typename `type' is not defined }; te…

GCC Git Mirror における weekly snapshot の ID ( 20110823 〜 20110827 )

リポジトリ: http://gcc.gnu.org/git/?p=gcc.git gcc-4.4-20110823 2f2814ac7a7233d3bb566029eaeee1d6ee002196 gcc-4.5-20110825 727596fdbc6dfe320e99031d721d145d6e3e37d8 gcc-4.6-20110826 b43c078c7fd66b3d76bbf678c8a9088f17ceccaa gcc-4.7-20110827 9…

C++0x の SFINAE で気づいたこと

関連: http://d.hatena.ne.jp/gintenlabo/20110413/1302675301 C++0x の関数テンプレートがデフォルトテンプレート引数を取れるようになったことで可能になった, extern void* enabler; template < typename T, typename std::enable_if< std::is_arithmet…

GCC Git Mirror における weekly snapshot の ID ( 20110816 〜 20110820 )

リポジトリ: http://gcc.gnu.org/git/?p=gcc.git gcc-4.4-20110816 1b78de81183c9413799138b029cd90fe801cafe7 gcc-4.5-20110818 e521e592c4fa9d975d2687c0a2db9a187796d58c gcc-4.6-20110819 c20e2d427ec57a584e33cdd4ef4720b71ee8eb16 gcc-4.7-20110820 8…

GCC Git Mirror における weekly snapshot の ID ( 20110809 〜 20110813 )

リポジトリ: http://gcc.gnu.org/git/?p=gcc.git gcc-4.4-20110809 e75a7828c3a9ffad0a06390dbd0b90c6e6087000 gcc-4.5-20110811 4663a3b98723e9946c476992eeb8e1c5a85108f3 gcc-4.6-20110812 b9938337484efd69754850b17f841f6eae4f39c2 gcc-4.7-20110813 4…

Haskell の undefined や error が羨ましかったので, C++0x で作ってみた

http://ideone.com/nh39a #include <stdexcept> #include <utility> namespace proto_etude // prototype etude { // あらゆる型として評価できるが,実際に評価されると例外を投げる型 struct undefined_t { // 任意の型への変換 template< class T > operator T&&() const { th</utility></stdexcept>…

pre-Bloomington Mailing が公開された

http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/#mailing2011-07今回は FDIS 直後ということもあり,ドラフトは更新されませんでしたが,大事なことが一点. C++ の新しい国際標準規格案,通称 C++0x が,投票により承認されたようです:http://z…

GCC Git Mirror における weekly snapshot の ID ( 20110802 〜 20110806 )

リポジトリ: http://gcc.gnu.org/git/?p=gcc.git gcc-4.4-20110802 b9240a8b3d6e05f36549aa6bcd84088402297204 gcc-4.5-20110804 4e2e42e13849ad7dab8a412022a3aef3d85799ac gcc-4.6-20110805 1161f57ffe628887c47b525bd19a6c2e8faabe20 gcc-4.7-20110806 9…