From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: "Magnus Fromreide" Newsgroups: gmane.emacs.bugs Subject: CC Mode 5.28 (C++); "case" handling seems to be broken Date: Sat, 29 Mar 2003 17:24:44 +0100 Sender: bug-gnu-emacs-bounces+gnu-bug-gnu-emacs=m.gmane.org@gnu.org Message-ID: <200303291624.h2TGOiiN016532@smtp4.hy.skanova.net> NNTP-Posting-Host: main.gmane.org X-Trace: main.gmane.org 1048955118 5332 80.91.224.249 (29 Mar 2003 16:25:18 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Sat, 29 Mar 2003 16:25:18 +0000 (UTC) Original-X-From: bug-gnu-emacs-bounces+gnu-bug-gnu-emacs=m.gmane.org@gnu.org Sat Mar 29 17:25:16 2003 Return-path: Original-Received: from monty-python.gnu.org ([199.232.76.173]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 18zJ8t-0001NZ-00 for ; Sat, 29 Mar 2003 17:25:15 +0100 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.10.13) id 18zJ8p-00050G-02 for gnu-bug-gnu-emacs@m.gmane.org; Sat, 29 Mar 2003 11:25:11 -0500 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.10.13) id 18zJ8Y-0004qT-00 for bug-gnu-emacs@gnu.org; Sat, 29 Mar 2003 11:24:54 -0500 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.10.13) id 18zJ8U-0004dB-00 for bug-gnu-emacs@gnu.org; Sat, 29 Mar 2003 11:24:52 -0500 Original-Received: from smtp4.hy.skanova.net ([195.67.199.133]) by monty-python.gnu.org with esmtp (Exim 4.10.13) id 18zJ8R-0004RO-00; Sat, 29 Mar 2003 11:24:47 -0500 Original-Received: from anna (h151n2fls20o974.telia.com [212.181.170.151]) by smtp4.hy.skanova.net (8.12.8/8.12.8) with SMTP id h2TGOiiN016532; Sat, 29 Mar 2003 17:24:45 +0100 (CET) Original-Received: by anna (sSMTP sendmail emulation); Sat, 29 Mar 2003 17:24:44 +0100 Original-To: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org X-BeenThere: bug-gnu-emacs@gnu.org X-Mailman-Version: 2.1b5 Precedence: list List-Id: Bug reports for GNU Emacs, the Swiss army knife of text editors List-Help: List-Post: List-Subscribe: , List-Archive: List-Unsubscribe: , Errors-To: bug-gnu-emacs-bounces+gnu-bug-gnu-emacs=m.gmane.org@gnu.org Xref: main.gmane.org gmane.emacs.bugs:4664 X-Report-Spam: http://spam.gmane.org/gmane.emacs.bugs:4664 It seems that the expression that tries to match case: gets confused by this code and thus it all ends up looking as below: int foo() { testcase(&x::y); testcase(&x::y); } Emacs : GNU Emacs 21.2.1 (i386-debian-linux-gnu, X toolkit, Xaw3d scroll bars) of 2002-03-22 on raven, modified by Debian Package: CC Mode 5.28 (C++) Buffer Style: gnu c-emacs-features: (1-bit) current state: ============== (setq c-basic-offset 4 c-comment-only-line-offset '(0 . 0) c-block-comment-prefix "" c-comment-prefix-regexp '((pike-mode . "//+!?\\|\\**") (other . "//+\\|\\**")) c-cleanup-list '(scope-operator) c-hanging-braces-alist '((brace-list-open) (brace-entry-open) (substatement-open after) (block-close . c-snug-do-while) (extern-lang-open after) (inexpr-class-open after) (inexpr-class-close before)) c-hanging-colons-alist nil c-hanging-semi&comma-criteria '(c-semi&comma-inside-parenlist) c-backslash-column 48 c-label-minimum-indentation 1 c-offsets-alist '((string . c-lineup-dont-change) (c . c-lineup-C-comments) (defun-open . 0) (defun-close . 0) (defun-block-intro . +) (class-open . 0) (class-close . 0) (inline-close . 0) (func-decl-cont . +) (knr-argdecl . 0) (topmost-intro . 0) (topmost-intro-cont . 0) (member-init-intro . +) (member-init-cont . c-lineup-multi-inher) (inher-intro . +) (inher-cont . c-lineup-multi-inher) (block-open . 0) (block-close . 0) (brace-list-close . 0) (brace-list-intro . +) (brace-list-entry . 0) (brace-entry-open . 0) (statement . 0) (statement-case-intro . +) (substatement . +) (case-label . 0) (access-label . -) (do-while-closure . 0) (else-clause . 0) (catch-clause . 0) (comment-intro . c-lineup-comment) (arglist-cont . 0) (arglist-cont-nonempty . c-lineup-arglist) (stream-op . c-lineup-streamop) (inclass . +) (cpp-macro . [0]) (cpp-macro-cont . c-lineup-dont-change) (friend . 0) (objc-method-intro . [0]) (objc-method-args-cont . c-lineup-ObjC-method-args) (objc-method-call-cont . c-lineup-ObjC-method-call) (extern-lang-open . 0) (extern-lang-close . 0) (inextern-lang . +) (namespace-open . 0) (namespace-close . 0) (innamespace . +) (template-args-cont c-lineup-template-args +) (inlambda . c-lineup-inexpr-block) (lambda-intro-cont . +) (inexpr-statement . 0) (inexpr-class . +) (statement-block-intro . +) (knr-argdecl-intro . 5) (substatement-open . +) (label . 0) (statement-case-open . +) (statement-cont . +) (arglist-intro . c-lineup-arglist-intro-after-paren) (arglist-close . c-lineup-arglist) (inline-open . 0) (brace-list-open . +) ) c-delete-function 'delete-char c-electric-pound-behavior nil c-indent-comments-syntactically-p nil c-tab-always-indent t defun-prompt-regexp nil tab-width 8 comment-column 32 parse-sexp-ignore-comments t auto-fill-function nil comment-multi-line t comment-start-skip "/\\*+ *\\|//+ *" fill-prefix nil paragraph-start "[ ]*\\(//+\\|\\**\\)[ ]*$\\|^\f" adaptive-fill-mode t adaptive-fill-regexp "[ ]*\\(//+\\|\\**\\)[ ]*\\([ ]*\\([-|#;>*]+[ ]*\\|(?[0-9]+[.)][ ]*\\)*\\)" )