# Suppress a valgrind message about use of uninitialized memory in memchr().
# POSIX states that when the character is found, memchr must not read extra
# bytes in an overestimated length (for example, where memchr is used to
# implement strnlen).  However, we use a safe word read to provide a speedup.
{
    memchr-value4
    Memcheck:Value4
    fun:rpl_memchr
}
{
    memchr-value8
    Memcheck:Value8
    fun:rpl_memchr
}
