Invalid "duplicate instance" error
Test case:
```
{-# LANGUAGE TemplateHaskell #-}
import Language.Haskell.TH
class LOL a
lol :: Q [Dec]
lol = [d|
instance LOL Int
|]
instance LOL Int
```
Error:
```
duplicateinstance.hs:9:13:
Duplicate instance declarations:
instance LOL Int -- Defined at duplicateinstance.hs:9:13-19
instance LOL Int -- Defined at duplicateinstance.hs:12:9-15
In the Template Haskell quotation
[d|
instance LOL Int where |]
In the expression:
[d|
instance LOL Int where |]
In the definition of `lol':
lol = [d|
instance LOL Int where |]
```
<details><summary>Trac metadata</summary>
| Trac field | Value |
| ---------------------- | ------------ |
| Version | 6.12.3 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | Compiler |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | |
| Architecture | |
</details>
<!-- {"blocked_by":[],"summary":"Invalid \"duplicate instance\" error","status":"New","operating_system":"","component":"Compiler","related":[],"milestone":"","resolution":"Unresolved","owner":{"tag":"Unowned"},"version":"6.12.3","keywords":[],"differentials":[],"test_case":"","architecture":"","cc":[""],"type":"Bug","description":"Test case:\r\n{{{\r\n{-# LANGUAGE TemplateHaskell #-}\r\n\r\nimport Language.Haskell.TH\r\n\r\nclass LOL a\r\n\r\nlol :: Q [Dec]\r\nlol = [d|\r\n instance LOL Int\r\n |]\r\n\r\ninstance LOL Int\r\n}}}\r\nError:\r\n\r\n{{{\r\nduplicateinstance.hs:9:13:\r\n Duplicate instance declarations:\r\n instance LOL Int -- Defined at duplicateinstance.hs:9:13-19\r\n instance LOL Int -- Defined at duplicateinstance.hs:12:9-15\r\n In the Template Haskell quotation\r\n [d| \r\n instance LOL Int where |]\r\n In the expression:\r\n [d| \r\n instance LOL Int where |]\r\n In the definition of `lol':\r\n lol = [d| \r\n instance LOL Int where |]\r\n}}}\r\n","type_of_failure":"OtherFailure","blocking":[]} -->
issue