Hi,
Ari, I'm not sure if your patch is sufficient. It fixes only a single 
occurrence while there are more errors of this kind. The reason also seems lie 
a bit deeper.

#ifdef __CORRECT_ISO_CPP_STRING_H_PROTO
extern "C++"
{
extern char *strrchr (char *__s, int __c)
     __THROW __asm ("strrchr") __attribute_pure__ __nonnull ((1));
extern __const char *strrchr (__const char *__s, int __c)
     __THROW __asm ("strrchr") __attribute_pure__ __nonnull ((1));

# ifdef __OPTIMIZE__
__extern_always_inline char *
strrchr (char *__s, int __c) __THROW
{
  return __builtin_strrchr (__s, __c);
}

__extern_always_inline __const char *
strrchr (__const char *__s, int __c) __THROW
{
  return __builtin_strrchr (__s, __c);
}
# endif

It seems __OPTIMIZE__ is defined when compiling with -O2. Also Drepper himself
states[0] that just casting those variables is not the way to go and I have to
agree with that. So it seems we require a bit more work to fix this bug :/

[0] https://www.redhat.com/archives/fedora-devel-list/2009-January/msg02248.html

Cheers
Nico
-- 
Nico Golde - http://www.ngolde.de - n...@jabber.ccc.de - GPG: 0xA0A0AAAA
For security reasons, all text in this mail is double-rot13 encrypted.

Attachment: pgpzPNF9fFRu2.pgp
Description: PGP signature

Reply via email to