Subject: bug#73853: 31.0.50; Should and-let* become a synonym for when-let*?

From: Stefan Kangas <[email-masked]>
Date: Sat, 23 Nov 2024 11:14:43 -0500

Sean Whitton <[email-masked]> writes:

> On Fri 22 Nov 2024 at 02:46pm -05, Stefan Monnier via "Bug reports for GNU Emacs, the Swiss army knife of text editors" wrote:
>
>> Beside the use of `make-obsolete` instead of putting the `obsolete`
>> inside `declare`,
>
> I didn't know about this distinction.  Can you let me know why it would
> be better to use a declaration?

AFAIK, while they are technically the same, using a declaration is
cleaner.  We prefer it for that reason.

>> I see a more serious problem with this patch.  E.g.
>>
>>     (defun my-foo () (when-let ((x (point))) (goto-char x)))
>>
>> gives 2 warnings rather than one:
>
> I think this is just inherent to the fact that these macros depend on
> each other, though it would be nice to fix if we can.

I think `with-suppressed-warnings` should work here.