Currenty there is a problem with matching word boundaries at the start
of the pattern when the pattern is applied to the string more than once.
E.g. in the sed substitution command with 'g' flag and a pattern starting
with ':<:'.
Here is a concrete example of the problem:
http://thread.gmane.org/gmane.os.freebsd.current/152226/focus=152228
With this change sed makes available the whole string to regexec(3) while passing
offsets of the start and the end of the substring to work on.
This allows regex(3) to correctly identify a word boundary at the start
of the substring, because now we can examine 'lastc' (previous character)
when operating on the beginning of the substring which is not at the very
start of the string.
Note that other uitilites that use regex(3) would also have to pass
the whole string to avoid the same problem. The regex(3) change alone is not
enough to fix all the consumers.
This change also includes a hack to allow libc/regex/grot to compile
after xlocale changes.