I guess you could go full-on and change the function name match pattern to be a "word" or just add the '-' to it for now to be safe.
From: firstname.lastname@example.org At: 08/12/20 10:54:40
To: Matthew Persico (BLOOMBERG/ 919 3RD A )
Subject: Re: bug#21477: 24.4; Imenu - improper parse of shell function names
On Aug 12 2020, Matthew Persico (BLOOMBERG/ 919 3RD A) wrote:
> I can reproduce this behaviour, but is it really a bug? Aren't the
> names with '-' invalid?
It's a POSIX extension, enforced in POSIX mode:
13. Function names must be valid shell 'name's. That is, they may not
contain characters other than letters, digits, and underscores, and
may not start with a digit. Declaring a function with an invalid
name causes a fatal syntax error in non-interactive shells.
Andreas Schwab, email@example.com
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510 2552 DF73 E780 A9DA AEC1
"And now for something completely different."