By: Tom Sydney Kerckhove <syd@cs-syd.eu>
Step over an annotation pragma rather than reading it as a subject
Naming the pragma's fact after what it annotates fixed the common case and
broke the uncommon one: where {-# ANN foo #-} sits above bar, the comment
above the pragma came out attached to foo, which is worse than the scope
holding nothing that it replaced, because a suppression written there is
silently scoped elsewhere.
An annotation is not a subject, so it gets its own DeclKind and attachment
walks past it. The name stays, because a name occurrence inside the pragma is
scoped by it, and a suppression for such a finding has to be writable where
the hint says to write it.
| Time to Start | Worker time | Duration | Time to finish | Idle | |
|---|---|---|---|---|---|
| Config | 10m04s | 0s | 0s | 10m05s | 10m04s |
| Eval | 10m09s | 39s | 39s | 10m48s | 3s |
| Build | 10m34s | 0s | - | - | 0s |
| Suite | 10m04s | 40s | - | - | 1h19m16s |