Mercurial > emacs
diff lib-src/make-docfile.c @ 109181:61d8d0cf32a8
Make make-docfile understand DEFUN arguments written in standard C.
* lib-src/make-docfile.c (write_c_args): Deal with type names in DEFUN
arguments.
| author | Dan Nicolaescu <dann@ics.uci.edu> |
|---|---|
| date | Thu, 08 Jul 2010 18:09:50 -0700 |
| parents | 52b76722152a |
| children | 908904655a40 |
line wrap: on
line diff
--- a/lib-src/make-docfile.c Thu Jul 08 16:34:47 2010 -0700 +++ b/lib-src/make-docfile.c Thu Jul 08 18:09:50 2010 -0700 @@ -450,9 +450,24 @@ 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')
