From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rick Frankel Subject: BUG: Cached named call lines Date: Fri, 13 Mar 2015 15:55:44 -0400 Message-ID: <20150313195544.GA47411@eyeBook.home> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:48850) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YWVgU-0000Jl-V3 for emacs-orgmode@gnu.org; Fri, 13 Mar 2015 15:55:51 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YWVgQ-0006Jr-KN for emacs-orgmode@gnu.org; Fri, 13 Mar 2015 15:55:50 -0400 Received: from mail.rickster.com ([204.62.15.78]:50907) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YWVgQ-0006Ji-Gp for emacs-orgmode@gnu.org; Fri, 13 Mar 2015 15:55:46 -0400 Received: from eyeBook.localdomain (pool-74-101-172-246.nycmny.fios.verizon.net [74.101.172.246]) by mail.rickster.com (Postfix) with ESMTPS id 992F520AD4 for ; Fri, 13 Mar 2015 15:55:45 -0400 (EDT) Content-Disposition: inline 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: emacs-orgmode@gnu.org There are bugs with calling named call lines and blocks when they are cached. If the callee is cached, the results vary when the caller is re-evaluated. The following file demonstrates the bug(s). Unfortunately I don't have time right now to debug... #+BEGIN_SRC org ,* Cached results bug ,** Tests ,*** Fails with error: mapconcat: Wrong type argument: listp, "string=\"foo bar\"" ,#+call: bad-src(string="foo bar") ,*** Fails with =nil= second time evaluated ,#+call: word(data=cached(string="bar fly")) ,*** Returns different results on second call (quotes words) ,#+call: word(data=cached-unwrapped(string="bar fly")) ,*** Works ,#+call: word(data=src(string="bar fly")) ,#+call: word(data=uncached(string="bar fly")) ,** Intermediate calls ,#+name: cached ,#+call: src(string="foo bar") :cache yes :results wrap ,#+name: uncached ,#+call: src(string="foo bar") :results wrap ,#+name: cached-unwrapped ,#+call: src(string="foo bar") :cache yes ,** Blocks ,#+name: bad-src ,#+BEGIN_SRC emacs-lisp :var string="" :cache yes string ,#+END_SRC This block works when called ,#+name: src ,#+BEGIN_SRC emacs-lisp :var string="" string ,#+END_SRC ,#+name: word ,#+BEGIN_SRC emacs-lisp :var data="" (split-string data) #+END_SRC #+END_SRC