[PATCH branch-1.6] macro: Wipe quote_age after changequote during argument collection

Eric Blake via M4-patches <[email protected]> Fri, 9 Jan 2026 12:53:57 -0600
Newsgroups gmane.comp.gnu.m4.patches
Message-ID <[email protected]>
SSByZWNlbnRseSBmaWd1cmVkIG91dCBhIHdheSB0byAoYWIpdXNlIHRyYW5zbGl0L2NoYW5nZXF1
b3RlIHRvCnBlcmZvcm0gTyhuKSB0b2tlbml6YXRpb24gb2YgYSBzdHJpbmcgd2l0aCBhIHNpbmds
ZS1ieXRlIHNlcGFyYXRvcgp3aGVuIGVsZW1lbnRzIG9mIHRoZSBzdHJpbmcgZG8gbm90IGhhdmUg
dG8gd29ycnkgYWJvdXQgYmVpbmcgdXNlZAp1bnF1b3RlZCAoYmV0dGVyIHRoYW4gbmFpdmUgTyhu
XjIpIGxvb3Bpbmcgb24gaW5kZXgvc3Vic3RyIG9yIGV2ZW4gTyhuCmxvZyBuKSBkaXZpZGUtYW5k
LWNvbnF1ZXIgc3Vic3RyIG9uIGhhbHZlcyBvZiB0aGUgc3RyaW5nKS4KCkJ1dCB3aGlsZSBteSBk
aXNjb3Zlcnkgd29ya2VkIGluIG00IDEuNC4xOSBhbmQgd2l0aCBCU0QgbTQsIGFuZCBldmVuCndv
cmtlZCBpbiBicmFuY2gtMS42IGlmIHRoZSBjaGFuZ2VxdW90ZSBvY2N1cnMgb3V0c2lkZSBvZiB0
aGUKInJlcXVvdGUiIGNhbGwgdGhhdCBJIGFkZGVkIGluIHRoZSBtYW51YWwsIGl0IGZhaWxlZCBv
biBicmFuY2gtMS42CndpdGggY2hhbmdlcXVvdGUgbW92ZWQgbGF0ZXIgZHVyaW5nIGFyZ3VtZW50
IGNvbGxlY3Rpb24sIGJlZm9yZSB0aGlzCnBhdGNoLiAgSXQgdHVybnMgb3V0IHRoYXQgSSBzdHVt
YmxlZCBvbiBhIHNjZW5hcmlvIHdoZXJlCmFyZ3YucXVvdGVfYWdlIGFuZCBxdW90ZV9hZ2UoKSBi
b3RoIG1hdGNoZWQsIGJ1dCBzdGlsbCBkaWZmZXJlZCBmcm9tCnRoZSBhcmd2LT5xdW90ZV9hZ2Ug
aW4gcGxhY2UgYmVmb3JlIHRoZSB0cmFuc2xpdCBjYWxsLCBhbmQgc28gSSB3YXMKc3RpbGwgdXNp
bmcgYCcgaW5zdGVhZCBvZiB0aGUgbmV3IHF1b3RlIGNoYXJhY3RlcnMgaW4gdGhlIGV4cGFuc2lv
biBvZgokQC4KClNpbmNlIHRoaXMgcmVncmVzc2lvbiB3YXMgbmV2ZXIgcmVsZWFzZWQsIGl0IGlz
IG5vdCB3b3J0aCBhIE5FV1MKZW50cnkuCi0tLQoKTmV3IHllYXIsIG5ldyBidWcuICBJJ20gcHVz
aGluZyB0aGlzIGFsb25nIHdpdGggYSBidW1wIGluIGNvcHlyaWdodAp5ZWFycy4gIEkgYWxzbyB0
aGluayBpdCBpcyB3b3J0aCBiYWNrcG9ydGluZyB0aGUgdW5pdCB0ZXN0IHRvCmJyYW5jaC0xLjQ7
IEknbGwgdGFrZSBjYXJlIG9mIHRoYXQgbGF0ZXIuICBBbnkgdGltZSBJIGNhbiBjb21lIHVwIHdp
dGgKYSB3YXkgdG8gZ2V0IGJldHRlciBzY2FsaW5nIG91dCBvZiBtNCwgSSB3YW50IHRvIGtlZXAg
aXQgd29ya2luZy4KCiBkb2MvbTQudGV4aSB8IDQ2ICsrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysKIHNyYy9tYWNyby5jIHwgIDIgKy0KIDIgZmlsZXMgY2hhbmdl
ZCwgNDcgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL2RvYy9tNC50
ZXhpIGIvZG9jL200LnRleGkKaW5kZXggNzhlNDZiYjcuLjI4ZDczZjAyIDEwMDY0NAotLS0gYS9k
b2MvbTQudGV4aQorKysgYi9kb2MvbTQudGV4aQpAQCAtNTM5Niw2ICs1Mzk2LDUyIEBAIENoYW5n
ZXF1b3RlCiBAcmVzdWx0e31oaUhJaGkKIEBlbmQgZXhhbXBsZQoKK0R1cmluZyBtYWNybyBleHBh
bnNpb24sIGluc3RhbmNlcyBvZiBAY29kZXskQEB9IGluIHRoZSBtYWNybydzCitkZWZpbml0aW9u
IHdpbGwgdXNlIHRoZSBxdW90YXRpb24gc3RyaW5ncyB0aGF0IGFyZSBpbiBlZmZlY3QgYXQgdGhl
IGVuZAorb2YgYXJndW1lbnQgY29sbGVjdGlvbiwgZXZlbiBpZiB0aGlzIGlzIGRpZmZlcmVudCB0
aGFuIHRoZSBxdW90YXRpb24KK3N0cmluZ3MgaW4gZWZmZWN0IHdoZW4gdGhlIG1hY3JvIHdhcyBk
ZWZpbmVkLiAgV2hlbiBjb21iaW5lZCB3aXRoCitAY29kZXt0cmFuc2xpdH0gKEBweHJlZntUcmFu
c2xpdH0pLCB0aGlzIGNhbiBiZSBleHBsb2l0ZWQgZm9yIHNwbGl0dGluZworYSBzdHJpbmcgY29u
dGFpbmluZyBtdWx0aXBsZSBpbnN0YW5jZXMgb2YgYSBzaW5nbGUtYnl0ZSBzZXBhcmF0b3IgaW50
byBhCittYWNybyBjYWxsIG9uIGVhY2ggdG9rZW4gb2YgdGhlIHN0cmluZyB3aXRoIGxpbmVhciBz
Y2FsaW5nIChhIG5haXZlIGxvb3AKK3RoYXQgdXNlcyBAY29kZXtpbmRleH0gdG8gc2VhcmNoIGZv
ciB0aGUgZmlyc3QgaW5zdGFuY2Ugb2YgdGhlCitzZXBhcmF0b3IsIGZvbGxvd2VkIGJ5IEBjb2Rl
e3N1YnN0cn0gdG8gcHJvY2VzcyB0aGUgcmVzdCBvZiB0aGUgaW5wdXQKK3N0cmluZywgc2NhbGVz
IHF1YWRyYXRpY2FsbHksIHNpbmNlIGVhY2ggaXRlcmF0aW9uIG9mIHRoZSBsb29wIGNhbiBvbmx5
Citwcm9jZXNzIG9uZSBzdWJzdHJpbmcgYmVmb3JlIHJlLXByb2Nlc3NpbmcgYW4gYXZlcmFnZSBv
ZiBoYWxmIG9mIHRoZQorb3ZlcmFsbCBpbnB1dCB0byBnZXQgdG8gdGhlIG5leHQgc3Vic3RyaW5n
LCBpbnN0ZWFkIG9mIGdldHRpbmcgYXQgYWxsCitzdWJzdHJpbmdzIGluIGEgc2luZ2xlIHBhc3Mp
LiAgSG93ZXZlciwgbm90ZSB0aGF0IHRoaXMgdHJpY2sgY2Fubm90CitwcmV2ZW50IHByZW1hdHVy
ZSBleHBhbnNpb24gb2YgdG9rZW5zIHdpdGhpbiB0aGUgc3RyaW5nLgorCitAZXhhbXBsZQorZGVm
aW5lKGBzb21lJywgYHNldmVyYWwnKQorQHJlc3VsdHt9CitkZWZpbmUoYHRleHQnLCBgbG9uZy5z
dHJpbmcud2l0aC5zb21lLnNlcGFyYXRvcnMnKQorQHJlc3VsdHt9CitkZWZpbmUoYGRpc3BsYXkn
LCBgYDwkMT4nJykKK0ByZXN1bHR7fQorZGlzcGxheSh0ZXh0KQorQHJlc3VsdHt9PGxvbmcuc3Ry
aW5nLndpdGguc2V2ZXJhbC5zZXBhcmF0b3JzPgorZGlzcGxheShkZWZuKGB0ZXh0JykpCitAcmVz
dWx0e308bG9uZy5zdHJpbmcud2l0aC5zb21lLnNlcGFyYXRvcnM+CitkbmwgcXVvdGVzIGFyZSBz
dGlsbCBgJyBhdCB0aGUgdGltZSByZXF1b3RlIGlzIGRlZmluZWQ6CitkZWZpbmUoYHJlcXVvdGUn
LCBgIlskQEBdJykKK0ByZXN1bHR7fQorZGVmaW5lKGB0b2tlbml6ZWQnLCByZXF1b3RlKHRyYW5z
bGl0KGRlZm4oYHRleHQnKSwgYC4nLAorY2hhbmdlcXVvdGUoYCJbJywgYF0nKSJbLF0pKSkKK0By
ZXN1bHR7fQorZG5sIGJ1dCBxdW90ZXMgYXJlICJbXSBhdCB0aGUgdGltZSAkQEAgaW4gcmVxdW90
ZSBpcyBjb21wdXRlZAorY2hhbmdlcXVvdGUKK0ByZXN1bHR7fQorZG5sIHF1b3RlcyBhcmUgYmFj
ayB0byBgJywgeWV0IHRoZSBjb250ZW50IG9mIHRva2VuaXplZCBzdGlsbCBoYXMgIltdCitkbmwg
aG93ZXZlciwgdGhpcyBmb3JtIG9mIHRva2VuaXppbmcgYWxyZWFkeSBleHBhbmRlZCAic29tZSIK
K3Rva2VuaXplZAorQHJlc3VsdHt9Iltsb25nXSwiW3N0cmluZ10sIlt3aXRoXSwiW3NldmVyYWxd
LCJbc2VwYXJhdG9yc10KK2RlZmluZShgYScsIGAgZGlzcGxheShgJDEnKScpCitAcmVzdWx0e30K
K2RubCBub3cgaXQgaXMgcG9zc2libGUgdG8gY2FsbCBgYScgb24gZWFjaCB0b2tlbgordHJhbnNs
aXQoZGVmbihgdG9rZW5pemVkJyksIGAiW10sJywgYGEoKScpCitAcmVzdWx0e30gPGxvbmc+IDxz
dHJpbmc+IDx3aXRoPiA8c2V2ZXJhbD4gPHNlcGFyYXRvcnM+CitAZW5kIGV4YW1wbGUKKwogQGln
bm9yZQogQGNvbW1lbnQgQW5kIGFub3RoZXIgc3RyZXNzIHRlc3QsIG5vdCB3b3J0aCBkb2N1bWVu
dGluZyBpbiB0aGUgbWFudWFsLgogQGV4YW1wbGUKZGlmZiAtLWdpdCBhL3NyYy9tYWNyby5jIGIv
c3JjL21hY3JvLmMKaW5kZXggMGJjNDM0NTcuLjA2NjYxOTgzIDEwMDY0NAotLS0gYS9zcmMvbWFj
cm8uYworKysgYi9zcmMvbWFjcm8uYwpAQCAtNTU5LDcgKzU1OSw3IEBAIGNvbGxlY3RfYXJndW1l
bnRzIChzeW1ib2wgKnN5bSwgY2FsbF9pbmZvICppbmZvLCBzdHJ1Y3Qgb2JzdGFjayAqYXJndW1l
bnRzLAogICBhcmd2LT53cmFwcGVyID0gYXJncy53cmFwcGVyOwogICBhcmd2LT5oYXNfcmVmID0g
YXJncy5oYXNfcmVmOwogICBhcmd2LT5oYXNfZnVuYyA9IGFyZ3MuaGFzX2Z1bmM7Ci0gIGlmIChh
cmdzLnF1b3RlX2FnZSAhPSBxdW90ZV9hZ2UgKCkpCisgIGlmIChhcmdzLnF1b3RlX2FnZSAhPSBx
dW90ZV9hZ2UgKCkgfHwgIXF1b3RlX2FnZSAoKSkKICAgICBhcmd2LT5xdW90ZV9hZ2UgPSAwOwog
ICBhcmd2LT5hcnJheWxlbiA9IGFyZ3MuYXJyYXlsZW47CiAgIHJldHVybiBhcmd2OwotLSAKMi41
Mi4wCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTTQt
cGF0Y2hlcyBtYWlsaW5nIGxpc3QKTTQtcGF0Y2hlc0BnbnUub3JnCmh0dHBzOi8vbGlzdHMuZ251
Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL200LXBhdGNoZXMK