diff options
Diffstat (limited to 'lib-src/make-docfile.c')
-rw-r--r-- | lib-src/make-docfile.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/lib-src/make-docfile.c b/lib-src/make-docfile.c index b3b6b190e48..3df7ec607d9 100644 --- a/lib-src/make-docfile.c +++ b/lib-src/make-docfile.c @@ -450,9 +450,24 @@ write_c_args (FILE *out, char *func, char *buf, int minargs, int maxargs) for (p = buf; *p; p++) { - char c = *p; + char c; int ident_start = 0; + /* FIXME: this must be made a bit more robust*/ + + /* Skip "register Lisp_Object", this can be removed when we get + rid of "register" for DEFUNs. */ + if (strncmp ("register Lisp_Object", p, 20) == 0) + p += 20; + + if (strncmp ("Lisp_Object", p, 11) == 0) + p += 11; + + if (strncmp ("void", p, 4) == 0) + p += 4; + + c = *p; + /* Notice when we start printing a new identifier. */ if ((('A' <= c && c <= 'Z') || ('a' <= c && c <= 'z') |