[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#49944: parse-partial-sexp fails to signal an error when (> START LIM
From: |
Eli Zaretskii |
Subject: |
bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT). |
Date: |
Tue, 10 Aug 2021 18:36:33 +0300 |
> From: Lars Ingebrigtsen <larsi@gnus.org>
> Cc: Eli Zaretskii <eliz@gnu.org>, acm@muc.de, 49944@debbugs.gnu.org
> Date: Tue, 10 Aug 2021 16:54:59 +0200
>
> > So, I don't care if we signal an error when START > END or if we "do
> > nothing" (as is customary in some language's `for` loops), but we should
> > always consider that OLDSTATE is the state that belongs with START and
> > hence we can't start parsing at END towards START because we don't know
> > what parsing state to use at END.
>
> Ah; thanks for the explanation.
>
> But I guess you'll get incorrect results if you pass in any OLDSTATE
> that doesn't belong to START, not just when START and END are swapped?
> It's just that if START/END obviously wrong (i.e., END is smaller than
> START), then the function here "helpfully" swaps them and things get
> even more confusing than they would normally be if you pass in a wrong
> OLDSTATE (or wrong START).
>
> So perhaps signalling an error here is the correct thing after all? (Or
> just not doing any swapping.)
The reordering is the side effect of calling validate_region, so we'd
need to expend extra effort NOT to reorder START and END.
How about just documenting that OLDSTATE should be the state at START,
and that's it?
- bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT)., Alan Mackenzie, 2021/08/08
- bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT)., Lars Ingebrigtsen, 2021/08/08
- bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT)., Alan Mackenzie, 2021/08/08
- bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT)., Lars Ingebrigtsen, 2021/08/09
- bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT)., Alan Mackenzie, 2021/08/09
- bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT)., Lars Ingebrigtsen, 2021/08/10
- bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT)., Eli Zaretskii, 2021/08/10
- bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT)., Stefan Monnier, 2021/08/10
- bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT)., Lars Ingebrigtsen, 2021/08/10
- bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT)., Stefan Monnier, 2021/08/10
- bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT).,
Eli Zaretskii <=
- bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT)., Stefan Monnier, 2021/08/10
- bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT)., Eli Zaretskii, 2021/08/10
- bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT)., Lars Ingebrigtsen, 2021/08/11
bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT)., Lars Ingebrigtsen, 2021/08/21