From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Eric Hanchrow Newsgroups: gmane.emacs.bugs Subject: CC Mode 5.28 (C++); M-; and TAB disagree on comment indentation Date: 07 Jun 2002 17:29:34 -0700 Sender: bug-gnu-emacs-admin@gnu.org Message-ID: <87660uhatt.fsf@blarg.net> Reply-To: offby1@blarg.net NNTP-Posting-Host: localhost.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1023496229 30933 127.0.0.1 (8 Jun 2002 00:30:29 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Sat, 8 Jun 2002 00:30:29 +0000 (UTC) Cc: offby1@blarg.net Return-path: Original-Received: from fencepost.gnu.org ([199.232.76.164]) by main.gmane.org with esmtp (Exim 3.33 #1 (Debian)) id 17GU7g-00082o-00 for ; Sat, 08 Jun 2002 02:30:28 +0200 Original-Received: from localhost ([127.0.0.1] helo=fencepost.gnu.org) by fencepost.gnu.org with esmtp (Exim 3.34 #1 (Debian)) id 17GU7P-0005CD-00; Fri, 07 Jun 2002 20:30:11 -0400 Original-Received: from host58.votehere.net ([66.150.6.58] helo=congress.vhcorp.com) by fencepost.gnu.org with esmtp (Exim 3.34 #1 (Debian)) id 17GU6v-000585-00; Fri, 07 Jun 2002 20:29:41 -0400 Original-Received: by congress.vhcorp.com with Internet Mail Service (5.5.2653.19) id ; Fri, 7 Jun 2002 17:29:38 -0700 Original-Received: from slop (slop.vhcorp.com [10.10.10.199]) by congress.vhcorp.com with SMTP (Microsoft Exchange Internet Mail Service Version 5.5.2653.13) id LDX2YYCS; Fri, 7 Jun 2002 17:29:35 -0700 Original-Received: from erich by slop with local (Exim 3.35 #1 (Debian)) id 17GU6o-0002AW-00; Fri, 07 Jun 2002 17:29:34 -0700 Original-To: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Original-Lines: 131 Errors-To: bug-gnu-emacs-admin@gnu.org X-BeenThere: bug-gnu-emacs@gnu.org X-Mailman-Version: 2.0.9 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Bug reports for GNU Emacs, the Swiss army knife of text editors List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.emacs.bugs:1867 X-Report-Spam: http://spam.gmane.org/gmane.emacs.bugs:1867 I'm not sure this is a bug, but it's surprising behavior. With the following four-line program in a C++ buffer, with point before the `y' ==================== ya () { // yow } ==================== If I hit M-; the comment scoots over so that the `y' is at column 35. If I then hit TAB, it scoots back so that the `y' is at column 5 (which is where it is above). Perhaps there's a good reason for this, but it took me by surprise. I guess I'd expect M-; to leave the comment where it is. In fact, the node "Comment Commands" in the Emacs manual says In C code, a comment preceded on its line by nothing but whitespace is indented like a line of code. To me, that means that M-; should indeed leave the comment alone, instead of scooting it over to column 35. 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 2 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 '(alignleft) 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 'c-do-auto-fill comment-multi-line t comment-start-skip "/\\*+ *\\|//+ *" fill-prefix nil paragraph-start "[ ]*\\(//+\\|\\**\\)[ ]*$\\|^\f" adaptive-fill-mode t adaptive-fill-regexp "[ ]*\\(//+\\|\\**\\)[ ]*\\([ ]*\\([-|#;>*]+[ ]*\\|(?[0-9]+[.)][ ]*\\)*\\)" )