-
Simon Peyton Jones authored
-------------------------- Add a rule-check pass (special request by Manuel) -------------------------- DO NOT merge with stable The flag -frule-check foo will report all sites at which RULES whose name starts with "foo.." might apply, but in fact the arguments don't match so the rule doesn't apply. The pass is run right after all the core-to-core passes. (Next thing to do: make the core-to-core script external, so you can fiddle with it. Meanwhile, the core-to-core script is in DriverState.builCoreToDo so you can move the CoreDoRuleCheck line around if you want. The format of the report is experimental: Manuel, feel free to fiddle with it. Most of the code is in specialise/Rules.lhs Incidental changes ~~~~~~~~~~~~~~~~~~ Change BuiltinRule so that the rule name is accessible without actually successfully applying the rule. This change affects quite a few files in a trivial way.
5ab261bb