Fixed T5435_dyn_asm on Windows. The test code was not in sync with the expected output.

Reviewers: austin

Reviewed By: austin

Subscribers: thomie, carter, simonmar

Differential Revision: https://phabricator.haskell.org/D403

GHC Trac Issues: #5435
Test #9262 in th/T9262, and update other tests.
Bring unbound tyvars into scope during reifyInstances.

Fix #9262.
Test #8953 in th/T8953
Always use KindedTV when reifying. (#8953)
Annotate reified poly-kinded tycons when necessary. (#8953)
Annotate poly-kinded type patterns in instance reification.

This should fix #8953.
Testsuite wibbles from fixing #8953
Test #9084 in th/T9084.

The patch includes errors for a whole host of pragmas. But, these
are generated one at a time, and it doesn't seem like a good idea
to add gobs of test-cases here.
Fix #9084 by calling notHandled when unknown bits are enountered.
Fix testsuite output from #9084.
Test #9738 in th/T9738
Fix #9738, by handling {-# ANN ... #-} in DsMeta.
Update release notes for #9262 #8953 #9084.
Tweak the error message for pattern synonym methods,
since they are disallowed both in class and instance declarations
In pattern synonym matchers, support unboxed continuation results.

This requires ensuring the continuations have arguments by adding a dummy
Void# argument when needed. This is so that matching on a pattern synonym
is lazy even when the result is unboxed, e.g.

    pattern P = ()
    f P = 0#

In this case, without dummy arguments, the generated matcher's type would be

   $mP :: forall (r :: ?). () -> r -> r -> r

which is called in `f` at type `() -> Int# -> Int# -> Int#`,
so it would be strict, in particular, in the failure continuation
of `patError`.

We work around this by making sure both continuations have arguments:

  $mP :: forall (r :: ?). () -> (Void# -> r) -> (Void# -> r) -> r

Of course, if `P` (and thus, the success continuation) has any arguments,
we are only adding the extra dummy argument to the failure continuation.
Add a dummy Void# argument to pattern synonym wrapper
if it has no arguments and returns an unboxed type (see #9732)
Binding things matched by an unboxed pattern synonym should require a bang