Signature of SDL_JoystickName() is inconsistent with SDL_HapticName()

Hi everyone,

While navigating through the SDL2 wiki, I noticed something odd in the
API, following signatures:

const char* SDL_JoystickName(SDL_Joystick* joystick)
(https://wiki.libsdl.org/SDL_JoystickName)

const char* SDL_HapticName(int device_index)
(https://wiki.libsdl.org/SDL_HapticName)

I would have expected either SDL_JoystickName() to take “int
device_index” as argument,
or SDL_HapticName() to take “SDL_Haptic* haptic” as argument.
Is there any particular reason for this?
If no, which would be the preferred signatures?

Thanks,
Elias