Support for backpack
In cabal#6397 the issue of hpc support for backpack came up. In a subsequent patch, hpc was made to ignore backpack signatures and instantiations.
This ticket tracks HPC support for backpack.
For example, if we have signature A.foo, and two instantiations of it B.foo and C.foo, and A.foo gets used from D.bar for which A is instantiated by B, then HPC should mark the use of B.foo, but not of C (and I suppose nothing happens to A, which only declares signatures)... something along these lines.
It's not entirely clear what should happen, so I suppose a good first thing to do is construct or pick up a few examples and go through them while reasoning about what HPC should do.
When fixed, we should update Cabal to include instantiated units in the HPC report again.