[GHC] #10195: GHC forgets constraints when matching on GADTs