branch: elpa/llama
commit 9db5761afa82ddefd7a28f11d3ab9ee16c0d5d97
Author: Jonas Bernoulli <jo...@bernoul.li>
Commit: Jonas Bernoulli <jo...@bernoul.li>

    Drop support for the legacy %* argument
---
 README.md |  2 --
 llama.el  | 12 +++---------
 2 files changed, 3 insertions(+), 11 deletions(-)

diff --git a/README.md b/README.md
index 8e7b2cdebe..e86bc0c7dd 100644
--- a/README.md
+++ b/README.md
@@ -21,8 +21,6 @@ their names have to begin with `&`.  Symbol `&*` specifies 
extra
 Instead of `%1`, the shorthand `%` can be used; but that should
 only be done if it is the only argument, and using both `%1` and
 `%` is not allowed.  Likewise `&` can be substituted for `&1`.
-Finally, for backward compatibility, `%*` can be used in place
-of `&*`, but only if there are no optional arguments.
 
 Instead of:
 
diff --git a/llama.el b/llama.el
index e56ba69c72..94babbfde3 100644
--- a/llama.el
+++ b/llama.el
@@ -48,8 +48,6 @@
 ;; Instead of `%1', the shorthand `%' can be used; but that should
 ;; only be done if it is the only argument, and using both `%1' and
 ;; `%' is not allowed.  Likewise `&' can be substituted for `&1'.
-;; Finally, for backward compatibility, `%*' can be used in place
-;; of `&*', but only if there are no optional arguments.
 
 ;; Instead of:
 ;;
@@ -91,8 +89,6 @@ their names have to begin with `&'.  Symbol `&*' specifies 
extra
 Instead of `%1', the shorthand `%' can be used; but that should
 only be done if it is the only argument, and using both `%1' and
 `%' is not allowed.  Likewise `&' can be substituted for `&1'.
-Finally, for backward compatibility, `%*' can be used in place
-of `&*', but only if there are no optional arguments.
 
 Instead of:
 
@@ -129,11 +125,9 @@ It also looks a bit like #\\='function."
                  ((not symbol)
                   (list (intern (format "_%s%s" (if optional "&" "%") pos))))
                  ((eq (aref (symbol-name symbol) 0) ?%)
-                  (cond (optional
-                         (error "%s cannot follow optional argument" symbol))
-                        ((eq symbol '%*)
-                         (list '&rest symbol))
-                        ((list symbol))))
+                  (when optional
+                    (error "`%s' cannot follow optional arguments" symbol))
+                  (list symbol))
                  ((eq symbol '&*)
                   (list '&rest symbol))
                  (optional

Reply via email to