From xemacs-m  Mon Dec 23 16:50:04 1996
Received: from cdc.noaa.gov (manager.Colorado.EDU [128.138.218.210])
          by xemacs.cs.uiuc.edu (8.8.4/8.8.4) with SMTP
	  id QAA22638 for <xemacs-beta@xemacs.org>; Mon, 23 Dec 1996 16:50:03 -0600 (CST)
Received: from suomi by cdc.noaa.gov (SMI-8.6/SMI-SVR4)
	id PAA29784; Mon, 23 Dec 1996 15:50:02 -0700
Received: by suomi (SMI-8.6) id PAA18799; Mon, 23 Dec 1996 15:50:02 -0700
Date: Mon, 23 Dec 1996 15:50:02 -0700
Message-Id: <199612232250.PAA18799@suomi.cdc.noaa.gov>
From: Mark Borges <mdb@cdc.noaa.gov>
To: XEmacs beta-list <xemacs-beta@xemacs.org>
Subject: [19.15-b5] fortran.el lossage (patch included)
Organization: CIRES, University of Colorado
X-Attribution: mb

	(1) xemacs -q
	(2) \C-x \C-f junk.f
	(3) M-x abbrev-mode
	(4) ;pa<SPACE>
  ==>
  Signaling: (wrong-type-argument consp nil unread-command-events)

(4) is trying to expand `;pa' to `parameter' in fortran-mode.

