diff options
Diffstat (limited to 'Src/makepro.awk')
-rw-r--r-- | Src/makepro.awk | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/Src/makepro.awk b/Src/makepro.awk index 5def40203..0498c1545 100644 --- a/Src/makepro.awk +++ b/Src/makepro.awk @@ -91,6 +91,7 @@ BEGIN { # Handle each declarator. if (match(line, /VA_ALIST/)) { # Already has VARARGS handling. + # Put parens etc. back gsub(/@[{]/, "((", line) gsub(/@}/, "))", line) @@ -105,6 +106,13 @@ BEGIN { if(locality ~ /E/) dtype = "extern " dtype + if (match(line, /[_0-9A-Za-z]+\(VA_ALIST/)) + dnam = substr(line, RSTART, RLENGTH-9) + + # If this is exported, add it to the exported symbol list. + if (exported) + printf "X%s\n", dnam + printf "%s%s %s\n", locality, dtype, line } else { while(match(line, /^[^,]*,/)) { |