double can represent every value a float can represent.
Does converting float to double simply extend the mantissa by adding 0 and extend the exponent part by filling sign bits?
I tested some data at http://www.binaryconvert.com/index.html. It works in this way. But I did not find any official definition of the conversion. Does the conversion have any corner case not working this way?