[net.emacs] Two files present incorrectly in diffs

rms@prep.ai.mit.edu (01/29/86)

From: rms@prep.ai.mit.edu (Richard M. Stallman)
Two files, src/syntax.c and lisp/texinfo.el, were given wrongly
in the diffs distributed until now from 17.36 to 17.43.
Here are the correct differences for those two files.
The file of diffs, /u2/emacs/diff-17.36-17.43, has been corrected.

syntax.c==============================
*** oodist/src/syntax.c	Thu Dec 12 22:06:00 1985
--- dist/src/syntax.c	Tue Jan 14 01:18:24 1986
***************
*** 41,46
    return Qnil;
  }
  
  DEFUN ("syntax-table", Fsyntax_table, Ssyntax_table, 0, 0, 0,
    "Return the current syntax table.\n\
  This is the one specified by the current buffer.")

--- 41,58 -----
    return Qnil;
  }
  
+ Lisp_Object
+ check_syntax_table (obj)
+      Lisp_Object obj;
+ {
+   register Lisp_Object tem;
+   while (tem = Fsyntax_table_p (obj),
+ 	 NULL (tem))
+     obj = wrong_type_argument (Qsyntax_table_p, obj, 0);
+   return obj;
+ }   
+ 
+ 
  DEFUN ("syntax-table", Fsyntax_table, Ssyntax_table, 0, 0, 0,
    "Return the current syntax table.\n\
  This is the one specified by the current buffer.")
***************
*** 60,66
    return Vstandard_syntax_table;
  }
  
! DEFUN ("make-syntax-table", Fmake_syntax_table, Smake_syntax_table, 0, 0, 0,
    "Construct a new syntax table and return it.\n\
  It is a copy of the standard syntax table's current contents.")
    ()

--- 72,78 -----
    return Vstandard_syntax_table;
  }
  
! DEFUN ("copy-syntax-table", Fcopy_syntax_table, Scopy_syntax_table, 0, 1, 0,
    "Construct a new syntax table and return it.\n\
  It is a copy of the TABLE, which defaults to the standard syntax table.")
    (table)
***************
*** 62,69
  
  DEFUN ("make-syntax-table", Fmake_syntax_table, Smake_syntax_table, 0, 0, 0,
    "Construct a new syntax table and return it.\n\
! It is a copy of the standard syntax table's current contents.")
!   ()
  {
    Lisp_Object size, val;
    XFASTINT (size) = 0400;

--- 74,82 -----
  
  DEFUN ("copy-syntax-table", Fcopy_syntax_table, Scopy_syntax_table, 0, 1, 0,
    "Construct a new syntax table and return it.\n\
! It is a copy of the TABLE, which defaults to the standard syntax table.")
!   (table)
!      Lisp_Object table;
  {
    Lisp_Object size, val;
    XFASTINT (size) = 0400;
***************
*** 69,77
    XFASTINT (size) = 0400;
    XFASTINT (val) = 0;
    val = Fmake_vector (size, val);
!   if (!NULL (Vstandard_syntax_table))
!     bcopy (XVECTOR (Vstandard_syntax_table)->contents,
! 	   XVECTOR (val)->contents, 0400 * sizeof (Lisp_Object));
    return val;
  }
  

--- 82,96 -----
    XFASTINT (size) = 0400;
    XFASTINT (val) = 0;
    val = Fmake_vector (size, val);
!   if (!NULL (table))
!     table = check_syntax_table (table);
!   else if (NULL (Vstandard_syntax_table))
!     /* Can only be null during initialization */
!     return val;
!   else table = Vstandard_syntax_table;
! 
!   bcopy (XVECTOR (table)->contents,
! 	 XVECTOR (val)->contents, 0400 * sizeof (Lisp_Object));
    return val;
  }
  
***************
*** 75,82
    return val;
  }
  
! DEFUN ("set-syntax-table", Fset_syntax_table, Sset_syntax_table, 1, 1,
!   "sSet syntax table: ",
    "Select a new syntax table for the current buffer.\n\
  One argument, a syntax table.")
    (table)

--- 94,100 -----
    return val;
  }
  
! DEFUN ("set-syntax-table", Fset_syntax_table, Sset_syntax_table, 1, 1, 0,
    "Select a new syntax table for the current buffer.\n\
  One argument, a syntax table.")
    (table)
