Subject: bug#78629: 30.1; Functions described in manual are not available

From: Eli Zaretskii <[email-masked]>
Date: Thu, 29 May 2025 18:50:05 +0300

> From: Thierry Volpiatto <[email-masked]>
> Date: Thu, 29 May 2025 15:27:26 +0000
> 
> 
> Hello, In (info "(elisp) Predicates on Numbers")
> 
>  -- Function: plusp number
>      This predicate tests whether its argument is positive, and returns
>      ‘t’ if so, ‘nil’ otherwise.  The argument must be a number.
> 
>  -- Function: minusp number
>      This predicate tests whether its argument is negative, and returns
>      ‘t’ if so, ‘nil’ otherwise.  The argument must be a number.
> 
>  -- Function: oddp integer
>      This predicate tests whether its argument is an odd number, and
>      returns ‘t’ if so, ‘nil’ otherwise.  The argument must be an
>      integer.
> 
>  -- Function: evenp integer
>      This predicate tests whether its argument is an even number, and
>      returns ‘t’ if so, ‘nil’ otherwise.  The argument must be an
>      integer.
> 
> All these functions are available in cl-lib with "cl-" prefix (not a
> scoop, it's always been the case), but not without:
> 
> M-: (evenp 2)
> eval: Symbol's function definition is void: evenp

You are reading the ELisp manual for Emacs 31, but trying these
functions in Emacs 30:

> In GNU Emacs 30.1 (build 5, x86_64-pc-linux-gnu, X toolkit, cairo
>  version 1.16.0, Xaw3d scroll bars) of 2025-02-24 built on IPad-S340
> Windowing system distributor 'The X.Org Foundation', version 11.0.12101004
> System Description: Linux Mint 21.3

Emacs 31 adds several functions documented in that node, including
evenp.  They are no longer in cl-lib, but in subr.el.

I see no bug here.