Oracle® Solaris Studio 12.4: C++ ユーザーズガイド

印刷ビューの終了

更新: 2014 年 12 月
 
 

2.3 テンプレートキャッシュに関する考慮事項

このコンパイラは、デフォルトではテンプレートキャッシュ (リポジトリ) を使用しません。-instances=extern を指定した場合のみ、キャッシュが使用されます。 コンパイラは、キャッシュを使用する場合、キャッシュディレクトリのバージョンを確認し、キャッシュのバージョンの問題を検出した場合は必ずエラーメッセージを発行します。将来の C++ コンパイラもキャッシュのバージョンを調べます。たとえば、将来のコンパイラは異なるテンプレートキャッシュのバージョン識別子を持っているため、現在のリリースで作成されたキャッシュディレクトリを処理しようとすると、次のようなエラーを出力します。

Template Database at ./SunWS_cache is incompatible with
this compiler

同様に、現在のリリースのコンパイラで以降のバージョンのコンパイラで作成されたキャッシュディレクトリを処理しようとすると、エラーが発行されます。

コンパイラをアップグレードするときは、キャッシュを消去するのが常によい方法です。テンプレートキャッシュディレクトリを含むすべてのディレクトリで CCadmin -clean を実行します。ほとんどの場合、テンプレートキャッシュディレクトリの名前は SunWS_cache です。CCadmin -clean の代わりに、rm -rf SunWS_cache と指定しても同様の結果が得られます。