***************
*** 82,93
    (table)
       Lisp_Object table;
  {
!   register Lisp_Object tem;
! 
!   tem = Fsyntax_table_p (table);
!   if (NULL (tem))
!     table = wrong_type_argument (Qsyntax_table_p, table, 0);
! 
    bf_cur->syntax_table_v = XVECTOR (table);
    return table;
  }

--- 100,106 -----
    (table)
       Lisp_Object table;
  {
!   table = check_syntax_table (table);
    bf_cur->syntax_table_v = XVECTOR (table);
    return table;
  }
***************
*** 137,143
    return make_number (syntax_code_spec[(int) SYNTAX (XINT (ch))]);
  }
  
! DEFUN ("modify-syntax-entry", Fmodify_syntax_entry, Smodify_syntax_entry, 2, 2,
    "cSet syntax for character: \nsSet syntax for %s to: ",
    0 /* See auxdoc.c */)
    (c, newentry)

--- 150,159 -----
    return make_number (syntax_code_spec[(int) SYNTAX (XINT (ch))]);
  }
  
! DEFUN ("modify-syntax-entry", Fmodify_syntax_entry, Smodify_syntax_entry, 2, 3, 
!   /* I really don't know why this is interactive
!      help-form should at least be made useful whilst reading the second arg
!    */
    "cSet syntax for character: \nsSet syntax for %s to: ",
    0 /* See auxdoc.c */)
    (c, newentry, syntax_table)
***************
*** 140,147
  DEFUN ("modify-syntax-entry", Fmodify_syntax_entry, Smodify_syntax_entry, 2, 2,
    "cSet syntax for character: \nsSet syntax for %s to: ",
    0 /* See auxdoc.c */)
!   (c, newentry)
!      Lisp_Object c, newentry;
  {
    register unsigned char *p, match;
    register enum syntaxcode code;

--- 156,163 -----
     */
    "cSet syntax for character: \nsSet syntax for %s to: ",
    0 /* See auxdoc.c */)
!   (c, newentry, syntax_table)
!      Lisp_Object c, newentry, syntax_table;
  {
    register unsigned char *p, match;
    register enum syntaxcode code;
***************
*** 149,154
  
    CHECK_NUMBER (c, 0);
    CHECK_STRING (newentry, 1);
  
    p = XSTRING (newentry)->data;
    code = (enum syntaxcode) syntax_spec_code[*p++];

--- 165,173 -----
  
    CHECK_NUMBER (c, 0);
    CHECK_STRING (newentry, 1);
+   if (NULL (syntax_table))
+     XSET (syntax_table, Lisp_Vector, bf_cur->syntax_table_v);
+   else syntax_table = check_syntax_table (syntax_table);
  
    p = XSTRING (newentry)->data;
    code = (enum syntaxcode) syntax_spec_code[*p++];
***************
*** 153,159
    p = XSTRING (newentry)->data;
    code = (enum syntaxcode) syntax_spec_code[*p++];
    if (((int) code & 0377) == 0377)
!     error ("invalid syntax description letter", c);
  
    match = *p++;
    if (match == ' ') match = 0;

--- 172,178 -----
    p = XSTRING (newentry)->data;
    code = (enum syntaxcode) syntax_spec_code[*p++];
    if (((int) code & 0377) == 0377)
!     error ("invalid syntax description letter: %c", c);
  
    match = *p++;
    if (match == ' ') match = 0;
***************
*** 179,185
  	break;
        }
  	
!   bf_cur->syntax_table_v->contents[XINT (c)] = val;
  
    return Qnil;
  }

--- 198,204 -----
  	break;
        }
  	
!   XVECTOR (syntax_table)->contents[XINT (c)] = val;
  
    return Qnil;
  }
***************
*** 970,977
    register struct Lisp_Vector *v;
  
    /* Set this now, so first buffer creation can refer to it. */
!   /* Make it nil before calling make-syntax-table
!     so that make-syntax-table will know not to try to copy from garbage */
    Vstandard_syntax_table = Qnil;
    Vstandard_syntax_table = Fmake_syntax_table ();
  

--- 989,996 -----
    register struct Lisp_Vector *v;
  
    /* Set this now, so first buffer creation can refer to it. */
!   /* Make it nil before calling copy-syntax-table
!     so that copy-syntax-table will know not to try to copy from garbage */
    Vstandard_syntax_table = Qnil;
    Vstandard_syntax_table = Fcopy_syntax_table (Qnil);
  
