return ieee754dp_nanxcpt(ieee754dp_indef());
 
        case IEEE754_CLASS_QNAN:
-               return ieee754dp_nanxcpt(ieee754dp_nan_fsp(xs, xm));
+               return ieee754dp_nan_fsp(xs, xm);
 
        case IEEE754_CLASS_INF:
                return ieee754dp_inf(xs);
 
        switch (xc) {
        case IEEE754_CLASS_QNAN:
                /* sqrt(Nan) = Nan */
-               return ieee754dp_nanxcpt(x);
+               return x;
 
        case IEEE754_CLASS_SNAN:
                ieee754_setcx(IEEE754_INVALID_OPERATION);
                if (xs) {
                        /* sqrt(-Inf) = Nan */
                        ieee754_setcx(IEEE754_INVALID_OPERATION);
-                       return ieee754dp_nanxcpt(ieee754dp_indef());
+                       return ieee754dp_indef();
                }
                /* sqrt(+Inf) = Inf */
                return x;
                if (xs) {
                        /* sqrt(-x) = Nan */
                        ieee754_setcx(IEEE754_INVALID_OPERATION);
-                       return ieee754dp_nanxcpt(ieee754dp_indef());
+                       return ieee754dp_indef();
                }
                break;
        }
 
                nan = ieee754sp_nan_fdp(xs, xm);
                if (!ieee754sp_isnan(nan))
                        nan = ieee754sp_indef();
-               return ieee754sp_nanxcpt(nan);
+               return nan;
 
        case IEEE754_CLASS_INF:
                return ieee754sp_inf(xs);
 
        switch (xc) {
        case IEEE754_CLASS_QNAN:
                /* sqrt(Nan) = Nan */
-               return ieee754sp_nanxcpt(x);
+               return x;
 
        case IEEE754_CLASS_SNAN:
                ieee754_setcx(IEEE754_INVALID_OPERATION);
                if (xs) {
                        /* sqrt(-Inf) = Nan */
                        ieee754_setcx(IEEE754_INVALID_OPERATION);
-                       return ieee754sp_nanxcpt(ieee754sp_indef());
+                       return ieee754sp_indef();
                }
                /* sqrt(+Inf) = Inf */
                return x;
                if (xs) {
                        /* sqrt(-x) = Nan */
                        ieee754_setcx(IEEE754_INVALID_OPERATION);
-                       return ieee754sp_nanxcpt(ieee754sp_indef());
+                       return ieee754sp_indef();
                }
                break;
        }