# HG changeset patch # User Sam Steingold # Date 1226072393 0 # Node ID 3b19071de1b93a37cd6060da5c0bf759667ee045 # Parent b838c1b7587e107568daa99e811725263a0a8c42 (c-defun-name): Fix CLISP DEFUN handling. diff -r b838c1b7587e -r 3b19071de1b9 lisp/ChangeLog --- a/lisp/ChangeLog Fri Nov 07 14:52:02 2008 +0000 +++ b/lisp/ChangeLog Fri Nov 07 15:39:53 2008 +0000 @@ -1,3 +1,7 @@ +2008-11-07 Sam Steingold + + * progmodes/cc-cmds.el (c-defun-name): Fix CLISP DEFUN handling. + 2008-11-07 Juanma Barranquero * frame.el (make-frame-on-display): Use `string-match-p'. diff -r b838c1b7587e -r 3b19071de1b9 lisp/progmodes/cc-cmds.el --- a/lisp/progmodes/cc-cmds.el Fri Nov 07 14:52:02 2008 +0000 +++ b/lisp/progmodes/cc-cmds.el Fri Nov 07 15:39:53 2008 +0000 @@ -522,7 +522,7 @@ ;; This is the list of brace syntactic symbols that can hang. ;; If any new ones are added to c-offsets-alist, they should be ;; added here as well. - ;; + ;; ;; The order of this list is important; if SYNTAX has several ;; elements, the element that "wins" is the earliest in SYMS. '(arglist-cont-nonempty ; e.g. an array literal. @@ -1685,7 +1685,7 @@ (c-save-buffer-state (beginning-of-defun-function end-of-defun-function where pos name-end) - + (save-excursion ;; Move back out of any macro/comment/string we happen to be in. (c-beginning-of-macro) @@ -1717,7 +1717,7 @@ ((looking-at "DEFUN\\_>") ;; DEFUN ("file-name-directory", Ffile_name_directory, Sfile_name_directory, ...) ==> Ffile_name_directory - ;; DEFUN(POSIX::STREAM-LOCK, stream lockp &key BLOCK SHARED START LENGTH) ==> POSIX::STREAM-LOCK + ;; DEFUN(POSIX::STREAM-LOCK, stream lockp &key BLOCK SHARED START LENGTH) ==> POSIX::STREAM-LOCK (down-list 1) (c-forward-syntactic-ws) (when (eq (char-after) ?\") @@ -1727,9 +1727,11 @@ (point) (progn (c-forward-token-2) + (when (looking-at ":") ; CLISP: DEFUN(PACKAGE:LISP-SYMBOL,...) + (skip-chars-forward "^,")) (c-backward-syntactic-ws) (point)))) - + (t ;; Normal function or initializer. (when (c-syntactic-re-search-forward "[{(]" nil t)