***************
*** 973,979
    /* Make it nil before calling make-syntax-table
      so that make-syntax-table will know not to try to copy from garbage */
    Vstandard_syntax_table = Qnil;
!   Vstandard_syntax_table = Fmake_syntax_table ();
  
    v = XVECTOR (Vstandard_syntax_table);
  

--- 992,998 -----
    /* Make it nil before calling copy-syntax-table
      so that copy-syntax-table will know not to try to copy from garbage */
    Vstandard_syntax_table = Qnil;
!   Vstandard_syntax_table = Fcopy_syntax_table (Qnil);
  
    v = XVECTOR (Vstandard_syntax_table);
  
***************
*** 1023,1029
    defsubr (&Ssyntax_table_p);
    defsubr (&Ssyntax_table);
    defsubr (&Sstandard_syntax_table);
!   defsubr (&Smake_syntax_table);
    defsubr (&Sset_syntax_table);
    defsubr (&Schar_syntax);
    defsubr (&Smodify_syntax_entry);

--- 1042,1048 -----
    defsubr (&Ssyntax_table_p);
    defsubr (&Ssyntax_table);
    defsubr (&Sstandard_syntax_table);
!   defsubr (&Scopy_syntax_table);
    defsubr (&Sset_syntax_table);
    defsubr (&Schar_syntax);
    defsubr (&Smodify_syntax_entry);

lisp/texinfo.el==============================
*** oodist/lisp/texinfo.el	Wed Dec 18 21:59:42 1985
--- dist/lisp/texinfo.el	Thu Jan 23 13:15:35 1986
***************
*** 128,134
  		   (skip-chars-backward "\^Q")
  		   (= (logand 1 (- opoint (point))) 1))))
  	  nil
! 	(if (looking-at "[@{}'`]")
  	    (progn
  	      (delete-char -1)
  	      (forward-char 1))

--- 128,134 -----
  		   (skip-chars-backward "\^Q")
  		   (= (logand 1 (- opoint (point))) 1))))
  	  nil
! 	(if (looking-at "[@{}'` ]")
  	    (progn
  	      (delete-char -1)
  	      (forward-char 1))
***************
*** 240,245
  (put 'setfilename 'texinfo-format 'texinfo-format-setfilename)
  (defun texinfo-format-setfilename ()
    (let ((arg (texinfo-parse-arg-discard)))
      (insert "Info file "
  	    arg
  	    ", produced by texinfo-format-buffer   -*-Text-*-\nfrom "

--- 240,246 -----
  (put 'setfilename 'texinfo-format 'texinfo-format-setfilename)
  (defun texinfo-format-setfilename ()
    (let ((arg (texinfo-parse-arg-discard)))
+     (setq texinfo-format-filename (file-name-nondirectory arg))
      (insert "Info file "
  	    texinfo-format-filename
  	    ", produced by texinfo-format-buffer   -*-Text-*-\nfrom "
***************
*** 241,247
  (defun texinfo-format-setfilename ()
    (let ((arg (texinfo-parse-arg-discard)))
      (insert "Info file "
! 	    arg
  	    ", produced by texinfo-format-buffer   -*-Text-*-\nfrom "
  	    (if (buffer-file-name input-buffer)
  		(concat "file "

--- 242,248 -----
    (let ((arg (texinfo-parse-arg-discard)))
      (setq texinfo-format-filename (file-name-nondirectory arg))
      (insert "Info file "
! 	    texinfo-format-filename
  	    ", produced by texinfo-format-buffer   -*-Text-*-\nfrom "
  	    (if (buffer-file-name input-buffer)
  		(concat "file "
***************
*** 247,254
  		(concat "file "
  			(file-name-nondirectory (buffer-file-name input-buffer)))
  	      (concat "buffer " (buffer-name input-buffer)))
! 	    ?\n)
!     (setq texinfo-format-filename (file-name-nondirectory arg))))
  
  (put 'node 'texinfo-format 'texinfo-format-node)
  (defun texinfo-format-node ()

--- 248,254 -----
  		(concat "file "
  			(file-name-nondirectory (buffer-file-name input-buffer)))
  	      (concat "buffer " (buffer-name input-buffer)))
! 	    ?\n)))
  
  (put 'node 'texinfo-format 'texinfo-format-node)
  (defun texinfo-format-node ()