Fix Trac #959: a long-standing bug in instantiating otherwise-unbound type variables