It seems that in order to use RULES pragmas in a module, the module has to be compiled with -fglasgow-exts (at least, this is so with 4.08.1). This is a little surprising as pragmas usually don't require this flag. Indeed, it seems as if the keyword `forall' within a RULES pragma is what irritates GHC without -fglasgow-exts - maybe because forall is an extension in "normal" code? Cheers, Manuel