6 # comments can be trouble (e.g. ffree())
7 if ( (c = match(prev, /\/\*.*\*\/$/)) != 0 ) {
8 comment = substr(prev, c)
9 sub(/\/\*.*\*\/$/, "", prev)
14 # isolate argument list
15 sub(/^[^(]*\(/, "", x)
16 sub(/\)[^)]*$/, "", x)
18 # find the names in it
21 for (i = 2; i <= n; i += 2)
22 arglist = arglist args[i]
23 gsub(/\(\*f\)\(Tchar\)/, "f", arglist) # special case for n4.c
24 gsub(/\[[0-9]+\]/, "", arglist) # for n8.c
25 gsub(/[*()\[\]]/, "", arglist) # discard noise characters *()[]
26 gsub(/,/, ", ", arglist) # space nicely
27 sub(/\(.*\)/, "(" arglist ")", prev) # reconstruct
30 # argument declarations
32 gsub(/\(\*f\)\(Tchar\)/, "(*f)()", x) # special case for n4.c