# HG changeset patch # User Katsumi Yamaoka # Date 1278640209 0 # Node ID 0b8608a36b5518c846c8e91fe1e587d3d1dfa41f # Parent 98c38f2ddca3569ff38c3d67d5bf7e9940291e86# Parent 61d8d0cf32a81c56263bca6423f0d9e7c10b73e3 Merge from mainline. diff -r 98c38f2ddca3 -r 0b8608a36b55 lib-src/ChangeLog --- a/lib-src/ChangeLog Fri Jul 09 01:02:18 2010 +0000 +++ b/lib-src/ChangeLog Fri Jul 09 01:50:09 2010 +0000 @@ -1,3 +1,8 @@ +2010-07-09 Dan Nicolaescu + + * make-docfile.c (write_c_args): Deal with type names in DEFUN + arguments. + 2010-07-08 Dan Nicolaescu * update-game-score.c (P_): Remove macro. diff -r 98c38f2ddca3 -r 0b8608a36b55 lib-src/make-docfile.c --- a/lib-src/make-docfile.c Fri Jul 09 01:02:18 2010 +0000 +++ b/lib-src/make-docfile.c Fri Jul 09 01:50:09 2010 +0000 @@ -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')