diff options
author | Peter Stephenson <pws@users.sourceforge.net> | 2006-08-04 11:42:20 +0000 |
---|---|---|
committer | Peter Stephenson <pws@users.sourceforge.net> | 2006-08-04 11:42:20 +0000 |
commit | 99fa8b90b24b17536d95285c0b64d9b336570ff1 (patch) | |
tree | e044258f7be9373d74cd7e0efb63e4d0104c436c /Src/makepro.awk | |
parent | 1f03591f216652824818d13730588d78226d569a (diff) | |
download | zsh-99fa8b90b24b17536d95285c0b64d9b336570ff1.tar.gz zsh-99fa8b90b24b17536d95285c0b64d9b336570ff1.tar.xz zsh-99fa8b90b24b17536d95285c0b64d9b336570ff1.zip |
22585: fix zsh.exports
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, /^[^,]*,/)) { |