- ioToTcRn (dumpIfSet_dyn dflags Opt_D_dump_deriv "Derived instances"
- (ddump_deriving inst_info binds)) `thenM_`
+ -- Rename these extra bindings, discarding warnings about unused bindings etc
+ -- Set -fglasgow exts so that we can have type signatures in patterns,
+ -- which is used in the generic binds
+ ; (rn_binds, gen_bndrs)
+ <- discardWarnings $ setOptM Opt_GlasgowExts $ do
+ { (rn_deriv, _dus1) <- rnTopMonoBinds deriv_binds []
+ ; (rn_gen, dus_gen) <- rnTopMonoBinds gen_binds []
+ ; return (rn_deriv `ThenBinds` rn_gen, duDefs dus_gen) }