問題タブ [compiler-warnings]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
1276 参照

visual-studio - Visual Studio 2005 での C++ エラーの「コール スタック」

Visual Studio 2005 (C++) にコンパイラ エラーの "コール スタック" はありますか?

たとえば、boost::scoped_ptr を QHash の値として使用しています。ただし、これにより次のコンパイル エラーが発生します。

ビルド出力から、エラーの原因となっているソース ファイルとエラーの原因となっている qhash.h の行番号がわかりますが、エラーを生成しているソース ファイルの行番号を追跡しようとしています (したがって、 「コールスタック」のアイデア)。

QHash で scoped_ptr を使用する問題の解決策を探しているのではなく、コンパイル エラーが生成された場所を追跡する問題を探していることに注意してください。これは、奇妙な警告を追跡するのにも役立ちます。テンプレート化されたクラスを使用しているときに、この問題に遭遇することがよくあります。

ありがとう!

0 投票する
2 に答える
144 参照

language-agnostic - コンパイラの警告を視覚化する

注釈を付けたり、レポートの原因となる行を表示したりして、コンパイラの警告とコメントを視覚化する方法を探しています。

これは、NetBeans や Eclipse などの最新の IDE がすでに行っているのとよく似ていますが、概要をよりよく把握するために、複数のコンパイラ (およびその他の静的コード分析ツール) から一度に出力を取得し、1 つの注釈を作成したいと考えています。

その根拠は、たとえば Visual Studio 2005 では完全に検出されず、独自の ARM コンパイラで正確に検出される問題や、その逆の場合があることです。相互参照の警告により、問題をより適切に特定できる可能性がありますが、完全に手動で行うことは不可能です。

そのようなツールについて聞いたことがありますか?Eclipse のようなオープンソースの IDE を拡張して、一度に複数のコンパイラを使用できるようにすることはできますか? それとも、すでに行われていますか?

0 投票する
1 に答える
1128 参照

c - コンパイラ警告を使用して、定数 1 の左シフトのオーバーフローをキャッチしますか?

私たちは Linux カーネル内でコードを書いているので、できる限り試してみましたが、PC-Lint/Flexelint を Linux カーネル コードで動作させることができませんでした。組み込みシンボルなどが多すぎます。しかし、それは副次的な問題です。

gcc から始めて、さまざまなコンパイラがありますが、その他のコンパイラもあります。彼らの警告オプションは時間の経過とともに強化されており、かなり強力な静的分析ツールでもあります.

捕まえたいのはこちら。はい、「マジック ナンバーがない」、「ビット シフトに注意する」など、コード レビューで見つけやすいいくつかの点に違反していることはわかっていますが、それはたまたまコードのそのセクションを見た場合に限られます。とにかく、ここにあります:

さらに更新された問題の説明 - バーが 16 に制限されていても、まだ問題があります。明確にすると、問題は暗黙的な int 型の定数であり、計画外に、すべての計算が同じサイズと符号で実行されるという規則に違反する複雑な式になります。

問題: '1' は long long ではありませんが、小さな値の定数として、デフォルトで int になります。したがって、bar の実際の値がたとえば 16 を超えない場合でも、(1<<bar)式はオーバーフローし、計算全体が台無しになります。

おそらく正しい解決策: 代わりに 1ULL を書き込みます。

この (改訂された) 問題を指摘するよく知られたコンパイラとコンパイラの警告フラグはありますか?

0 投票する
3 に答える
3381 参照

iphone - xcodeの目的-cの警告

私は客観的なcに比較的慣れていません...私はiphone 3.0 SDKを使用しています

特定の状況下でサイズを変更したいサブビューである UIView があります。

私がそれを行う方法は、コントローラークラス内です。

例えば、

上記のコード機能しますが、コンパイラは次の警告を出します: 'UIView' may not response to 'setSize:'

ある意味「壊れてないなら直したくない」って言ってるけど、自分が何か間違ってるんじゃないかってちょっと不安。

なぜ警告が表示されるのか、どうすれば修正できるのかについてのアイデアはありますか?

ティア

0 投票する
1 に答える
1016 参照

visual-studio - Visual Studio:プライベートおよび内部メンバーのXMLドキュメントが欠落していることを警告する

Visual Studio 2005(VS.8.0)を使用しており、パブリックメンバーだけでなく、すべてのクラスメンバーを文書化するという要件を適用したいと考えています。パブリック、保護、または内部で保護されたメンバーが文書化されていない場合に警告を生成するようにVisual Studioをセットアップするのは簡単ですが、プライベートメンバーと内部メンバーに同じ警告をスローさせる方法を探しています。助言がありますか?

注:警告レベル4を使用しており、警告をエラーとして扱い、XMLの生成フラグを設定しています。

0 投票する
9 に答える
174491 参照

java - Javaで有効な@SuppressWarnings警告名のリストは何ですか?

@SuppressWarningsJavaで有効な警告名のリストは何ですか?

("")in の間に入るビット@SuppressWarnings("")

0 投票する
3 に答える
701 参照

objective-c - Xcode が私のクラスを含めたくないようです

だから、「MazeCell.h」で宣言されているMazeCellというクラスがあります

Xcode は"warning: 'MazeView' may not respond to '-left'"、すべてのメソッドと同様に警告を表示し続けます。面白いことに、コードはシミュレーターで問題なく動作します。XCode がメソッドを認識していないだけです。

MazeCellEdgeWall以前に宣言されていなかったためにXCodeが使用を許可しないまで、メッセージを無視することに満足していました(これらの警告とエラーはすべて異なるクラスにあります)。

だから、私は一般的なプログラミングに慣れていないので、見逃したかもしれない露骨なエラーを見た人がいるかどうか疑問に思っていました.


編集:コードが長いため、最初は含めませんでしたが、エラーが発生するコードは次のとおりです。

ここに「MazeCell.m」があります:

MazeView.h は次のとおりです。

繰り返しますが、これは私がコーディングしたことを証明するために提供されています。このプログラムは機能し、前述したように、迷路セルのメソッドは実際に機能します。MazeCellEdgeExit を定義していないため、コンパイルが行われないということを除いて、Xcode が私に気にしない警告を表示しているだけです。 、しかしそれ以外の場合はコンパイルされます。


これはかなり奇妙です。しかし、MazeCell.h と MazeCell.m ファイルを複製して MzCell.h と MzCell.m に名前を変更し、MazeCell へのすべての参照を MzCell に置き換えると、このプログラムが実行されることがわかりました。

それは答えよりも多くの質問を開きますが...

0 投票する
3 に答える
4266 参照

c++ - VC ++ C4150(不完全な型へのポインターの削除)が警告のみであるのはなぜですか?

もちろん、警告を処理する必要がありますが、VC ++ C4150(不完全な型へのポインターの削除)が警告のみであるのはなぜですか?

0 投票する
1 に答える
241 参照

delphi - Delphi の警告に悩まされている

コンポーネント セットの 1 つで、コンパイル時に多くの警告が表示されます。

Method Create (Clear、DrawTab) は、基本型 ControlX の仮想メソッドを非表示にします。

私の問題は、仮想メソッドと Delphi について、これを適切に修正する方法を知るのに十分な知識がないことです (ソース コードがあります)。Delphi 5 でこのタイプのエラーを修正する方法を知っている人はいますか?