On Sat, Oct 13, 2012 at 11:23 AM, Andreas Schwab <[email protected]> wrote:
> Ian Lance Taylor <[email protected]> writes:
>
>> Why do you need the CONST_CAST? strrchr is a standard function and it
>> takes const char * as the first argument. There is other code in gcc
>> that calls strrchr with a const char * argument.
>
> strrchr is overloaded as const and non-const in C++. We need the
> non-const version.
Oh yeah. Really we should overload lbasename the same way.
Suppose you drop this into include/libiberty.h:
#ifdef __cplusplus
inline char *lbasename(char *s) { return const_cast<char*>(lbasename (s)); }
#endif
I'll preapprove that if it works.
Ian