convert float and double constants even more carefully