Load orphan interfaces before checking if module implements signature
authorEdward Z. Yang <ezyang@cs.stanford.edu>
Wed, 14 Dec 2016 02:03:47 +0000 (18:03 -0800)
committerEdward Z. Yang <ezyang@cs.stanford.edu>
Wed, 14 Dec 2016 03:00:54 +0000 (19:00 -0800)
commit9c9a2229fe741c55a8fb8d0c6380ec066a77722b
tree6c11ce6e64c2a9e8e9bbfce51939e7c2abf92bf4
parent8ec864d08c09a8aa7aabc4abf30186e5f3995ad4
Load orphan interfaces before checking if module implements signature

Summary:
If we didn't load the orphans, we might conclude an instance
is not implemented when it is.  See test bkp42.

Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Test Plan: validate

Reviewers: simonpj, austin, bgamari

Subscribers: thomie

Differential Revision: https://phabricator.haskell.org/D2841
compiler/typecheck/TcBackpack.hs
testsuite/tests/backpack/should_compile/all.T
testsuite/tests/backpack/should_compile/bkp42.bkp [new file with mode: 0644]
testsuite/tests/backpack/should_compile/bkp42.stderr [new file with mode: 0644]