2018/03/10

[sm]SourceMonitor v3.5.6でCの関数数が正しく出てくれない

出てくれないのだ・・・。

http://www.campwoodsw.com/sourcemonitor.html

今日の最新版は、v3.5.6.334だ。


1年くらい作ってるC言語のプログラムがあって、久々にメトリクスを見てみようと思った。
何も考えずに作っているので、そろそろそういう方面にも目を向けないと。

処理作って、追加追加追加・・・とやっていくと、気付かぬうちに膨れ上がっていたりするではないか。
ああいうのを、整理しておきたいのである。


ソースコードのメトリクスというと、SourceMonitorしか思いつかなかった。
そして、やってみると・・・結果が違う箇所がちらほら見られた。


全部は見ていないのだが、まずFunctionの数が違う。
UTF-8のせいかと思ってSJIS変換したのだが、変わらない。
コメントが悪さしているのかと思ったが、そうでもない。


C++ならどうなるかとやってみると、そうするとFunction数はちゃんと出てくれた。
その代わりというか、#if 0なんかを見てくれていないような気がする。
そして何より、メトリクスとして関数のステップ数が出てくれない。
メソッドだけを評価するようで、評価項目の追加もできないようだ。
うーーーむ。。。。。


v3.6が出るらしいが、まだダウンロードはできないようだ。
無料で使わせてもらっているので、文句言えないし、現象がよくわからんから報告もできんしなぁ。
githubに上げればCoverityが使えるのだけど、ここ数週間Coverity Scanがメンテナンスで落ちているのだ。

こうやって、またソースファイルをきれいにする作業が後回しにされてしまうのであった。。。

1 件のコメント:

  1. 匿名09:24

    SourceMonitorは、C言語のソースを上から解析し、失敗したら解析を中止しているのかもしれません。
    自分の場合、20個以上の関数があるのに、9個の関数しか認識されませんでした。
    10番目の関数に解析不能な箇所(コンパイルは通ります)があったようで、修正したらソースコードの最後まで解析されるようになりました。

    お役に立つが分かりませんが、投稿させていただきます。

    返信削除

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。

注: コメントを投稿できるのは、このブログのメンバーだけです。