3

SunStudio11 にバンドルされている STLport は、多くの警告を生成します。ほとんどのコンパイラには、次のように特定のソース ファイルからの警告を無効にする方法があると思います。

サンC

#pragma error_messages off

#include <header.h>
// ...

#pragma error_messages on

gcc

#pragma warning(push, 0)        

#include <header.h>
// ...

#pragma warning(pop)

これを SunStudio C++ コンパイラでどのように行うのですか? (ところで、sunstudio C プラグマは、sunstudio C++ では機能しません)

4

4 に答える 4

6

SunStudio 12 では、#pragma error_messages は C ユーザー マニュアルに記載されているとおりに機能します。

-errtags=yes オプションでタグを表示し、次のように使用できます。

// Disable badargtypel2w:
//     String literal converted to char* in formal argument
#pragma error_messages (off, badargtypel2w )

そして、CC (C++ コンパイラ) でコンパイルします。

于 2009-04-22T10:55:18.627 に答える
1

#pragmas よりもコマンド ライン オプションを使用したい場合の簡単な答えは、 -erroff=%all on your compile line.

-erroff=%tag で特定の警告メッセージを抑制できます

コンパイル行に -errtags を追加すると、警告メッセージのタグを出力できます。次に、それらのタグのみを抑制する -erroff の一連のコンマ区切り値を定義できます。

詳細については、 http://docs.oracle.com/cd/E19205-01/820-7599/bkapa/index.htmlを参照してください。

Sun Studio 12 update 1 が利用可能になったことに注意してください。ここでは SS12u1 のドキュメントを参照しています。

于 2009-07-09T23:08:41.417 に答える
0

警告をオフにすることはできませんが、最後に SunStudio を見たとき、2 つの STL が同梱されていました.1 つは、以前のバージョンのコンパイラと STLport との後方互換性のための古いものです。警告をオフにしようとする前に、STLport を使用しているかどうかを確認する価値があるかもしれません。

于 2009-02-11T15:56:05.947 に答える