…h negative meaning error
And fix a tyop in an error message.
Functions returning a heap-allocated string should return a "char *", not a "const char *": Because the result is heap-allocated and becomes the responsibility of the caller, it is certainly modifiable. And the pointer will likely get passed to free(), triggering a conversion warning from gcc. So remove all the relevant consts.