diff options
Diffstat (limited to 'Src')
-rw-r--r-- | Src/makepro.awk | 8 | ||||
-rw-r--r-- | Src/utils.c | 4 |
2 files changed, 10 insertions, 2 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, /^[^,]*,/)) { diff --git a/Src/utils.c b/Src/utils.c index 21b722f6a..0dcf4e59b 100644 --- a/Src/utils.c +++ b/Src/utils.c @@ -3877,7 +3877,7 @@ mb_width(const char *s) */ /**/ -int +mod_export int mb_metacharlenconv(const char *s, wint_t *wcp) { char inchar; @@ -3980,7 +3980,7 @@ mb_metastrlen(char *ptr) /* Simple replacement for mb_metacharlenconv */ /**/ -int +mod_export int metacharlenconv(char *x, int *c) { if (*x == Meta) { |