SpecConstr number of specializations (-fspec-constr-count)

Simon Marlow marlowsd at gmail.com
Mon Nov 29 07:02:20 EST 2010

On 25/11/2010 20:01, Roman Leshchinskiy wrote:
> On 25/11/2010, at 10:33, José Pedro Magalhães wrote:
>> Is this a bug, or is the value of spec-constr-count being
>> manipulated in some way for certain passes?
> spec-constr-count decreases for nested specialisations. For instance,
> if spec-constr-count is 6 and SpecConstr generates 2 specialisations
> for a function foo, then spec-constr-count will be 3 for all
> functions nested in foo. You can turn it off completely with
> -fno-spec-constr-count.

The messages are a bit counter-intuitive though - I encountered this 
recently too, and was baffled by the fact that the suggested flag, 
-fspec-constr-count, didn't seem to have any effect.

Also, these messages should be clearly labelled as warnings, and there 
should be a way to disable them (I realise they're being generated by 
the SpecConstr pass and we don't normally generate warnings beyond the 
desugarer, but still.)


More information about the Glasgow-haskell-users mailing list