Hi, I've recently switched from Org 7.4 to the master branch on the git
repository, and I've encountered this weird situation.
#+name: foo
#+begin_src emacs-lisp
(defun foo ()
42)
(foo)
#+end_src emacs-lisp
If I evaluate this block I get:
#+name: foo
=42
=emacs-lisp
Though it works as expected if I remove the name:
#+begin_src emacs-lisp
(defun foo ()
42)
(foo)
#+end_src emacs-lisp
=>
#+begin_src emacs-lisp
(defun foo ()
42)
(foo)
#+end_src emacs-lisp
#+RESULTS:
: 42
I've tried to figure out what was the problem and it lies in the regexp
org-babel-src-name-w-name-regexp.
So far I've found those workarounds:
No spaces after the ':'
#+name:foo
#+begin_src emacs-lisp
(defun foo ()
42)
(foo)
#+end_src emacs-lisp
=>
#+name:foo
#+begin_src emacs-lisp
(defun foo ()
42)
(foo)
#+end_src emacs-lisp
#+RESULTS: foo
: 42
Add parentheses after the name.
#+name: foo()
#+begin_src emacs-lisp
(defun foo ()
42)
(foo)
#+end_src emacs-lisp
=>
#+name: foo()
#+begin_src emacs-lisp
(defun foo ()
42)
(foo)
#+end_src emacs-lisp
#+RESULTS: foo
: 42
No spaces before the src block
#+name: foo
#+begin_src emacs-lisp
(defun foo ()
42)
(foo)
#+end_src emacs-lisp
=>
#+name: foo
#+begin_src emacs-lisp
(defun foo ()
42)
(foo)
#+end_src emacs-lisp
#+RESULTS: foo
: 42