From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nick Dokos Subject: Re: Problems with (defvar foo) and Emacs 23 Date: Sun, 01 Apr 2012 20:53:56 -0400 Message-ID: <15968.1333328036@alphaville> References: <87sjgngtzk.fsf@norang.ca> <87aa2vp5ri.fsf@Rainer.invalid> <87aa2vw5mq.fsf@gnu.org> <87y5qfp2wd.fsf@Rainer.invalid> Reply-To: nicholas.dokos@hp.com Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([208.118.235.92]:60745) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SEVX4-0003P1-Gx for emacs-orgmode@gnu.org; Sun, 01 Apr 2012 20:54:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SEVX2-0002Hy-KG for emacs-orgmode@gnu.org; Sun, 01 Apr 2012 20:54:06 -0400 In-Reply-To: Message from Achim Gratz of "Sun\, 01 Apr 2012 23\:18\:10 +0200." <87y5qfp2wd.fsf@Rainer.invalid> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Bastien Cc: Achim Gratz , nicholas.dokos@hp.com, emacs-orgmode@gnu.org Achim Gratz wrote: > Bastien writes: > > Well -- I'll be pretty busy next week, so hopefully we can fix this > > soon... any help welcome! :) >=20 > Ditto, but you do realize this will be horribly broken in Emacs 24? >=20 > Anyway, for that single dynamic "state" variable: it is let-bound in > org.el/org-todo and then dynamically scoped in many, many places: >=20 > contrib/lisp/{org-{checklist,choose},org2rem}.el >=20 > /lisp/{org-{agenda,clock,icalendar,mouse,taskjuggler},org}.el >=20 > So the correct prefixed name should probably be org-todo-state (there > are other such "state"s in other places, don't know yet if they are also > dynamically scoped into other functions). You need to also keep track > of which functions use "state" as a formal parameter name, since these > shadow the dynamic variable from the outside, but provide another > "state" for calls on the inside=E2=80=A6 >=20 > Haven't yet checked any of the other definitions that had their name > changed, gotta fetch some sleep before work. >=20 >=20 I assume that we are talking about the seven commits $ git log --oneline -100 | grep 'Fix global' 6cbf1f4 Fix global dynamic variables in org-agenda.el and org.el. b689cbf Fix global dynamic variables in org-table.el. 9054ba3 Fix global dynamic variables in org-special-blocks.el. b46fa17 Fix global dynamic variables in org-clock.el. 08d9b46 Fix global dynamic variables prefixes in org-bibtex.el. c24fa19 Fix global dynamic variables prefixes in org-mouse.el. fcf13e0 Fix global dynamic variables prefixes in org-beamer.el. I tried reverting these in a branch: I had to merge lisp/org.el by hand while reverting the first one, but the rest went through without any problems. Does that seem like the right thing to do for now then? Nick