'-fwarn-missing-methods',
'-fwarn-duplicate-exports');
@MinusWOpts = (@StandardWarnings,
- '-fwarn-incomplete-patterns',
'-fwarn-unused-binds',
+ '-fwarn-unused-matches',
+ '-fwarn-incomplete-patterns',
'-fwarn-unused-imports');
@MinusWallOpts = (@MinusWOpts,
- '-fwarn-unused-matches',
'-fwarn-type-defaults',
'-fwarn-name-shadowing',
'-fwarn-missing-signatures');
'-ffoldr-build-on',
'-fdo-eta-reduction',
- '-fdo-case-elim',
'-fdo-lambda-eta-expansion',
'-fcase-of-case',
'-fcase-merge',
'-fcse', # CSE must immediately follow a simplification pass, because it relies
# on the no-shadowing invariant. See comments at the top of CSE.lhs
+ '-ffull-laziness', # nofib/spectral/hartel/wang doubles in speed if you
+ # do full laziness late in the day. It only happens
+ # after fusion and other stuff, so the early pass doesn't
+ # catch it. For the record, the redex is
+ # f_el22 (f_el21 r_midblock)
'-ffloat-inwards',
# Case-liberation for -O2. This should be after
,'-u', "${uscore}PrelPack_unpackCString_closure"
,'-u', "${uscore}PrelException_stackOverflow_closure"
,'-u', "${uscore}PrelException_heapOverflow_closure"
+ ,'-u', "${uscore}PrelException_NonTermination_static_closure"
));
if (!$NoHaskellMain) {
unshift (@Ld_flags,'-u', "${uscore}PrelMain_mainIO_closure");