Paolo Bonzini <[EMAIL PROTECTED]> writes:

> Yes, it is undefined

I don't see why 's&foo&\&&' is undefined.  The POSIX standard says:

   Any character other than backslash or <newline> can be used instead
   of a slash to delimit the BRE and the replacement. Within the BRE
   and the replacement, the BRE delimiter itself can be used as a
   literal character if it is preceded by a backslash.

Therefore, preceding & by a backslash makes it a "literal character",
i.e., a character that is not special.  Where's the ambiguity?

Even if the standard were ambiguous (which I don't yet see), there is
a practical advantage to behaving compatibly with other 'sed'
implementations in this area.

Anyway, if you like, I can file an interpretation request with the
POSIX folks about this.


Reply via email to