2011-12-19 3 views
5

私はCで専属に働いています。Ubunutu 10.10はリポジトリからClangのバージョン2.8を取り出し、完全にインストールします。私はソースからClang v 3.1をコンパイルして(Clang 2.8をアンインストールした後に)それをパスに追加しましたが、この方法ではマニュアルページにアクセスできず、完全に "インストール"していないという気がします。いくつかのテストでは完全に機能しているようです。Cの開発者にとって、Clangのバージョン2.8と3.1の間に実用的な違いはありますか?

バージョン2.8とバージョン3.1との間には、Cの開発者(学生の実際)の視点から実際的な違いはありますか?私はCで独占的に働いており、C++や客観的なCの能力を活用しません。私は最近、Clangの開発の大部分がC++の能力を拡張してきたと信じています。

+0

リリースノートを読んで、見つけたものを教えてください。 –

+0

私は、最適化と警告が(Cの場合でも)改善されたと信じています。同様に、最近のGCCの発展のために。 –

答えて

2

私が見つけた大きな違いは、2.8 VLAの関数パラメータでは、コンパイラがダンプコアになっていることです。 2.9では、このバグは修正されているようです。

また、この新しいバージョンのclangは、すでにC11の一部、特に_Genericを実装しています。

+0

http://gustedt.wordpress.com/2011/01/13/vla-as-function-arguments/ –

+0

注:clang(3.1)のgcc/iccダンプコアで既に動作するC11の機能の中には、最も顕著に指定されたもの匿名の構造体と共用体の初期化 – hroptatyr

+0

@hroptatyr:しかし、多くの拡張は欠けています。 ClangはC++よりはるかに優れています。 –

関連する問題