From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: =?utf-8?Q?=C3=93scar_Fuentes?= Newsgroups: gmane.emacs.devel Subject: Re: clang/emacs/ecb/semantic Date: Fri, 30 Nov 2012 22:02:09 +0100 Message-ID: <87vccmztwu.fsf@wanadoo.es> References: <20940A983D814C6192ABFF2B7A269A88@gmail.com> <87wqx42nag.fsf@yandex.ru> <87ehjcrw70.fsf@engster.org> <87hao816w4.fsf@wanadoo.es> <87hao7ioos.fsf@kuiper.lan.informatimago.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1354309352 10389 80.91.229.3 (30 Nov 2012 21:02:32 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 30 Nov 2012 21:02:32 +0000 (UTC) Cc: "Pascal J. Bourguignon" , emacs-devel@gnu.org To: Richard Stallman Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Nov 30 22:02:44 2012 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 1TeXjJ-0002SR-GD for ged-emacs-devel@m.gmane.org; Fri, 30 Nov 2012 22:02:37 +0100 Original-Received: from localhost ([::1]:43684 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TeXj7-00069C-VO for ged-emacs-devel@m.gmane.org; Fri, 30 Nov 2012 16:02:25 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:46706) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TeXiz-00068v-Jt for emacs-devel@gnu.org; Fri, 30 Nov 2012 16:02:23 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TeXiy-0005Zj-2r for emacs-devel@gnu.org; Fri, 30 Nov 2012 16:02:17 -0500 Original-Received: from impaqm2.telefonica.net ([213.4.138.18]:13261 helo=telefonica.net) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TeXix-0005ZB-Or for emacs-devel@gnu.org; Fri, 30 Nov 2012 16:02:15 -0500 Original-Received: from IMPmailhost2.adm.correo ([10.20.102.39]) by IMPaqm2.telefonica.net with bizsmtp id Vww41k00n0r0BT63Nx2C4g; Fri, 30 Nov 2012 22:02:12 +0100 Original-Received: from qcore ([88.13.104.20]) by IMPmailhost2.adm.correo with BIZ IMP id Vx2A1k0090SR0y01ix2Ayq; Fri, 30 Nov 2012 22:02:12 +0100 X-Brightmail-Tracker: AAAAAA== X-original-sender: 981711563@telefonica.net In-Reply-To: (Richard Stallman's message of "Fri, 30 Nov 2012 15:11:04 -0500") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 213.4.138.18 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:155154 Archived-At: Richard Stallman writes: > Something that should have been merged into gcc a long time ago. > > It generates the parse tree as xml. http://www.gccxml.org/ > > Do you mean, the entire parse tree in full detail? > Would it be conceivable to feed this into a nonfree back-end? > Would this mean that nonfree backends could take advantage > of our free front-ends? No. The output does not contain the actual body of functions, for instance. It is useful for knowing "what's the type of this global variable?", "where is this type defined?", "how many arguments has this function? what's their types?", "what's the data members of this struct?", "what's the methods of this class?" etc It is enough for automatically generating function and type wrappers for using C/C++ code from other languages through their FFIs, but absolutely insufficient for compiling such C/C++ code. > If so, it is very dangerous -- it would open the door to a terrible > setback for our defense of users' freedom. Namely, the use of free > software as part of compilers that are partly nonfree. I don't > remember, but I would guess that is why we have refused to merge it > into GCC. > > Llvm and clang provide natively a way to get the parse tree (and other > phases information), and therefore they can be used easily in IDE. > > LLVM and Clang open the door to the same terrible setback. Since they > are not copylefted, their front-ends can be used with nonfree > back-ends and vice versa. Yes. > They are being developed by people who don't care about users' > freedom, funded by the worst enemy of users' freedom (Apple). Apple is, possibly, the main founder, but there are several other parties involved (Google and FreeBSD, for instance) and all those are very interested on keeping the status quo. If Apple tried to hinder the other actors on any way, the project would fork in no time. And, the project lider is all for keeping LLVM & Clang as they are, no matter he is an Apple employee.