Nothing to say about the patch but a little typo: + if (mpfr_inf_p (x) || mpfr_nan_p (x)) + { ^^^^^^^ <TAB> here + gfc_error ("Conversion of exceptional value at %L", where);