[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Portability problems of "Usual Tools" not described in manual
From: |
Ralf Wildenhues |
Subject: |
Re: Portability problems of "Usual Tools" not described in manual |
Date: |
Tue, 17 Mar 2009 22:07:31 +0100 |
User-agent: |
Mutt/1.5.18 (2008-05-17) |
Hello,
* Eric Blake wrote on Tue, Mar 17, 2009 at 03:43:32PM CET:
> According to Russ Allbery on 3/12/2009 10:32 PM:
> > 2. On HP-UX 11.23, regexp matching with expr does not allow multiple sub-
> > expressions:
> >
> > bash-3.1$ expr 'Xfoo' : 'X\(f\(oo\)*\)$'
> > expr: More than one '\(' was used.
(BTW, I can verify this.)
> Ouch. I don't have access to HP-UX to verify, but this means we need to
> audit autoconf source to make sure we don't violate this restriction.
There are no such instances in Autoconf, Automake, Libtool, gnulib.
I checked; but also, they would have shown up on our radar before.
> > 3. On GNU/Linux the regexp "$", when used with older versions of expr,
> > matches newlines embedded in the match string:
> >
> > bash-3.1$ baz='foo
> > > bar'
> > bash-3.1$ expr "X$baz" : 'X\(foo\)$' || echo baz
> > foo
>
> I'm assuming this was from an older version of coreutils? Can someone
> determine 'expr --version' in the broken case, to see when it was fixed?
I see one instance of this, in the 'dirname' emulation code in m4sh
(also in install-sh). Luckily, coreutils dirname works, so that isn't
a problem.
Cheers,
Ralf