スラッシュドット・ジャパン | ほぼすべてのBSDに存在してきたseekdir()のバグが25歳で死すという記事があったので、どんなbugでどんな修正をしたのか見てみた。個人的にLine48あたりがすげー気になった。(文法的な意味で)
例えば2つのint値を受け取り、足し算をし、その結果を返すような関数を定義するとしたら普通
int add(int a, int b) {/* 処理 */}と宣言するだろう。
ところが上記のソースを見ると
int add(a,b)
int a, b;
{/* 処理 */}
といった感じで宣言している。これはアリなのか?と思い確かめてみた。
#gcc -W test.c
#./a.out
6
コンパイル通ったし、しかも動いた...(´Д`)
こういう書き方初めて知ったー。なんか名前ついてるのかなぁ?
やっぱり、出来る人のソースを読むのは新しい発見が多いので為になる。