{-# RULES "cFloatConv/Float->Float" forall (x::Float). cFloatConv x = x; "cFloatConv/Double->Double" forall (x::Double). cFloatConv x = x; "cFloatConv/Float->CFloat" forall (x::Float). cFloatConv x = CFloat x; "cFloatConv/CFloat->Float" forall (x::Float). cFloatConv CFloat x = x; "cFloatConv/Double->CDouble" forall (x::Double). cFloatConv x = CDouble x; "cFloatConv/CDouble->Double" forall (x::Double). cFloatConv CDouble x = x #-};