`fortran-mode-version' returns the same string as in XEmacs-19.14, but
it works fine in the latter. Apparently some sync'ing lossage...

A unified diff (that's the preferred format now, right?) of the
fortran.el's in the two XEmacsen follows. Let me know if you prefer a
context diff instead.

There is some other lossage w.r.t. font-locking in both version I
haven't had time to look over yet.

--- /home/mdb/gnu/lib/xemacs-19.15-b5/lisp/modes/fortran.el	Tue Dec 17 20:44:32 1996
+++ /usr/X11R6/lib/xemacs-19.14/lisp/modes/fortran.el	Tue Jan 30 21:19:37 1996
@@ -1,6 +1,6 @@
 ;;; fortran.el --- Fortran mode for GNU Emacs
 
-;; Copyright (c) 1986, 1993, 1994, 1995 Free Software Foundation, Inc.
+;;; Copyright (c) 1986, 1993, 1994, 1995 Free Software Foundation, Inc.
 
 ;; Author: Michael D. Prange <prange@erl.mit.edu>
 ;; Maintainer: bug-fortran-mode@erl.mit.edu
@@ -21,10 +21,9 @@
 
 ;; You should have received a copy of the GNU General Public License
 ;; along with XEmacs; see the file COPYING.  If not, write to the Free
-;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-;; 02111-1307, USA.
+;; Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 
-;;; Synched up with: FSF 19.34.
+;;; Synched up with: FSF 19.30.
 
 ;;; Commentary:
 
@@ -39,20 +38,20 @@
 ;; Dr. Anil Gokhale, Ulrich Mueller, Mark Neale, Eric Prestemon, 
 ;; Gary Sabot and Richard Stallman.
 
-;; This file may be used with GNU Emacs version 18.xx if the following
-;; variable and function substitutions are made.
-;;  Replace:
-;;   frame-width                           with screen-width
-;;   auto-fill-function                    with auto-fill-hook
-;;   comment-indent-function               with comment-indent-hook
-;;   (setq unread-command-events (list c)) with (setq unread-command-char c)
+;;; This file may be used with GNU Emacs version 18.xx if the following
+;;; variable and function substitutions are made.
+;;;  Replace:
+;;;   frame-width                           with screen-width
+;;;   auto-fill-function                    with auto-fill-hook
+;;;   comment-indent-function               with comment-indent-hook
+;;;   (setq unread-command-events (list c)) with (setq unread-command-char c)
 
-;; Bugs to bug-fortran-mode@erl.mit.edu
-
-;;; Code:
+;;; Bugs to bug-fortran-mode@erl.mit.edu
 
 (defconst fortran-mode-version "version 1.30.6")
 
+;;; Code:
+
 ;;;###autoload
 (defvar fortran-tab-mode-default nil
   "*Default tabbing/carriage control style for empty files in Fortran mode.
@@ -173,7 +172,6 @@
   (modify-syntax-entry ?+ "." fortran-mode-syntax-table)
   (modify-syntax-entry ?- "." fortran-mode-syntax-table)
   (modify-syntax-entry ?= "." fortran-mode-syntax-table)
-  ;; XEmacs change
   ;;(modify-syntax-entry ?* "." fortran-mode-syntax-table)
   (modify-syntax-entry ?/ "." fortran-mode-syntax-table)
   (modify-syntax-entry ?\' "\"" fortran-mode-syntax-table)
@@ -182,7 +180,6 @@
   (modify-syntax-entry ?. "w" fortran-mode-syntax-table)
   (modify-syntax-entry ?_ "w" fortran-mode-syntax-table)
   (modify-syntax-entry ?\! "<" fortran-mode-syntax-table)
-  ;; XEmacs change
   ;;(modify-syntax-entry ?\n ">" fortran-mode-syntax-table)
 
   ;; XEmacs: an attempt to make font-lock understand fortran comments.
@@ -323,7 +320,6 @@
 (defvar fortran-font-lock-keywords fortran-font-lock-keywords-1
   "Default expressions to highlight in Fortran mode.")
 
-;; XEmacs change
 (put 'fortran-mode 'font-lock-defaults '((fortran-font-lock-keywords
 					  fortran-font-lock-keywords-1
 					  fortran-font-lock-keywords-2
@@ -584,13 +580,6 @@
   (setq fortran-startup-message nil)
   (setq local-abbrev-table fortran-mode-abbrev-table)
   (set-syntax-table fortran-mode-syntax-table)
-  ;; Font Lock mode support. (Removed for XEmacs)
-  ;; (make-local-variable 'font-lock-defaults)
-  ;; (setq font-lock-defaults '((fortran-font-lock-keywords
-			      ;; fortran-font-lock-keywords-1
-			      ;; fortran-font-lock-keywords-2
-			      ;; fortran-font-lock-keywords-3)
-			     ;; t t ((?/ . "$/"))))
   (make-local-variable 'fortran-break-before-delimiters)
   (setq fortran-break-before-delimiters t)
   (make-local-variable 'indent-line-function)
@@ -705,7 +694,6 @@
   "Typing ;\\[help-command] or ;? lists all the Fortran abbrevs. 
 Any other key combination is executed normally."
   (interactive)
-  ;; XEmacs change
   (let (e c)
     (insert last-command-char)
     (setq e (next-command-event)
@@ -713,7 +701,7 @@
     ;; insert char if not equal to `?'
     (if (or (= c ??) (eq c help-char))
 	(fortran-abbrev-help)
-      (setq unread-command-events e))))
+      (setq unread-command-event e))))
 
 (defun fortran-abbrev-help ()
   "List the currently defined abbrevs in Fortran mode."
@@ -777,10 +765,9 @@
       (save-window-excursion
 	(if (not (equal (fortran-window-create) 'error))
 	    (progn (message "Type SPC to continue editing.")
-		   ;; XEmacs change
 		   (let ((char (next-command-event)))
 		     (or (equal (event-to-character char) ? )
-			 (setq unread-command-events char))))))
+			 (setq unread-command-event char))))))
     (fortran-window-create)))
 
 (defun fortran-split-line ()
@@ -1544,7 +1531,7 @@
 		     (> (prefix-numeric-value arg) 0))
 		   'fortran-do-auto-fill
 		 nil))
-    (redraw-modeline)))
+    (force-mode-line-update)))
 
 (defun fortran-do-auto-fill ()
   (if (> (current-column) fill-column)
@@ -1688,3 +1675,4 @@
 (provide 'fortran)
 
 ;;; fortran.el ends here
+

-- 
  -mb-

