2012-04-21 2 views
4

私はc99コードの静的解析器としてsplintを使用しています。splint:forループの解析エラー

スプリントはかなりc99に準拠していないようです。したがって、私はこのパッチを適用しています http://www.cs.virginia.edu/pipermail/splint-discuss/attachments/20080718/52cc25f6/attachment.obj

今、私は解析エラーを取得していないによる宣言を上にbeeingていません。

しかし、for文に変数宣言を入れると、私はまだのforループで構文解析エラーを取得します。たとえば :

for(int i = 0; i < 10; i++) 
{ 
} 

回避策は、このようにそれを記述することです:

int i; 
    for(i = 0; i < 10; i++){ 
    } 

しかし、私はループのためにすべての私を適応したいいけないよう解決可能なパッチがある場合、私は疑問に思ってこの問題。

+2

もし私が実際にあなたのコードを変更していないのであれば、ちょうどsplintを幸せにすることを望みます。 – ThiefMaster

+0

私はあなたのコメントを取得しないでください。 – tobias

+0

コードを実際に悪化させるにもかかわらず、コードを変更するのではなく、splintからの苦情を無視してください。 – ThiefMaster

答えて

2

何の答えはまだありませんので、私はスプリントでの最近の開発活動が大幅に鈍化している

スプリントarticle

にWikipediaの記事を引用。 SourceForgeのCVSによると、2009年1月現在、最も最近のリポジトリの変更は でした。 2008年はリポジトリへの書き込みアクセスが2回しかありませんでした。メンテナーは には開発が停滞しており、プロジェクトには新しい のボランティアが必要だと述べています。

ループヘッド内の変数を宣言することはC99に準拠しています(また主張できる好ましいスタイル)ので、これが修正されるまで、splintは控えてください。