GNU bug report logs - #66554
[PATCH] Add the public API of Compat to the core

Previous Next

Package: emacs;

Reported by: Philip Kaludercic <philipk <at> posteo.net>

Date: Sun, 15 Oct 2023 09:37:01 UTC

Severity: wishlist

Tags: patch

Done: Philip Kaludercic <philipk <at> posteo.net>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Eli Zaretskii <eliz <at> gnu.org>
To: Philip Kaludercic <philipk <at> posteo.net>
Cc: mail <at> daniel-mendler.de, stefankangas <at> gmail.com, monnier <at> iro.umontreal.ca, 66554 <at> debbugs.gnu.org
Subject: bug#66554: [PATCH] Add the public API of Compat to the core
Date: Tue, 06 Feb 2024 21:37:01 +0200
> From: Philip Kaludercic <philipk <at> posteo.net>
> Cc: mail <at> daniel-mendler.de,  66554 <at> debbugs.gnu.org,  stefankangas <at> gmail.com,
>   monnier <at> iro.umontreal.ca
> Date: Tue, 06 Feb 2024 19:10:32 +0000
> 
> >> +@defmac compat-call fun &rest args
> >> +This macro calls the compatibility function @var{fun} with @var{args}.
> >> +Many functions provided by Compat can be called directly without this
> >> +macro.  However in the case where Compat provides an alternative
> >> +version of an existing function, the function call has to go through
> >> +@code{compat-call}.
> >> +@end defmac
> >
> > This description left me without understanding when I need to use
> > compat-call and when I can just call FUN.  Can you explain more?
> 
> The intention was for this paragraph to catch that case,
> 
>   However in the case where Compat provides an alternative version of an
>   existing function, the function call has to go through
>   @code{compat-call}.
> 
> though the real information is to be found in the Compat manual, where
> the functions that have to be called via compat-call are documented.
> 
> Should the above sentence be rephrased to give a general feeling for
> when this is the case
> 
>   However in the case where Compat provides an alternative version of an
>   existing function, the function call has to go through
>   @code{compat-call}.  This is the case when, for example the signature
>   changes between versions, preventing older versions of Emacs from
>   using optional arguments introduced in newer releases.
> 
> or should we just refer to the external manual?

Let me try to make my point more clear: I'd prefer that the reader
emerges from reading this description with a practical way of knowing
when to call the function directly and when to call it via
'compat-call'.  If that's not easy to understand, perhaps we should
tell that 'compat-call' should always be used, to avoid some rare
corner cases where a direct call will not do, and be done?




This bug report was last modified 1 year and 160 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.