From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Ingo Lohmar Newsgroups: gmane.emacs.bugs Subject: bug#23053: 25.0.92; error in cc-mode when editing C# file with a generic class inheritance Date: Sat, 19 Mar 2016 11:05:41 +0100 Message-ID: <87twk2bx56.fsf@acer.localhost.com> References: <1458336813.1207699.553441090.44208CA4@webmail.messagingengine.com> <87wpozbd0r.fsf@acer.localhost.com> <1458372574.1341144.553674538.3D65409A@webmail.messagingengine.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1458381983 14433 80.91.229.3 (19 Mar 2016 10:06:23 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 19 Mar 2016 10:06:23 +0000 (UTC) To: Jostein =?UTF-8?Q?Kj=C3=B8nigsen?= , jostein@kjonigsen.net, 23053@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sat Mar 19 11:06:12 2016 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1ahDls-0000aT-0x for geb-bug-gnu-emacs@m.gmane.org; Sat, 19 Mar 2016 11:06:12 +0100 Original-Received: from localhost ([::1]:48121 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ahDlr-0002Yk-9h for geb-bug-gnu-emacs@m.gmane.org; Sat, 19 Mar 2016 06:06:11 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:58428) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ahDln-0002Xt-17 for bug-gnu-emacs@gnu.org; Sat, 19 Mar 2016 06:06:08 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ahDll-0000vy-PQ for bug-gnu-emacs@gnu.org; Sat, 19 Mar 2016 06:06:06 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:56060) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ahDlh-0000vR-TQ; Sat, 19 Mar 2016 06:06:01 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1ahDlh-0005BD-JG; Sat, 19 Mar 2016 06:06:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Ingo Lohmar Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bug-cc-mode@gnu.org Resent-Date: Sat, 19 Mar 2016 10:06:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 23053 X-GNU-PR-Package: emacs,cc-mode X-GNU-PR-Keywords: Original-Received: via spool by 23053-submit@debbugs.gnu.org id=B23053.145838195119896 (code B ref 23053); Sat, 19 Mar 2016 10:06:01 +0000 Original-Received: (at 23053) by debbugs.gnu.org; 19 Mar 2016 10:05:51 +0000 Original-Received: from localhost ([127.0.0.1]:53187 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ahDlX-0005Ap-Jy for submit@debbugs.gnu.org; Sat, 19 Mar 2016 06:05:51 -0400 Original-Received: from mail-wm0-f51.google.com ([74.125.82.51]:35923) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ahDlV-0005Ac-I9 for 23053@debbugs.gnu.org; Sat, 19 Mar 2016 06:05:49 -0400 Original-Received: by mail-wm0-f51.google.com with SMTP id l124so55540166wmf.1 for <23053@debbugs.gnu.org>; Sat, 19 Mar 2016 03:05:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:subject:in-reply-to:references:user-agent:date:message-id :mime-version:content-transfer-encoding; bh=c7Cy7daKcbrm20pZlR0B28GECmXuYIgrGd+Y/bEQEJQ=; b=gDwpc0IGAcK4XxWircnfjL0pqctWpW7tMhDcM4lOQljreYX1T08QIobyJe5cUK7Yr5 ukcY+ZWFjShD2rDYxrRKzpr5QcpnNeL3R5FlVO6QAhC3K647xOLtlTfTy9AxdnMvKqXX 3jMq+fHfoFwu15aL5q8hayl+eYcGYisUtHhuT0l8eMn+S+JZiikK9JIKM1qhYqvA/9sR 2P1hiTnJAILu2kMmr0e092dN5sfs0OUkRvJa5OR66RyFPdb7C/4DEUStZdO/7vw9AX4N 1/5+CmNFwmtZm9YHzxA4dd7euT3bRJYIECGCCGE80aYt/2uzjl7VPoqshZjeM8njHYQl 8yiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:subject:in-reply-to:references :user-agent:date:message-id:mime-version:content-transfer-encoding; bh=c7Cy7daKcbrm20pZlR0B28GECmXuYIgrGd+Y/bEQEJQ=; b=KRKeYMhiP8YKZH+9meYw0CTTGhMq8afp+iQRBidt44zWRp00ruZEcXvXmYLbQfyPcL flfNxOWIXAzczzcDF6dUV/SARj0CpSsNfWWOUF0KFlRqzjZInVsb3LstlGD3TIAImHqx sWtbpDrHqF6Ata4M7HGCGbjZHQBbMaRhhFJAKn1zZ7E+qKTqhQiif1lbhmcEdGh9bV7A sYcd5Ys3dUZXL6A5VxCdSKLLZ4kATeiUIjPGLDdJlBN5HsQFem/svS0t+oh7dquQZ92n iuF7+m0xHT7ELm0vYfHb4qNQOwYa2FqnpHmWG8ag5oXGTqOM22qZM5FBzoNPRT3LGXdj VIYg== X-Gm-Message-State: AD7BkJLYgjHlvPc/xx5SfYB2Ohqot3quSrCW/v2KSfBRl0a1XXTSrRYCO9sEML9SG0S0Rw== X-Received: by 10.28.1.199 with SMTP id 190mr3701879wmb.3.1458381943751; Sat, 19 Mar 2016 03:05:43 -0700 (PDT) Original-Received: from localhost (xdsl-195-14-222-245.netcologne.de. [195.14.222.245]) by smtp.gmail.com with ESMTPSA id z127sm2965419wme.5.2016.03.19.03.05.42 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 19 Mar 2016 03:05:42 -0700 (PDT) In-Reply-To: <1458372574.1341144.553674538.3D65409A@webmail.messagingengine.com> User-Agent: Notmuch/0.20.2+113~g6332e6e (http://notmuchmail.org) Emacs/25.0.90.1 (x86_64-pc-linux-gnu) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:115075 Archived-At: On Sat, Mar 19 2016 08:29 (+0100), Jostein Kj=C3=B8nigsen wrote: > Just to ensure all cards ar on the table... Hi. I'm the guy who kinda > involuntarily has been maintaining csharp-mode for a couple of years > now :) > > (self-defensive-mode t) > > Basically Dino Chiesa left csharp-mode unmaintained on Google Code, with > issues unaddressed and breaking bugs unfixed and no work invested after > 2011. > > In 2014, After Emacs 24 broke it, I forked the repo, moved it to Github > and took over ownership. Since then 42 issues have in some way been > addressed or closed, most of them fixed. > > Rather than add features which I can't complete or support, the focus > was on ensuring that the core language-mode code works, and if you want > IDE like features, you just supplement it with Omnisharp. > > Basically its in bug-fix mode, which by no means should be taken as > "unmaintained" :) Hi Jostein, Sorry, I should have done my homework first. It seems your work on the fork started a few months after I started using csharp-mode, and I did not become aware of it. My comments above apply to the version that Dino left at Google Code. >From your description, that all seems to me like the right direction to take the code. > If you've tried to do any work or improvements with csharp-mode, I would > love to see what changes you propose. It's not really "my" code, I'm > just trying to keep it in working order, and I have no qualms over > throwing big chunks out :) My own approach was more radical: I threw out everything that I thought did not belong to a bare-bones language major mode, and then tried to clean up the remaining code and get font-locking and indentation right. Besides a few special-case routines, that leaves me with mostly cc-mode variable settings. Incidentally that brings down the main file from more than 200k (Dino) to 36k (mine), compared to 163k (your latest). I will try to find some time to look into your code, but just from the numbers it seems that the differences are substantial. I should put my code into a repo anyway (been meaning to do that) and maybe something good will come from having both. But since I haven't used your version, I cannot reasonably file issues now anymore, sorry. FWIW, I was mostly annoyed by using arbitrary font-lock-faces (I think the function face was used for non-function symbols and so on), incomplete keyword settings and non-elisp formatting conventions. The performance problem came up in buffers with lots of literal strings, as the routines were very wasteful and used a lot of unnecessary regexp searching. > As for more closely aligning the goals of Omnisharp and csharp-mode, I > don't think that is such a far fetched idea. It has been proposed in the > past, but the Omnisharp-guys has (so far) preferred to have csharp-mode > be its own beast, which they supplement, rather than doing a full merge > (and thus taking on core language-mode responsibilities). Yeah, this was more of a general idea. There's an unfair gap in language-specific capabilities between special IDEs and Emacs for "big" languages like Java and C#, caused by the fact that those IDEs use parser and compiler information (or even duplicate their tasks). As has been discussed on this list before, part of the gap can be closed, but it's not clear to me how this would work best for basic things like syntax highlighting.