about summary refs log tree commit diff
path: root/src/stdio/vasprintf.c
diff options
context:
space:
mode:
authorSzabolcs Nagy <nsz@port70.net>2016-11-24 01:44:49 +0100
committerRich Felker <dalias@aerifal.cx>2016-12-16 23:26:29 -0500
commit7a4c25d78030b3a43ed5c8dd1a456f73cb990f44 (patch)
treee4855beab38f5f84fd4b5d35f88748bdae78b454 /src/stdio/vasprintf.c
parentadfe682eb0d77c6afc751f5e407d9da39623c24e (diff)
downloadmusl-7a4c25d78030b3a43ed5c8dd1a456f73cb990f44.tar.gz
musl-7a4c25d78030b3a43ed5c8dd1a456f73cb990f44.tar.xz
musl-7a4c25d78030b3a43ed5c8dd1a456f73cb990f44.zip
handle ^ and $ in BRE subexpression start and end as anchors
In BRE, ^ is an anchor at the beginning of an expression, optionally
it may be an anchor at the beginning of a subexpression and must be
treated as a literal otherwise.

Previously musl treated ^ in subexpressions as literal, but at least
glibc and gnu sed treats it as an anchor and that's the more useful
behaviour: it can always be escaped to get back the literal meaning.

Same for $ at the end of a subexpression.

Portable BRE should not rely on this, but there are sed commands in
build scripts which do.

This changes the meaning of the BREs:

	\(^a\)
	\(a\|^b\)
	\(a$\)
	\(a$\|b\)
Diffstat (limited to 'src/stdio/vasprintf.c')
0 files changed, 0 insertions, 0 deletions