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')