14 const cl_R contagion (const cl_R& x, const cl_R& y)
16 #define X { return x; }
17 #define Y { return y; }
20 elif (R_rationalp(y)) X
23 , X // floattypecase(y, X,X,X,X)
24 , floattypecase(y, Y,X,X,X)
25 , floattypecase(y, Y,Y,X,X)
26 , floattypecase(y, Y,Y,Y,
27 if (TheLfloat(x)->len <= TheLfloat(y)->len) X else Y
30 #else // faster type dispatch
35 , X // realtypecase(y, X,X,X, X,X,X,X)
36 , realtypecase(y, X,X,X, Y,X,X,X)
37 , realtypecase(y, X,X,X, Y,Y,X,X)
38 , realtypecase(y, X,X,X, Y,Y,Y,
39 if (TheLfloat(x)->len <= TheLfloat(y)->len) X else Y