From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Dmitry Gutov Newsgroups: gmane.emacs.devel Subject: Re: Emacs contributions, C and Lisp Date: Mon, 24 Feb 2014 21:42:20 +0200 Message-ID: <530BA09C.70802@yandex.ru> References: <87wqgxkcr9.fsf@yandex.ru> <834n41db0d.fsf@gnu.org> <52FE2985.4070703@yandex.ru> <831tz5daes.fsf@gnu.org> <8738jlohd6.fsf@yandex.ru> <83txc1bl83.fsf@gnu.org> <5300189A.9090208@yandex.ru> <83wqgv9fbj.fsf@gnu.org> <20140216180712.236069f6@forcix.jorgenschaefer.de> <87wqgr4v18.fsf@yandex.ru> <53064BD0.7070009@yandex.ru> <87ha7tr5bo.fsf@fencepost.gnu.org> <87ppmhecd8.fsf@yandex.ru> <87mwhjdq32.fsf@fencepost.gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1393270979 30359 80.91.229.3 (24 Feb 2014 19:42:59 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 24 Feb 2014 19:42:59 +0000 (UTC) Cc: emacs-devel@gnu.org, john@yates-sheets.org To: rms@gnu.org, David Kastrup Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Feb 24 20:43:06 2014 Return-path: Envelope-to: ged-emacs-devel@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 1WI1Qd-0004HM-TX for ged-emacs-devel@m.gmane.org; Mon, 24 Feb 2014 20:43:04 +0100 Original-Received: from localhost ([::1]:59485 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WI1Qd-0007Br-HB for ged-emacs-devel@m.gmane.org; Mon, 24 Feb 2014 14:43:03 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:54893) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WI1QS-0007Ao-Ad for emacs-devel@gnu.org; Mon, 24 Feb 2014 14:43:00 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WI1QJ-0004a8-TO for emacs-devel@gnu.org; Mon, 24 Feb 2014 14:42:52 -0500 Original-Received: from mail-ea0-x233.google.com ([2a00:1450:4013:c01::233]:40079) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WI1Q1-0004O4-Ty; Mon, 24 Feb 2014 14:42:26 -0500 Original-Received: by mail-ea0-f179.google.com with SMTP id q10so3357483ead.38 for ; Mon, 24 Feb 2014 11:42:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=wgQqLZdVkrtz9ybV4YON5sNQOXHrIWuC4cVtDVygFQk=; b=LqsUn4F23QONv39jIBZ0PUYqMFqjEIoIQwsY1N0LE39MNnem7bAPX4+jSxCKz6Ltxg 3G8RonAAgY3Cs6vShbFOhJmzfkxlMVuRAOm2sRCVuc1bIguD8InzUiiWegzZnAE5ljlS AMDiZwPVwz9p+X5Y0pHEn8V4vBTlRmGh7Rm4DodvnLpt11dE8TlgpAujoQCzpEt7W8nl xelDx8KlWN7gBO99GzC0A5eVoMSpg+LRR6q3oU1MzSt+gYLMxersqTW5NtofG5VGkzQw Ybl6rc+IeOmeXAas/iTSeqVs4DMO42EZq9Xn54Rqk9pql2eAXo4jzNN74+/EQi7bEK9+ wl0w== X-Received: by 10.15.86.11 with SMTP id h11mr25691253eez.8.1393270943989; Mon, 24 Feb 2014 11:42:23 -0800 (PST) Original-Received: from [192.168.0.94] (static-nbl2-118.cytanet.com.cy. [212.31.107.118]) by mx.google.com with ESMTPSA id j41sm67385600eeg.10.2014.02.24.11.42.21 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 24 Feb 2014 11:42:23 -0800 (PST) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 In-Reply-To: X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2a00:1450:4013:c01::233 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:169847 Archived-At: On 24.02.2014 19:33, Richard Stallman wrote: > The lookup and completion features that people want can be implemented > by making GCC answer questions sent to it, as Aspell does for M-$. > That change would be welcome. I think it could be implemented using > GCC's existing plug-in mechanism, but it would be better to put > the code into GCC itself. Could it support a "daemon" mode? The current situation in Clang is, its executable only supports the simplest mode of operation: one process call per completion. This way, it has to parse all relevant files (headers, etc) each time completion is requested. But the completion information is available via libclang, and there are a few projects that build on it to spin up a persistent server, which only processes different files anew when they've changed since the last time (or at least that's the intention). These projects also support different build systems and extract the necessary dependency information, include paths, etc. I don't really see GCC itself doing that (at least, the last part). It would require quite a bit of work that might be better left to third-party developers.