-Wcast-qualdisplays this warning on the string stristr () return. What is the problem?
warning: cast discards qualifiers from the target pointer type
char *stristr(const char *string, const char *substring)
{
size_t stringlength = strlen(string);
char *stringlowered = malloc(stringlength + 1);
strcpy(stringlowered, string);
tolower2(stringlowered);
char *substringlowered = malloc(strlen(substring) + 1);
strcpy(substringlowered, substring);
tolower2(substringlowered);
const char *returnvalue = strstr(stringlowered, substringlowered);
if(returnvalue != NULL)
{
size_t returnvaluelength = strlen(returnvalue);
returnvalue = string;
returnvalue += stringlength - returnvaluelength;
}
free(stringlowered);
free(substringlowered);
return (char *)returnvalue;
}
EDIT:
In glibc 2.15 strstr () source code:
return (char *) haystack_start;
source
share