Fix wrong-kind-of-family error message (Trac #9896)
Update `bytestring` submodule

this just pulls in the version bump to 0.10.6
Update Cabal submodule to 1.22 version
Some Dwarf generation fixes

- Make abbrev offset absolute on Non-Mac systems
- Add another termination byte at the end of the abbrev section
  (readelf complains)
- Scope combination was wrong for the simpler cases
- Shouldn't have a "global/" in front of all scopes
Update process and unix submodules

This updates the submodules to the respective final releases,

 - `unix-2.7.1.0`, and
 - `process-1.2.1.0`
Relocate bash completion scripts to utils/
Add Data.Version.makeVersion & `IsList Version`

These two facilities provide some means to avoid the double-breakage caused by
first by the deprecation (see #2496), and then again by the actual future
field-removal.

See also

  https://groups.google.com/d/msg/haskell-core-libraries/q9H-QlL_gnE/4lbb_mBjre8J

for details about this library addition.

Reviewed By: ekmett

Differential Revision: https://phabricator.haskell.org/D577
Consider equality contexts exotic, uninferrable by "deriving"

See comments in #8984. This takes back the fix for #6088.
Merge some instances from th-orphans.
Clarify that declaration splices exist at top level only. (#9880)
Update release notes for recent language and TH changes.
Add Jan Stolarek's test for Trac #9872
Add instance Lift Natural
Update Cabal submodule to latest 1.22 branch tip
Update directory submodule to latest snapshot

This pulls in

> make `getModificationTime` support sub-second resolution on windows
Update Cabal submodule to latest 1.22 branch tip
Update hoopl submodule to 3.10.0.2 rls

[skip ci]
Improved Backpack IR description. [skip ci]

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Optimize flattener by trying to reduce a TF before reducing its args.

This has a demonstrated 2x speed boost on the T9872{a,b,c} tests.
(#9872)
Change performance numbers for T3064