GCC

GCC-4.8.1 がリリースされた

GCC の最新版, GCC-4.8.1 がリリースされました. http://gcc.gnu.org/ml/gcc/2013-05/msg00306.html http://gcc.gnu.org/gcc-4.8/ GCC-4.8.1 は, GCC-4.8.0 のバグフィックス版であり,多くのバグが潰されている他, 新たに rvalue references for *this …

GCC-4.8.1 の Release Candidate が公開された

GCC の最新版, GCC-4.8.1 の Release Candidate が公開されました. http://gcc.gnu.org/ml/gcc/2013-05/msg00171.html http://gcc.gnu.org/ml/gcc/2013-05/msg00172.html ダウンロードは ftp://gcc.gnu.org/pub/gcc/snapshots/4.8.1-RC-20130517 から行え…

GCC-4.7.1 がリリースされた

gcc の最新版, GCC-4.7.1 がリリースされました: http://gcc.gnu.org/ml/gcc/2012-06/msg00198.html http://gcc.gnu.org/gcc-4.7/ ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.7.1/ 今回のリリースはパッチのため,機能的には GCC-4.7.0 と同じになりますが…

GCC-4.7.0 がリリースされた

GCC の最新版, GCC-4.7.0 がリリースされました. http://gcc.gnu.org/gcc-4.7/ http://gcc.gnu.org/ml/gcc/2012-03/msg00347.html Git ミラーにおける ID はこちらです: gcc-4.7.0 93c5ebd73a4d1626d25203081d079cdd68222fcc GCC-4.7.0 は,実に1年ぶり…

GCC-4.4.7 がリリースされた

GCC 公式から GCC-4.4.7 が入手可能になりました: http://gcc.gnu.org/ml/gcc/2012-03/msg00181.html http://gcc.gnu.org/gcc-4.4/ ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.4.7/ メールでのアナウンスは行われなかった模様です. なお,これにより GCC-4…

GCC-4.7.0 の RC がリリースされた

GCC の最新版, GCC-4.7.0 の Release Candidate が GCC 公式と そのミラーから入手可能になりました: http://gcc.gnu.org/ml/gcc/2012-03/msg00014.html ftp://gcc.gnu.org/pub/gcc/snapshots/4.7.0-RC-20120302 新機能を追加するバージョンの RC ですので…

GCC-4.6.3 がリリースされた

GCC の最新版, GCC-4.6.3 がリリースされました: http://gcc.gnu.org/ml/gcc/2012-03/msg00006.html http://gcc.gnu.org/gcc-4.6/ ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.6.3/ 前回のリリースである GCC-4.6.2 と同様,パッチであり,新しい機能の追加…

GCC-4.7 に Alias declarations (Template aliases) が実装されていた

いつの間にか GCC-4.7 に Alias declarations (Template aliases) が実装されていたようです: http://gcc.gnu.org/projects/cxx0x.html これにより, // my_vector<T> を std::vector<T, my_allocator<T>> の代わりに使える // 関数テンプレート等で型推論させられない弱点はある</t,></t>…

GCC-4.6.2 がリリースされた

gcc の最新版, GCC-4.6.2 がリリースされました: http://gcc.gnu.org/ml/gcc/2011-10/msg00486.html http://gcc.gnu.org/gcc-4.6/ ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.6.2/ Gitミラー上の commit ID は e07bbb139795b3a6702c7c00ab80524be0ba92e8 …

GCC-4.6.1 がリリースされた

gcc の最新版, gcc-4.6.1 がリリースされたようです: http://gcc.gnu.org/gcc-4.6/ ftp://gcc.gnu.org/pub/gcc/releases/gcc-4.6.1/ 今回のリリースはパッチなので,新しい機能は特に追加されていませんが, GCC-4.6.0 に存在していた多くのバグが修正され…

noexcept operator が gcc-4.6.0 で正しく SFINAE されない件

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>…

gcc-4.6.0 コンパイル通ったよ!

以下、テストコード: #include <vector> #include <memory> // for std::unique_ptr // implicit move struct X { X() = default; X( std::vector<int> src ) : p( new auto( std::move(src) ) ) {} // X( X&& ) = default; // noexcept-specification int* begin() noexcept(tru</int></memory></vector>…

gcc-4.6.0 がリリースされた

gcc の最新版 4.6.0 がリリースされたようです: http://gcc.gnu.org/gcc-4.6/ 気になる C++0x サポートですが、 g++ 4.6.0 では、新たに nullptr range-based for constexpr noexcept implicit move 等が追加されたようです。 http://gcc.gnu.org/projects/…

typeid(T).name() に関して

メタプログラミングとかのデバッグ用に、型名を表示させたい場合ってありますよね。 そういう場合は、typeid 演算子を使って、 #include <typeinfo> #include <iostream> int main() { std::cout << typeinfo(int).name() << std::endl; } とかやればいい訳ですが、ここで問題が</iostream></typeinfo>…