From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "grischka" Newsgroups: gmane.emacs.help Subject: Re: removing compile directive Date: Fri, 25 Apr 2008 18:32:11 +0200 Message-ID: <040901c8a6f2$1a209ae0$5e45fe91@j4f3n1> References: <00c701c8a4c8$d96134e0$a01a90d4@j4f3n1> <002c01c8a56b$da5ed1b0$2708a8c0@CAM.ARTIMI.COM> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1209141247 25345 80.91.229.12 (25 Apr 2008 16:34:07 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 25 Apr 2008 16:34:07 +0000 (UTC) Cc: help-gnu-emacs@gnu.org To: "Dave Korn" Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Fri Apr 25 18:34:42 2008 connect(): Connection refused Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1JpQsc-0004SD-O2 for geh-help-gnu-emacs@m.gmane.org; Fri, 25 Apr 2008 18:34:35 +0200 Original-Received: from localhost ([127.0.0.1]:55575 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JpQrw-0002gK-LU for geh-help-gnu-emacs@m.gmane.org; Fri, 25 Apr 2008 12:33:52 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JpQra-0002fb-3H for help-gnu-emacs@gnu.org; Fri, 25 Apr 2008 12:33:30 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JpQrY-0002eg-Gg for help-gnu-emacs@gnu.org; Fri, 25 Apr 2008 12:33:29 -0400 Original-Received: from [199.232.76.173] (port=56109 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JpQrY-0002eY-CX for help-gnu-emacs@gnu.org; Fri, 25 Apr 2008 12:33:28 -0400 Original-Received: from mail.gmx.net ([213.165.64.20]) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1JpQrX-0005DY-TY for help-gnu-emacs@gnu.org; Fri, 25 Apr 2008 12:33:28 -0400 Original-Received: (qmail invoked by alias); 25 Apr 2008 16:33:25 -0000 Original-Received: from dialin-212-144-027-101.pools.arcor-ip.net (EHLO j4f3n1) [212.144.27.101] by mail.gmx.net (mp052) with SMTP; 25 Apr 2008 18:33:25 +0200 X-Authenticated: #18588216 X-Provags-ID: V01U2FsdGVkX1+FBOsceB2FLEm4V4iNhAPmENipyQ4g/ZMqxZmtyK zpwcnJ9TsaqLdE X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Y-GMX-Trusted: 0 X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:53544 Archived-At: From: "Dave Korn": > >> On Mon, 2008-04-21 at 10:43 -0700, Brian Dessent wrote: > >>> CFLAGS = $(filter-out -D_REMOVE_THIS_,$(CFLAGS)) > >> > >> You can't do this: recursive variables cannot reference themselves. > > > > I'm actually curious whether this is considered as a feature or a > > limitation, or maybe just tradition with GNU make? > > It's a limitation in the nature of the universe: the universe is finite, and > therefore the entropic limits on computability that follow from its finite > nature mean we can never run an infinite loop to recursion. > > > I mean, basically it is very clear what the writer of above line > > has in mind, so the program could as well support it. > > I assume the "very clear" intention that you perceive the writer to have had > in mind is this: > > CFLAGS := $(filter-out -D_REMOVE_THIS_,$(CFLAGS)) > > i.e. a non-recursive operation; and that you are suggesting that make could > overlook the fact that what they actually wrote was an operation that recurses > infinitely because it has no termination condition. What I mean is that it is not obvious that it has no termination condition, anyway less obvious than that it could have one. Just as you could see 'CFLAGS += -Dxxx' also as an impossibility with no termination condition, but it is more useful if you don't. Similar in the general case the more obvious model incidentally also seems to be the more useful one, because (if supported) it allows you to emulate 'CFLAGS -= -Dxxx' by other facitilities that GNU make already has, quite easily. Btw, could be I saw '-=' in jam (or maybe some other make program). --- grischka