emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Vladimir Lomov <lomov.vl@gmail.com>
To: General discussions about Org-mode <emacs-orgmode@gnu.org>
Subject: Re: [BUG?] Compilation failure with Emacs 24.3.50.1 (trunk) on 'ox-publish' (Multiple args to , are not supported)
Date: Fri, 11 Oct 2013 16:25:38 +0900	[thread overview]
Message-ID: <20131011072538.GD943@smoon> (raw)
In-Reply-To: <20131010071527.GA943@smoon>

Hello,
** Vladimir Lomov [2013-10-10 16:15:27 +0900]:

> Hello,
> topic title states my problem completely, some details:
> - I use emacs compiled from bzr trunk (revno 114606) on my system:
>   Archlinux x86_64 with gcc 4.8.1 and make 4.0;
> - org-mode: 8.2.1-86-gbe3dad.

> This is excert from make log:
> #+BEGIN_EXAMPLE
> ...
> Compiling
> /home/vladimir/buildpkg/emacs-org-mode/src/org-mode/lisp/ox-publish.el...

> In toplevel form:
> ox-publish.el:887:1:Error: Multiple args to , are not supported: (\, (\`
> (when (quote (\, force)) (org-publish-remove-all-timestamps))) (\` (let
> ((org-publish-use-timestamps-flag (if (quote (\, force)) nil (\,
> org-publish-use-timestamps-flag)))) (org-publish-projects (quote (\,
> org-publish-project-alist))))))
> ...
> #+END_EXAMPLE

I have found the reason of such behaviour: commit 114570 of Emacs
repository introduced this, below diff between 114569 and 114570:
---------------------- 8< ----------------------
=== modified file 'lisp/ChangeLog'
--- lisp/ChangeLog	2013-10-08 03:48:01 +0000
+++ lisp/ChangeLog	2013-10-08 04:30:31 +0000
@@ -1,5 +1,8 @@
 2013-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
 
+	* emacs-lisp/backquote.el (backquote-process): Catch uses of , and ,@
+	with more than one argument (bug#15538).
+
 	* mpc.el (mpc-songs-jump-to): Adjust to different playlist format.
 
 	* vc/pcvs.el: Use lexical-binding.

=== modified file 'lisp/emacs-lisp/backquote.el'
--- lisp/emacs-lisp/backquote.el	2013-01-01 09:11:05 +0000
+++ lisp/emacs-lisp/backquote.el	2013-10-08 04:30:31 +0000
@@ -153,11 +153,18 @@
 	      (list 'quote s))))
    ((eq (car s) backquote-unquote-symbol)
     (if (<= level 0)
-        (cons 1 (nth 1 s))
+        (if (> (length s) 2)
+            ;; We could support it with: (cons 2 `(list . ,(cdr s)))
+            ;; But let's not encourage such uses.
+            (error "Multiple args to , are not supported: %S" s)
+          (cons 1 (nth 1 s)))
       (backquote-delay-process s (1- level))))
    ((eq (car s) backquote-splice-symbol)
     (if (<= level 0)
-        (cons 2 (nth 1 s))
+        (if (> (length s) 2)
+            ;; (cons 2 `(append . ,(cdr s)))
+            (error "Multiple args to ,@ are not supported: %S" s)
+          (cons 2 (nth 1 s)))
       (backquote-delay-process s (1- level))))
    ((eq (car s) backquote-backquote-symbol)
       (backquote-delay-process s (1+ level)))

---------------------- 8< ----------------------


So, I don't know whom to blame for this behaviour.

P.S. I also noted other strange thing in function 'org-publish-all':
there two almost identical lines in that function:
---------------------- 8< ----------------------
  (when force (org-publish-remove-all-timestamps))
---------------------- 8< ----------------------
but first is run with backquote. Earlier I found out that commenting
line with backquote solves the problem.

---
WBR, Vladimir Lomov

-- 
<taniwha> i'd solve a windows key problem with fdisk :)

  reply	other threads:[~2013-10-11  7:25 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-10  7:15 [BUG?] Compilation failure with Emacs 24.3.50.1 (trunk) on 'ox-publish' (Multiple args to , are not supported) Vladimir Lomov
2013-10-11  7:25 ` Vladimir Lomov [this message]
2013-10-13 16:52 ` Nicolas Goaziou

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20131011072538.GD943@smoon \
    --to=lomov.vl@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).