[2.23 PATCH] Desupport regexp.h (bug 18681)
Zack Weinberg
zackw@panix.com
Tue Aug 18 16:37:00 GMT 2015
On Tue, Aug 18, 2015 at 10:51 AM, Carlos O'Donell <carlos@redhat.com> wrote:
>
> Could one of you please update "Packaging Changes" for 2.23 to indicate
> exactly what happens if you use the header and how distributions should
> change their packages? The more detail the better, but if all we can say
> is "You need to from this API to that API," that's fine also. Some record
> of this requirement is important.
Here's suggested text. If you grant wiki account 'ZackWeinberg'
permission to edit, I can take care of formatting and stuff.
zw
* The header file `regexp.h` (not to be confused with `regex.h`) is
no longer supported. (This header was formerly part of SUS, but was
deprecated in 1994 and removed from the standard in 2001; moreover,
the glibc implementation suffered from memory leaks which were
impractical to fix. See
https://sourceware.org/bugzilla/show_bug.cgi?id=18681 for more
information.)
Binary backward compatibility is preserved, and glibc still
installs a header file with this name, but it contains only an
`#error` directive. Therefore, no packaging changes are required, but
application developers and distribution maintainers should be aware
that formerly-working programs may fail to compile as a result of this
change. Such programs should be updated to use `regex.h` instead.
`regcomp` is the replacement for the `compile` function and its
associated macros, and `regexec` is the replacement for the `step` and
`advance` functions and their associated global variables. [link each
function name to its documentation]
More information about the Libc-alpha
mailing list