I would consider it a bad usage, instead of a bug. HSV values are supposed to be normalized (in between 0 and 1).

If you use a HSV of [0.0, 1.0, 4.86432], it will result in a Red component of 40.250034 (while the others at 0). As the rgb_to_hsv uses V=max(c[0], c[1],c[2]), that’s pretty much the result you should be getting.

For more information read the /blenderfolder/2.79/scripts/addons/cycles/shaders/node_color.h, where you can see that inputs are not clamped, and the math that’s used in the hsv_to_rgb, and rgb_to_hsv.