bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#23053: 25.0.92; error in cc-mode when editing C# file with a generic


From: Jostein Kjønigsen
Subject: bug#23053: 25.0.92; error in cc-mode when editing C# file with a generic class inheritance
Date: Tue, 22 Mar 2016 11:21:15 +0100

On Mon, Mar 21, 2016, at 10:53 PM, Saulius Menkevičius wrote:
> Actually, removing and installing csharp-mode from package manager with
> the latest emacs-25 fixed the issue for me. And I could not replicate
> the same problem in Java mode.
> 
> -- 
> Saulius Menkevičius (saulius.menkevicius@gmail.com)

I completely nuked my previous Emacs build (and personal setup) and
tried setting everything up from scratch again.

I second your findings: Using the emacs-25 branch everything works fine.

If I base my build on Emacs git master though, I still get all of the
problems described above.

There are currently differences between master and emacs-25 and I guess
these changes needs to be vetted better:

> $ git checkout emacs-25
> $ git diff master -- lisp/progmodes/cc-mode.el
> diff --git a/lisp/progmodes/cc-mode.el b/lisp/progmodes/cc-mode.el
> index 9ebe6f7..738870b 100644
> --- a/lisp/progmodes/cc-mode.el
> +++ b/lisp/progmodes/cc-mode.el
> @@ -141,18 +141,7 @@
>  ;; derived-mode-ex.el>.
> 
>  (defun c-leave-cc-mode-mode ()
> -  (when c-buffer-is-cc-mode
> -    (save-restriction
> -      (widen)
> -      (c-save-buffer-state ()
> -       (c-clear-char-properties (point-min) (point-max) 'category)
> -       (c-clear-char-properties (point-min) (point-max) 'syntax-table)
> -       (c-clear-char-properties (point-min) (point-max) 'c-is-sws)
> -       (c-clear-char-properties (point-min) (point-max) 'c-in-sws)
> -       (c-clear-char-properties (point-min) (point-max) 'c-type)
> -       (if (c-major-mode-is 'awk-mode)
> -           (c-clear-char-properties (point-min) (point-max) 
> 'c-awk-NL-prop))))
> -    (setq c-buffer-is-cc-mode nil)))
> +  (setq c-buffer-is-cc-mode nil))
> 
>  (defun c-init-language-vars-for (mode)
>    "Initialize the language variables for one of the language modes
> @@ -1493,7 +1482,6 @@ c-mode
>         abbrev-mode t)
>    (use-local-map c-mode-map)
>    (c-init-language-vars-for 'c-mode)
> -  (c-make-noise-macro-regexps)
>    (c-make-macro-with-semi-re) ; matches macro names whose expansion ends 
> with ;
>    (c-common-init 'c-mode)
>    (easy-menu-add c-c-menu)
> @@ -1549,7 +1537,6 @@ c++-mode
>         abbrev-mode t)
>    (use-local-map c++-mode-map)
>    (c-init-language-vars-for 'c++-mode)
> -  (c-make-noise-macro-regexps)
>    (c-make-macro-with-semi-re) ; matches macro names whose expansion ends 
> with ;
>    (c-common-init 'c++-mode)
>    (easy-menu-add c-c++-menu)
> @@ -1603,7 +1590,6 @@ objc-mode
>         abbrev-mode t)
>    (use-local-map objc-mode-map)
>    (c-init-language-vars-for 'objc-mode)
> -  (c-make-noise-macro-regexps)
>    (c-make-macro-with-semi-re) ; matches macro names whose expansion ends 
> with ;
>      (c-common-init 'objc-mode)
>      (easy-menu-add c-objc-menu)

Anything you can look into, Alan?

-- 
Jostein Kjønigsen
jostein@kjonigsen.net / jostein@secure.kjonigsen.net





reply via email to

[Prev in Thread] Current Thread [Next in Thread]