[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#25280: 25.1; define-inline doesn't support &rest

From: Leo Liu
Subject: bug#25280: 25.1; define-inline doesn't support &rest
Date: Thu, 29 Dec 2016 10:00:11 +0800
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (macOS 10.12.2)

On 2016-12-27 12:42 -0500, Stefan Monnier wrote:
> OTOH it's not as efficient as we'd like.  The better way to write it is:
>     (define-inline sm-foo (&rest xs)
>       (inline-letevals xs (inline-quote (vector . ,xs))))

I misunderstood no support for `,@' implied `. ,'. Good to know it is
not the case. My experiment seems to suggest that inline-letevals is
only needed for variables that are eval'd more than once. Is that
understanding correct?

I also get compiler warning: 

In rest:
t2.el:4:38:Warning: reference to free variable ‘vector’

where t2.el has the contents:

;;; -*- lexical-binding: t -*-

(define-inline rest (&rest xs)
  (inline-letevals xs (inline-quote (vector . ,xs))))


reply via email to

[Prev in Thread] Current Thread [Next in Thread]