GNU bug report logs - #63291
libxml-parse-{html,xml}-region help page incorrect argument lower bound

Previous Next

Package: emacs;

Reported by: Ruijie Yu <ruijie <at> netyu.xyz>

Date: Fri, 5 May 2023 06:49:02 UTC

Severity: normal

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 63291 in the body.
You can then email your comments to 63291 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#63291; Package emacs. (Fri, 05 May 2023 06:49:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Ruijie Yu <ruijie <at> netyu.xyz>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Fri, 05 May 2023 06:49:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Ruijie Yu <ruijie <at> netyu.xyz>
To: bug-gnu-emacs <at> gnu.org
Subject: libxml-parse-{html,xml}-region help page incorrect argument lower
 bound
Date: Fri, 05 May 2023 14:38:02 +0800
First of all, this is newest Emacs 30 in-source build (pulled and built
a few hours ago).

I'm reading the help page of `libxml-parse-xml-region' and noticed this:

--8<---------------cut here---------------start------------->8---
libxml-parse-xml-region is a built-in function in ‘src/xml.c’.

(libxml-parse-xml-region START END &optional BASE-URL)

Parse the region as an XML document and return the parse tree.
If START is nil, it defaults to ‘point-min’.  If END is nil, it
defaults to ‘point-max’.

...
--8<---------------cut here---------------end--------------->8---

Notice the function signature: it implies that the first two arguments
are mandatory, even though the docstring proceeds to talk about what
happens when these two arguments are nil.  Similarly for
`libxml-parse-html-region'.

However, both the C source code and experiments show that these two
functions do accept 0 arguments.

```emacs-lisp
(with-temp-buffer (insert "<html></html>")
                  (libxml-parse-html-region))
;=> (html nil)
```

I have zero knowledge of dealing with C defuns, so I'll leave fixing
this issue to someone more experienced at that.

-- 
Best,


RY

[Please note that this mail might go to spam due to some
misconfiguration in my mail server -- still investigating.]




Reply sent to Eli Zaretskii <eliz <at> gnu.org>:
You have taken responsibility. (Fri, 05 May 2023 07:14:02 GMT) Full text and rfc822 format available.

Notification sent to Ruijie Yu <ruijie <at> netyu.xyz>:
bug acknowledged by developer. (Fri, 05 May 2023 07:14:02 GMT) Full text and rfc822 format available.

Message #10 received at 63291-done <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Ruijie Yu <ruijie <at> netyu.xyz>
Cc: 63291-done <at> debbugs.gnu.org
Subject: Re: bug#63291: libxml-parse-{html,
 xml}-region help page incorrect argument lower bound
Date: Fri, 05 May 2023 10:13:51 +0300
> Date: Fri, 05 May 2023 14:38:02 +0800
> From:  Ruijie Yu via "Bug reports for GNU Emacs,
>  the Swiss army knife of text editors" <bug-gnu-emacs <at> gnu.org>
> 
> I'm reading the help page of `libxml-parse-xml-region' and noticed this:
> 
> --8<---------------cut here---------------start------------->8---
> libxml-parse-xml-region is a built-in function in ‘src/xml.c’.
> 
> (libxml-parse-xml-region START END &optional BASE-URL)
> 
> Parse the region as an XML document and return the parse tree.
> If START is nil, it defaults to ‘point-min’.  If END is nil, it
> defaults to ‘point-max’.
> 
> ...
> --8<---------------cut here---------------end--------------->8---
> 
> Notice the function signature: it implies that the first two arguments
> are mandatory, even though the docstring proceeds to talk about what
> happens when these two arguments are nil.  Similarly for
> `libxml-parse-html-region'.
> 
> However, both the C source code and experiments show that these two
> functions do accept 0 arguments.

This is because a recent change made the first 2 arguments optional,
but advertised-calling-convention of these functions in subr.el was
not adjusted to that change, and was overriding the effect of the
DEFUN macros, which say the truth: up to 4 arguments, with zero
mandatory ones.

Fixed on the emacs-29 branch.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 02 Jun 2023 11:24:09 GMT) Full text and rfc822 format available.

This bug report was last modified 323 days ago.

Previous Next


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