質問です。
splintを実行させると、エラーになってしまい困っております。
>splint sub.c
sub.c(6):Parse Error. (For help on parse errors, see splint -help parseerrors.)
*** Cannot continue.
と、エラーになってしまい、それ以降をチェックしてくれません。
6行目の型宣言行を、実処理の上に移動することで、
エラーにならなくなるのですが
このようなコーディングがたくさんありすぎて困っています。
エラーにならないオプションありますでしょうか?
また、外部変数はヘッダに記述しても同様のエラーになってしまい
こちらも困っております。
どなたかご教授お願いいたします。
----- sub.c ---------
1 void Func ( void )
2 {
3 int iNum ;
4
5 iNum = 0;
6 char cStr ;
7 .
splint のエラー回避オプションについて
Re: splint のエラー回避オプションについて
C言語の文法としてはエラーになってとうぜんだと思うのですが。
lintに間違ったプログラムを間違っていないと報告して欲しいと要求するのはナンセンスではないでしょうか。
FAQを見たらsplintはC++コードには対応していないと書いてありました。
Splint FAQ 7.Does Splint handle C++?
http://www.splint.org/faq.html#quest5
lintに間違ったプログラムを間違っていないと報告して欲しいと要求するのはナンセンスではないでしょうか。
FAQを見たらsplintはC++コードには対応していないと書いてありました。
Splint FAQ 7.Does Splint handle C++?
http://www.splint.org/faq.html#quest5
Re: splint のエラー回避オプションについて
splintのオプションをすぐに調べられないのですが...
確かsplintは(完全ではないですが)C99に対応しているはずですので、C99を有効にすれば解決するはずです。
調べてみてください。
確かsplintは(完全ではないですが)C99に対応しているはずですので、C99を有効にすれば解決するはずです。
調べてみてください。
Re: splint のエラー回避オプションについて
興味が湧いたので調べてみました。
splintはデフォルトでC99対応有効で、その上で(まだ)質問にある文法には対応していないようです。
CygwinのSplint 3.1.1で確認してみました。
stdbool.hや組み込み型_Boolを使ったコードは通りました。
inttypes.hの書式指定子を使ったコードは通りませんでした。
#3.1.2が出ていますけどChangeLogには見当たらないですね。
VCだとC言語としてコンパイルしたら通らないので、質問者さんはgccとか使っていらっしゃるのでしょうか。
見た目はVCっぽいコードですけど。
splintはデフォルトでC99対応有効で、その上で(まだ)質問にある文法には対応していないようです。
CygwinのSplint 3.1.1で確認してみました。
stdbool.hや組み込み型_Boolを使ったコードは通りました。
inttypes.hの書式指定子を使ったコードは通りませんでした。
#3.1.2が出ていますけどChangeLogには見当たらないですね。
VCだとC言語としてコンパイルしたら通らないので、質問者さんはgccとか使っていらっしゃるのでしょうか。
見た目はVCっぽいコードですけど。
-
kkkniq
Re: splint のエラー回避オプションについて
ご回答ありがとうございます。
あれから、慣れない英語を確認しながら、
怪しそうなオプションを片っ端から設定してみましたが
ダメでしたので、あきらめようとしていました。
使えないということがわかりましたことは大収穫です。
ちなみに、gcc を使用しております。
Makefileのオプションには、-O2 -Wall -g
が設定されておりました。
回答していただいた方々、ありがとうございました。
あれから、慣れない英語を確認しながら、
怪しそうなオプションを片っ端から設定してみましたが
ダメでしたので、あきらめようとしていました。
使えないということがわかりましたことは大収穫です。
ちなみに、gcc を使用しております。
Makefileのオプションには、-O2 -Wall -g
が設定されておりました。
回答していただいた方々、ありがとうございました。