From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Lars Ingebrigtsen Newsgroups: gmane.emacs.bugs Subject: bug#49944: parse-partial-sexp fails to signal an error when (> START LIMIT). Date: Wed, 11 Aug 2021 13:04:43 +0200 Message-ID: <874kbwutro.fsf@gnus.org> References: <87r1f36by6.fsf@gnus.org> <87pmum4wnm.fsf@gnus.org> <87a6lpz9vq.fsf@gnus.org> <83mtppflcu.fsf@gnu.org> <87o8a5xscc.fsf@gnus.org> <83k0ktfh1a.fsf@gnu.org> <83czqlfe5g.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="4356"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: acm@muc.de, Stefan Monnier , 49944@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Wed Aug 11 13:06:15 2021 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mDm3q-0000sI-Ox for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 11 Aug 2021 13:06:14 +0200 Original-Received: from localhost ([::1]:56172 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mDm3p-0005E8-4O for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 11 Aug 2021 07:06:13 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:40618) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mDm3f-0005Dd-7C for bug-gnu-emacs@gnu.org; Wed, 11 Aug 2021 07:06:03 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:50240) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mDm3e-0000c0-Jg for bug-gnu-emacs@gnu.org; Wed, 11 Aug 2021 07:06:03 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mDm3e-0000Or-Dv for bug-gnu-emacs@gnu.org; Wed, 11 Aug 2021 07:06:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Lars Ingebrigtsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 11 Aug 2021 11:06:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 49944 X-GNU-PR-Package: emacs Original-Received: via spool by 49944-submit@debbugs.gnu.org id=B49944.16286799021420 (code B ref 49944); Wed, 11 Aug 2021 11:06:02 +0000 Original-Received: (at 49944) by debbugs.gnu.org; 11 Aug 2021 11:05:02 +0000 Original-Received: from localhost ([127.0.0.1]:33547 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mDm2f-0000Mm-PQ for submit@debbugs.gnu.org; Wed, 11 Aug 2021 07:05:02 -0400 Original-Received: from quimby.gnus.org ([95.216.78.240]:56904) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mDm2a-0000ML-J7 for 49944@debbugs.gnu.org; Wed, 11 Aug 2021 07:05:00 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=OcxxQWpnP8PAUYOa/S2WC9hUeUWDK8g/RLUDd3Nmsjg=; b=P7TEdpLOuG1tZIGdmC/CoN68md pcGGEwTH5RXszvejFWGXqHtiFyGrG+KDKQlcLfD56Vl5SMkX+fQIHAvjI84cXhJ9yQKv0rBET2HxC Do8CtU5lA5TErsLQI614Cg5LYlPPXh0gOuRMzYXO6tDK4camS4vXcom6S3/oysZ5Xld4=; Original-Received: from [84.212.220.105] (helo=elva) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mDm2O-0006y1-Af; Wed, 11 Aug 2021 13:04:48 +0200 In-Reply-To: <83czqlfe5g.fsf@gnu.org> (Eli Zaretskii's message of "Tue, 10 Aug 2021 19:38:51 +0300") X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:211564 Archived-At: Eli Zaretskii writes: >> So I don't understand what it is you're proposing: if we document >> that OLDSTATE should be the state at FROM, then we need to change the >> code so that it never swaps FROM and TO. And if we don't want to change >> the code, then we should document that OLDSTATE will be used as the >> state at TO when TO is smaller than FROM. > > The latter. By documenting the expectations of the function, we leave > it to the callers to make sure their code works as intended. I think that sounds like a very complicated interface -- it would be better if we didn't swap. However, there may well be code out there today that calls the function with OLDSTATE matching the point passed in by END, which is then swapped with START (because it's smaller), and things work by accident. Probably unlikely, but to detect this we'd have to signal an error, like Alan suggested originally. So... perhaps we should just do that? I.e., signal an error if END is smaller than START? (And we could fix up the swapping for clarity, but it wouldn't be necessary.) -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no