From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Gregory Heytings Newsgroups: gmane.emacs.bugs Subject: bug#56682: feature/improved-locked-narrowing 9dee6df39c: Reworked locked narrowing. Date: Sat, 18 Feb 2023 23:12:27 +0000 Message-ID: References: <166939872890.18950.12581667269687468681@vcs2.savannah.gnu.org> <83cz6yacxt.fsf@gnu.org> <6943e04e30e5a02a52e6@heytings.org> <838rhk5fy1.fsf@gnu.org> <6943e04e30a40824e107@heytings.org> <83k0143q37.fsf@gnu.org> <94821a0ef100102ac9e0@heytings.org> <83bkmdz04y.fsf@gnu.org> <43562d4dd9dffd81938f@heytings.org> <83357ozhx0.fsf@gnu.org> <83wn4zurit.fsf@gnu.org> <83bkmaueib.fsf@gnu.org> <83357fnwyy.fsf@gnu.org> <83ttzsk6v4.fsf@gnu.org> <83wn4le8s3.fsf@gnu.org> <0f053182b02103503c26@heytings.org> <83pmaccnz7.fsf@gnu.org> <0f053182b04357300cb1@heytings.org> <83lel0chku.fsf@gnu.org> <0f053182b00a59a41caa@heytings.org> <835yc3cdhk.fsf@gnu.org> <9e9ed8043fc8bfe49bfe@heytings.org> <83h6vnaukn.fsf@gnu.org> <9e9ed8043f4ff9316461@heytings.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="pOu19moqDp" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="35537"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 56682@debbugs.gnu.org, monnier@iro.umontreal.ca, akrl@sdf.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Feb 19 00:13:11 2023 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 1pTWOF-00095b-3y for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 19 Feb 2023 00:13:11 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pTWO7-0007Fh-OS; Sat, 18 Feb 2023 18:13:03 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pTWO6-0007FY-5f for bug-gnu-emacs@gnu.org; Sat, 18 Feb 2023 18:13:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pTWO5-0006JL-TZ for bug-gnu-emacs@gnu.org; Sat, 18 Feb 2023 18:13:01 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pTWO5-0005qE-Kg for bug-gnu-emacs@gnu.org; Sat, 18 Feb 2023 18:13:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Gregory Heytings Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 18 Feb 2023 23:13:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 56682 X-GNU-PR-Package: emacs Original-Received: via spool by 56682-submit@debbugs.gnu.org id=B56682.167676195022416 (code B ref 56682); Sat, 18 Feb 2023 23:13:01 +0000 Original-Received: (at 56682) by debbugs.gnu.org; 18 Feb 2023 23:12:30 +0000 Original-Received: from localhost ([127.0.0.1]:45150 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pTWNa-0005pT-0d for submit@debbugs.gnu.org; Sat, 18 Feb 2023 18:12:30 -0500 Original-Received: from heytings.org ([95.142.160.155]:34672) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pTWNY-0005pM-Gw for 56682@debbugs.gnu.org; Sat, 18 Feb 2023 18:12:29 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=heytings.org; s=20220101; t=1676761947; bh=o7Le/ncVZJYCUPyiyThookMXqX7gBKUCT5lnPYyEu9o=; h=Date:From:To:cc:Subject:In-Reply-To:Message-ID:References:From; b=mPMJGW5IL0of49ytk72PH2ICHAb6pppRgZyC58HZpiny2sYcIWfFvQXVlQe8EXMbo 0pCl05a4emo+cQ07WWzgVNSTZkq1tWyxm5EuVMo3ofharN1Dx9CoGPIrBjGytAyMF/ GwrTWBfMtfh+ObpLM9E+5787WWg7kNaT+IA/lIMXsjpdsFevHwZiURn3y2zOoVJGSZ /Ls/mYTXybRmyp+xjSKlycDh+q3/dXfJnYR7xg6eMjtpEfTXf2Tz4mmk7hKpVUsvvw tFTYNFPrCH8Ka3MQ7EOHz2iLVvMm4Hz2sU4GPke6E3CtLe5BM9Rzecfh1kRk/7OuH4 clhofC0rGIQkg== In-Reply-To: <9e9ed8043f4ff9316461@heytings.org> 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-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:256005 Archived-At: --pOu19moqDp Content-Type: text/plain; format=flowed; charset=us-ascii >>> Yes: that's what the "record_unwind_protect (save_restriction_restore, >>> save_restriction_save ());" does. >> >> So save_restriction_restore will reinstate the buffer in the >> narrowing_locks list? > > Yes: > > Lisp_Object > save_restriction_save (void) > { > Lisp_Object restr = save_restriction_save_1 (); > Lisp_Object locks = narrowing_locks_save (); > return Fcons (restr, locks); > } > > void > save_restriction_restore (Lisp_Object data) > { > narrowing_locks_restore (XCDR (data)); > save_restriction_restore_1 (XCAR (data)); > } > Eli, do you have further comments or objections, or can I install this? (Patch attached again for your convenience.) BTW, I also would like to rename the narrowing_locks_* functions to make their names coherent with your change of the name of the macro from 'with-narrowing' to 'with-restriction'. I guess that's okay? --pOu19moqDp Content-Type: text/x-diff; name=Remove-narrowing-locks-before-calling-Fwiden.patch Content-Transfer-Encoding: base64 Content-ID: Content-Disposition: attachment; filename=Remove-narrowing-locks-before-calling-Fwiden.patch RnJvbSBjNDgyMzg5ZmQ1OWVkY2JjNzM4YTRkNDhjYTZiNjVkMTRhZjYwYjI1 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQ0KRnJvbTogR3JlZ29yeSBIZXl0 aW5ncyA8Z3JlZ29yeUBoZXl0aW5ncy5vcmc+DQpEYXRlOiBUdWUsIDE0IEZl YiAyMDIzIDIyOjQxOjE0ICswMDAwDQpTdWJqZWN0OiBbUEFUQ0hdIFJlbW92 ZSBuYXJyb3dpbmcgbG9ja3MgYmVmb3JlIGNhbGxpbmcgRndpZGVuDQoNCiog c3JjL2VkaXRmbnMuYyAobmFycm93aW5nX2xvY2tzX3JlbW92ZV9pbl9jdXJy ZW50X2J1ZmZlcikgOiBOZXcNCmZ1bmN0aW9uLg0KDQoqIHNyYy9saXNwLmg6 IE1ha2UgaXQgZXh0ZXJuYWxseSB2aXNpYmxlLg0KDQoqIHNyYy94ZGlzcC5j IChkaXNwbGF5X2NvdW50X2xpbmVzX2xvZ2ljYWxseSk6DQoqIHNyYy9scmVh ZC5jIChyZWFkZXZhbGxvb3ApOg0KKiBzcmMvaW5kZW50LmMgKGxpbmVfbnVt YmVyX2Rpc3BsYXlfd2lkdGgpOg0KKiBzcmMvZmlsZWlvLmMgKHdyaXRlX3Jl Z2lvbik6DQoqIHNyYy9jYWxscHJvYy5jIChGY2FsbF9wcm9jZXNzX3JlZ2lv bik6DQoqIHNyYy9idWZmZXIuYyAoRmVyYXNlX2J1ZmZlcik6IFVzZSBpdC4N Ci0tLQ0KIHNyYy9idWZmZXIuYyAgIHwgMSArDQogc3JjL2NhbGxwcm9jLmMg fCAxICsNCiBzcmMvZWRpdGZucy5jICB8IDcgKysrKysrKw0KIHNyYy9maWxl aW8uYyAgIHwgMSArDQogc3JjL2luZGVudC5jICAgfCAxICsNCiBzcmMvbGlz cC5oICAgICB8IDEgKw0KIHNyYy9scmVhZC5jICAgIHwgMSArDQogc3JjL3hk aXNwLmMgICAgfCAxICsNCiA4IGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlv bnMoKykNCg0KZGlmZiAtLWdpdCBhL3NyYy9idWZmZXIuYyBiL3NyYy9idWZm ZXIuYw0KaW5kZXggZGYxZjUyMDY2NjguLmE5ZDAwNGQ4NzI3IDEwMDY0NA0K LS0tIGEvc3JjL2J1ZmZlci5jDQorKysgYi9zcmMvYnVmZmVyLmMNCkBAIC0y Mzg2LDYgKzIzODYsNyBAQCBERUZVTiAoImVyYXNlLWJ1ZmZlciIsIEZlcmFz ZV9idWZmZXIsIFNlcmFzZV9idWZmZXIsIDAsIDAsICIqIiwNCiBzbyB0aGUg YnVmZmVyIGlzIHRydWx5IGVtcHR5IGFmdGVyIHRoaXMuICAqLykNCiAgICh2 b2lkKQ0KIHsNCisgIG5hcnJvd2luZ19sb2Nrc19yZW1vdmVfaW5fY3VycmVu dF9idWZmZXIgKCk7DQogICBGd2lkZW4gKCk7DQogDQogICBkZWxfcmFuZ2Ug KEJFRywgWik7DQpkaWZmIC0tZ2l0IGEvc3JjL2NhbGxwcm9jLmMgYi9zcmMv Y2FsbHByb2MuYw0KaW5kZXggNWUxZTFhOGNjMGEuLmMxNDRmNmU2NmQ5IDEw MDY0NA0KLS0tIGEvc3JjL2NhbGxwcm9jLmMNCisrKyBiL3NyYy9jYWxscHJv Yy5jDQpAQCAtMTExMyw2ICsxMTEzLDcgQEAgdCAobWl4IGl0IHdpdGggb3Jk aW5hcnkgb3V0cHV0KSwgb3IgYSBmaWxlIG5hbWUgc3RyaW5nLg0KICAgICAg ICAgew0KICAgICAgICAgICAvKiBObyBuZWVkIHRvIHNhdmUgcmVzdHJpY3Rp b25zIHNpbmNlIHdlIGRlbGV0ZSBldmVyeXRoaW5nDQogICAgICAgICAgICAg IGFueXdheS4gICovDQorICAgICAgICAgIG5hcnJvd2luZ19sb2Nrc19yZW1v dmVfaW5fY3VycmVudF9idWZmZXIgKCk7DQogICAgICAgICAgIEZ3aWRlbiAo KTsNCiAgICAgICAgICAgZGVsX3JhbmdlIChCRUcsIFopOw0KICAgICAgICAg fQ0KZGlmZiAtLWdpdCBhL3NyYy9lZGl0Zm5zLmMgYi9zcmMvZWRpdGZucy5j DQppbmRleCBmODNjNWM3MjU5Yi4uMzJmNjU0YWY4YzMgMTAwNjQ0DQotLS0g YS9zcmMvZWRpdGZucy5jDQorKysgYi9zcmMvZWRpdGZucy5jDQpAQCAtMjgx NCw2ICsyODE0LDEzIEBAIG5hcnJvd2luZ19sb2Nrc19yZXN0b3JlIChMaXNw X09iamVjdCBidWZfYW5kX3NhdmVkX2xvY2tzKQ0KICAgICBuYXJyb3dpbmdf bG9ja3NfYWRkIChidWYsIHNhdmVkX2xvY2tzKTsNCiB9DQogDQorLyogUmVt b3ZlIGFsbCBuYXJyb3dpbmcgbG9ja3MgaW4gdGhlIGN1cnJlbnQgYnVmZmVy LiAgKi8NCit2b2lkDQorbmFycm93aW5nX2xvY2tzX3JlbW92ZV9pbl9jdXJy ZW50X2J1ZmZlciAodm9pZCkNCit7DQorICBuYXJyb3dpbmdfbG9ja3NfcmVt b3ZlIChGY3VycmVudF9idWZmZXIgKCkpOw0KK30NCisNCiBzdGF0aWMgdm9p ZA0KIHVud2luZF9uYXJyb3dfdG9fcmVnaW9uX2xvY2tlZCAoTGlzcF9PYmpl Y3QgdGFnKQ0KIHsNCmRpZmYgLS1naXQgYS9zcmMvZmlsZWlvLmMgYi9zcmMv ZmlsZWlvLmMNCmluZGV4IGYwMGMzODlhNTIwLi5jZjVhNGVjZjgwYSAxMDA2 NDQNCi0tLSBhL3NyYy9maWxlaW8uYw0KKysrIGIvc3JjL2ZpbGVpby5jDQpA QCAtNTI2OSw2ICs1MjY5LDcgQEAgd3JpdGVfcmVnaW9uIChMaXNwX09iamVj dCBzdGFydCwgTGlzcF9PYmplY3QgZW5kLCBMaXNwX09iamVjdCBmaWxlbmFt ZSwNCiAgICAgfQ0KIA0KICAgcmVjb3JkX3Vud2luZF9wcm90ZWN0IChzYXZl X3Jlc3RyaWN0aW9uX3Jlc3RvcmUsIHNhdmVfcmVzdHJpY3Rpb25fc2F2ZSAo KSk7DQorICBuYXJyb3dpbmdfbG9ja3NfcmVtb3ZlX2luX2N1cnJlbnRfYnVm ZmVyICgpOw0KIA0KICAgLyogU3BlY2lhbCBrbHVkZ2UgdG8gc2ltcGxpZnkg YXV0by1zYXZpbmcuICAqLw0KICAgaWYgKE5JTFAgKHN0YXJ0KSkNCmRpZmYg LS1naXQgYS9zcmMvaW5kZW50LmMgYi9zcmMvaW5kZW50LmMNCmluZGV4IDZk ZTE4ZDc0OWNhLi41ZjZkYzQ3ZjAzNCAxMDA2NDQNCi0tLSBhL3NyYy9pbmRl bnQuYw0KKysrIGIvc3JjL2luZGVudC5jDQpAQCAtMjA2NSw2ICsyMDY1LDcg QEAgbGluZV9udW1iZXJfZGlzcGxheV93aWR0aCAoc3RydWN0IHdpbmRvdyAq dywgaW50ICp3aWR0aCwgaW50ICpwaXhlbF93aWR0aCkNCiAJew0KIAkgIHJl Y29yZF91bndpbmRfcHJvdGVjdCAoc2F2ZV9yZXN0cmljdGlvbl9yZXN0b3Jl LA0KIAkJCQkgc2F2ZV9yZXN0cmljdGlvbl9zYXZlICgpKTsNCisJICBuYXJy b3dpbmdfbG9ja3NfcmVtb3ZlX2luX2N1cnJlbnRfYnVmZmVyICgpOw0KIAkg IEZ3aWRlbiAoKTsNCiAJICBzYXZlZF9yZXN0cmljdGlvbiA9IHRydWU7DQog CX0NCmRpZmYgLS1naXQgYS9zcmMvbGlzcC5oIGIvc3JjL2xpc3AuaA0KaW5k ZXggMTI3NjI4NWUyZjIuLjYzN2VkZTcwNTFlIDEwMDY0NA0KLS0tIGEvc3Jj L2xpc3AuaA0KKysrIGIvc3JjL2xpc3AuaA0KQEAgLTQ2ODksNiArNDY4OSw3 IEBAIFhNT0RVTEVfRlVOQ1RJT04gKExpc3BfT2JqZWN0IG8pDQogCQkJCQkg ICAgcHRyZGlmZl90LCBib29sKTsNCiBleHRlcm4gdm9pZCBuYXJyb3dfdG9f cmVnaW9uX2xvY2tlZCAoTGlzcF9PYmplY3QsIExpc3BfT2JqZWN0LCBMaXNw X09iamVjdCk7DQogZXh0ZXJuIHZvaWQgcmVzZXRfb3V0ZXJtb3N0X25hcnJv d2luZ3MgKHZvaWQpOw0KK2V4dGVybiB2b2lkIG5hcnJvd2luZ19sb2Nrc19y ZW1vdmVfaW5fY3VycmVudF9idWZmZXIgKHZvaWQpOw0KIGV4dGVybiB2b2lk IGluaXRfZWRpdGZucyAodm9pZCk7DQogZXh0ZXJuIHZvaWQgc3ltc19vZl9l ZGl0Zm5zICh2b2lkKTsNCiANCmRpZmYgLS1naXQgYS9zcmMvbHJlYWQuYyBi L3NyYy9scmVhZC5jDQppbmRleCBkMGRjODVmNTFjOC4uMjhjYTQ4M2I4MTkg MTAwNjQ0DQotLS0gYS9zcmMvbHJlYWQuYw0KKysrIGIvc3JjL2xyZWFkLmMN CkBAIC0yMjU1LDYgKzIyNTUsNyBAQCByZWFkZXZhbGxvb3AgKExpc3BfT2Jq ZWN0IHJlYWRjaGFyZnVuLA0KIAkgIHJlY29yZF91bndpbmRfcHJvdGVjdF9l eGN1cnNpb24gKCk7DQogCSAgLyogU2F2ZSBaViBpbiBpdC4gICovDQogCSAg cmVjb3JkX3Vud2luZF9wcm90ZWN0IChzYXZlX3Jlc3RyaWN0aW9uX3Jlc3Rv cmUsIHNhdmVfcmVzdHJpY3Rpb25fc2F2ZSAoKSk7DQorCSAgbmFycm93aW5n X2xvY2tzX3JlbW92ZV9pbl9jdXJyZW50X2J1ZmZlciAoKTsNCiAJICAvKiBU aG9zZSBnZXQgdW5ib3VuZCBhZnRlciB3ZSByZWFkIG9uZSBleHByZXNzaW9u LiAgKi8NCiANCiAJICAvKiBTZXQgcG9pbnQgYW5kIFpWIGFyb3VuZCBzdHVm ZiB0byBiZSByZWFkLiAgKi8NCmRpZmYgLS1naXQgYS9zcmMveGRpc3AuYyBi L3NyYy94ZGlzcC5jDQppbmRleCA1YzVlY2FhMmJjYi4uNmYyYjRlNmNkNDEg MTAwNjQ0DQotLS0gYS9zcmMveGRpc3AuYw0KKysrIGIvc3JjL3hkaXNwLmMN CkBAIC0yNDExMSw2ICsyNDExMSw3IEBAIGRpc3BsYXlfY291bnRfbGluZXNf bG9naWNhbGx5IChwdHJkaWZmX3Qgc3RhcnRfYnl0ZSwgcHRyZGlmZl90IGxp bWl0X2J5dGUsDQogICBwdHJkaWZmX3QgdmFsOw0KICAgc3BlY3BkbF9yZWYg cGRsX2NvdW50ID0gU1BFQ1BETF9JTkRFWCAoKTsNCiAgIHJlY29yZF91bndp bmRfcHJvdGVjdCAoc2F2ZV9yZXN0cmljdGlvbl9yZXN0b3JlLCBzYXZlX3Jl c3RyaWN0aW9uX3NhdmUgKCkpOw0KKyAgbmFycm93aW5nX2xvY2tzX3JlbW92 ZV9pbl9jdXJyZW50X2J1ZmZlciAoKTsNCiAgIEZ3aWRlbiAoKTsNCiAgIHZh bCA9IGRpc3BsYXlfY291bnRfbGluZXMgKHN0YXJ0X2J5dGUsIGxpbWl0X2J5 dGUsIGNvdW50LCBieXRlX3Bvc19wdHIpOw0KICAgdW5iaW5kX3RvIChwZGxf Y291bnQsIFFuaWwpOw0KLS0gDQoyLjM5LjANCg0K --pOu19moqDp--