複雑な演算をサポートするために、標準Cライブラリをsplint
含むCソースで実行しようとしています。complex.h
残念ながら、splint
次のエラーで失敗します。
Splint 3.1.2---2009年5月3日
/usr/include/bits/cmathcalls.h:54:31:解析エラー:非関数宣言:_Complex:externdouble。(解析エラーのヘルプについては、splint -help parseerrorsを参照してください。)***続行できません。
問題をグーグルで検索すると、分割ディスカッションメーリングリストにこのメッセージのみが表示されました(未回答のままです)。
何か案は?
アップデート
失敗したソースの非常に簡単な例を次に示します。
#include <complex.h>
int main() {
complex x = 2 + 8i;
x = x + 1;
}
_Complex
サポートされていないC99キーワードを再定義しようとすると、複素数の虚数部でエラーが発生します(これは驚くことではありません)。
lsc@deepthought:~$ splint-D_Complex=double temp.c
Splint 3.1.2 --- 03 May 2009
temp.c:4:20: Parse Error. (For help on
parse errors, see splint -help
parseerrors.)
*** Cannot continue.