Support float and double types