わたなべです.

KIMURA Koichi <kkimura / pure.cpdc.canon.co.jp> writes:

:一応期待通りの動作はするのですが、もうちょっとうまい書き方がある
:のではないかという気がしてなりません^^; こうした方が良い。という
:点があれば指摘して下さい。

#ifdef とかあるし, そういう仕事はコンパイラに任せて djgpp か 
GNU Win32 の nm で
nm --extern-only foo.obj | ruby -ne 'print if sub! /^[\da-f]{8} T _/, ""'
が確実かもしれない. 処理系依存になるけど.

Yukihiro Matsumoto <matz / netlab.co.jp> writes:

:ちょっと苦しいかな.4行しか小さくなってないし.

もうちょっと小さくしてみました. でも遅くなってる. ;-)

printf "; %s\n", ARGV[0]
while gets
  print $1, "\n" if /^([A-Za-z_]\w*)\(/
  gets while /\bstatic\b/
  printf "; %s\n", ARGV[0] if $<.eof and ARGV[0]
end

そっか, ARGV って shift するから while の中は 1 個ずれちゃうんだね.

-- 
わたなべひろふみ