GNU bug report logs -
#74245
30.0.92; CPerl subroutine signatures are left open when last param is $
Previous Next
Reported by: Peter Oliver <p.d.oliver <at> mavit.org.uk>
Date: Thu, 7 Nov 2024 19:20:02 UTC
Severity: normal
Found in version 30.0.92
Fixed in version 30.0
Done: Harald Jörg <haj <at> posteo.de>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Stefan Kangas <stefankangas <at> gmail.com> writes:
> Peter Oliver <p.d.oliver <at> mavit.org.uk> writes:
>
>> Perl subroutine signatures can include a variable with no name, just
>> a bare $, to indicate that a parameter should be ignored. If this
>> happens in the last place, CPerl mode in Emacs 30.0.92 mishandles
>> it, and is unable to see the closing ). Consequently, it matches
>> parentheses incorrectly, and misindents subsequent blocks.
>>
>> I have a test that I will send in as a patch, once I have a bug number.
>>
>> This issue is not present in Emacs 29.4.
>
> Harald, could you please take a look at this?
I apologize, for some reason this bug report slipped by me. I'll have a
look next week. I can reproduce the bug.
On first glance, there's a workaround: Add a trailing comma to the
parameter list. Ugly, but prevents the indentation from being messed up:
sub ignore ($first, $,) {}
--
Cheers,
haj
This bug report was last modified 125 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.