Hi all,

I'm working on a little TC plugin that solves the following class:

```haskell
class KnownAnnotations where
  rawAnnotationsVal :: [Annotation]
```

Like `HasCallStack`, the result of `KnownAnnotations` is unique to each
callsite. Thus, I am trying to prevent my TC plugin from adding the
solved constraint to the inert set.

As an example, the following program:

```
t2 :: ([Annotation], Int)
t2 = (rawAnnotationsVal, test2)

t3 :: ([Annotation], Int)
t3 = (rawAnnotationsVal, test3)
```

dumps this output with `-ddump-cs-trace`:

```

Step 1[l:0,d:0] Kept as inert:
    [WD] $dKnownAnnotations_a18UB {0}:: KnownAnnotations
Step 2[l:0,d:0] Dict equal (keep inert):
    [WD] $dKnownAnnotations_a18UD {0}:: KnownAnnotations
```

Is there some trick to prevent the inert caching for these solved
wanteds?

Cheers,
Sandy

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Reply via email to