[GHC] #8710: Overlapping patterns warning misplaced
GHC
ghc-devs at haskell.org
Mon Feb 15 22:44:16 UTC 2016
#8710: Overlapping patterns warning misplaced
-------------------------------------+-------------------------------------
Reporter: goldfire | Owner:
Type: bug | Status: new
Priority: low | Milestone:
Component: Compiler | Version: 7.7
Resolution: | Keywords:
| PatternMatchWarnings
Operating System: Unknown/Multiple | Architecture:
Type of failure: Incorrect | Unknown/Multiple
warning at compile-time | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s): Phab:D1910
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by gkaracha):
Replying to [comment:8 simonpj]:
> > If we print a separate warning for every redundant clause it may
become overwhelming
>
> Really? There are a few artificial examples in the testsuite, but I'd
have thought that one error per redundant equation would be ok.
Hmmm, true. The number of redundant clauses (and of those with
inaccessible RHS) is bound by the
number of clauses a match has (it's not the case with the uncovered
though). In practice I have
not seen matches with many redundant cases. Hence, I created Phab:D1920
too, which implements this
approach (one warning per redundant clause, each with its own location).
>
> But still, I'd really like the common case of one redundant equation to
look like
> {{{
> Bug.hs:24:3: warning: -- Note correct line number
> Pattern match(es) are redundant
> In an equation for ‘show’:
> len _ = ... (at Bug.hs:24:3)
> }}}
> Or maybe even
> {{{
> Bug.hs:24:3: warning:
> Pattern match(es) are redundant
> In an equation for ‘show’:
> len _ = ... -- No need to duplicate here
> }}}
> If there are more than one, then adding the individual locations is good
> {{{
> Bug.hs:24:3: warning:
> Pattern match(es) are redundant
> In an equation for ‘show’:
> len _ = ... (at Bug.hs:24:3)
> len _ = ... (at Bug.hs:25:3)
> }}}
> but the herald should mention the first.
>
> Can't be hard, I guess.
Agreed on this one too, I have updated Phab:D1910 to behave like this.
Merge at will the revision
you prefer. :-)
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8710#comment:9>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list