From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Eric M. Ludlam" Newsgroups: gmane.emacs.devel Subject: Re: EIEIO with lexical scoping Date: Mon, 13 May 2013 21:57:32 -0400 Message-ID: <51919A0C.7080307@siege-engine.com> References: <51917EA1.50403@siege-engine.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1368496665 32037 80.91.229.3 (14 May 2013 01:57:45 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 14 May 2013 01:57:45 +0000 (UTC) Cc: "Eric M. Ludlam" , emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue May 14 03:57:43 2013 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 1Uc4Uo-0002qt-9u for ged-emacs-devel@m.gmane.org; Tue, 14 May 2013 03:57:42 +0200 Original-Received: from localhost ([::1]:43914 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Uc4Uo-0003rG-0e for ged-emacs-devel@m.gmane.org; Mon, 13 May 2013 21:57:42 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:53516) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Uc4Uj-0003qz-Vq for emacs-devel@gnu.org; Mon, 13 May 2013 21:57:38 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Uc4Uj-000360-4b for emacs-devel@gnu.org; Mon, 13 May 2013 21:57:37 -0400 Original-Received: from mail-vc0-f171.google.com ([209.85.220.171]:40366) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Uc4Uh-00035e-Qw; Mon, 13 May 2013 21:57:35 -0400 Original-Received: by mail-vc0-f171.google.com with SMTP id m16so5947030vca.16 for ; Mon, 13 May 2013 18:57:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:sender:message-id:date:from:user-agent:mime-version:to :cc:subject:references:in-reply-to:content-type :content-transfer-encoding; bh=m4hSvXIz0WfHQgxFIHqExSHhpqtMlpWLLAUGUCQqQoo=; b=vrcc3S9TtjxZETvVMAlA2UE0ZXdvOQJpksSuK6Mbn6yeZ54FNHZ4LS0dBlIEabl6HT oqD2u+pHziBTtoHJVcPzRlaKv5wRvs02qEx5CTGVQV3wJ2PI/zhLKsGsV09s9Ya80lbp Fy0geMmxHUvu/whP0a3izekqATaB/jvUxD2PYZ65W4ARB/oaMy289tEvjUm582CoNlsH udK89URDDGtMtJcd2tbTNN5kEJN+CGAgXe2nsqBNbfem/beJ9SuBfqyGgSgbvGP3qzpD /Ct8bRQv7EIJ8j6mIWlueq4FsK/w953qdT7Wi3pE0ifWc2du1b+eLcswCElbaU9Z4wwn XbWg== X-Received: by 10.220.66.212 with SMTP id o20mr20233120vci.2.1368496655275; Mon, 13 May 2013 18:57:35 -0700 (PDT) Original-Received: from [192.168.1.201] (pool-72-74-140-235.bstnma.fios.verizon.net. [72.74.140.235]) by mx.google.com with ESMTPSA id tn7sm15438134vdc.8.2013.05.13.18.57.33 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 13 May 2013 18:57:34 -0700 (PDT) User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.3a1pre) Gecko/20091222 Shredder/3.1a1pre In-Reply-To: <51917EA1.50403@siege-engine.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.85.220.171 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:159557 Archived-At: To follow up with my previous reply... I tried out compiling eieio.el, and eieio-core.el with lexical binding. I then went in and removed 'scoped-class' and replaced it with some code that avoids the dynamic binding. I got all this passing my test suite, and checked it into CEDET's repository. I did not test it with lexical-binding set during compilation. I just tried to get it closer to what you probably need. I hope that helps. Eric On 05/13/2013 08:00 PM, Eric M. Ludlam wrote: > On 05/13/2013 05:25 PM, Stefan Monnier wrote: >> I'm trying to compile eieio.el using lexical-binding but am bumping into >> a problem that requires too much internal knowledge of eieio for me. >> >> I'm using the patch appended below for now, which seems to work to some >> extent, but when I then try to compile CEDET using it, I get the >> following backtrace: >> >> Can you help me figure out what's going on? >> > > Sure, I'll be glad to help, though I don't know much about the lexical > binding feature. > > I do know someone posted on the cedet-devel mailing list saying that > EIEIO's use of 'scoped-class' broke lexical-binding. I'd been thinking > about converting to use a stack instead of locally rebinding the value > but hadn't gotten that far.