FW: Re: buglet: sh-utils 1.13 and/or linux kernel menuconfig

Mark Orr (markorr@intersurf.com)
Fri, 13 Dec 1996 18:11:45 -0600 (CST)

-----FW: <wpg6826ujec.fsf@asic.sc.ti.com>-----

Date: 13 Dec 1996 17:14:19 -0600
Sender: meyering@appaloosa.asic.sc.ti.com
From: Jim Meyering <meyering@asic.sc.ti.com>
To: (Ulrich Drepper) <drepper@ipd.info.uni-karlsruhe.de>
Subject: Re: buglet: sh-utils 1.13 and/or linux kernel menuconfig
Cc: markorr@intersurf.com, bug-gnu-utils@prep.ai.mit.edu,
sh-utils-bugs@gnu.ai.mit.edu, roadcapw@cfw.com, linux-kernel@vger.rutgers.edu,

| Mark Orr <markorr@intersurf.com> writes:
| > I've traced it down to the "expr" program, If I use the one from
| > sh-utils 1.12, Menuconfig works as it should. With the new version,
| > if I enter a value, it beeps and pops up a dialog saying "you have
| > made an invalid entry".
| This most probably caused by mising up headers and implementation
| of GNU regex and rx. Either you use regex or rx, but not a mixture.

I don't think that's the problem here.
I made this change on 1996-02-24:

* expr.c (docolon): Set re_syntax_options to RE_SYNTAX_POSIX_BASIC
so expr's pattern matching uses BASIC (not GNU-extended) REs.
Reported by Jim Kingdon.

In sh-utils-1.12, expr treated unescaped + and ? as special.
That was wrong. POSIX says that expr's colon expressions use
basic regular expressions (BREs). And those characters are not
special in BREs.

With the latest version (now it's sh-utils-1.14), you have to
backslash-escape the + and ? characters to make them special.

Now, this is the way you should write it:

% expr abb : 'ab\+'

-------------End of forwarding message-------------------------

Mark Orr