[Constraint system] Hoist some common code in matchTypes.
[Constraint system] Hoist some common code in matchTypes.

This may not quite be NFC since the path for Subtype bindings checked
other conditions before this, but I believe this is the right thing to
do in all cases where we have two identical type vars.

parkera/swift,practicalswift/swift,jopamer/swift,zisko/swift,OscarSwanros/swift,rudkx/swift,lorentey/swift,shajrawi/swift,shahmishal/swift,hooman/swift,amraboelela/swift,OscarSwanros/swift,JGiola/swift,uasys/swift,airspeedswift/swift,devincoughlin/swift,airspeedswift/swift,natecook1000/swift,amraboelela/swift,zisko/swift,natecook1000/swift,xedin/swift,xwu/swift,lorentey/swift,aschwaighofer/swift,atrick/swift,frootloops/swift,xedin/swift,benlangmuir/swift,CodaFi/swift,allevato/swift,lorentey/swift,benlangmuir/swift,tjw/swift,harlanhaskins/swift,tjw/swift,sschiau/swift,jckarter/swift,JGiola/swift,CodaFi/swift,karwa/swift,gribozavr/swift,xedin/swift,benlangmuir/swift,devincoughlin/swift,sschiau/swift,allevato/swift,OscarSwanros/swift,swiftix/swift,huonw/swift,frootloops/swift,stephentyrone/swift,xedin/swift,karwa/swift,karwa/swift,gribozavr/swift,OscarSwanros/swift,natecook1000/swift,huonw/swift,alblue/swift,brentdax/swift,jckarter/swift,jckarter/swift,hooman/swift,airspeedswift/swift,aschwaighofer/swift,zisko/swift,JGiola/swift,ahoppen/swift,jopamer/swift,CodaFi/swift,roambotics/swift,shajrawi/swift,parkera/swift,tkremenek/swift,natecook1000/swift,danielmartin/swift,nathawes/swift,JGiola/swift,xedin/swift,huonw/swift,ahoppen/swift,aschwaighofer/swift,glessard/swift,airspeedswift/swift,practicalswift/swift,frootloops/swift,lorentey/swift,apple/swift,jckarter/swift,hooman/swift,amraboelela/swift,hooman/swift,sschiau/swift,parkera/swift,lorentey/swift,CodaFi/swift,OscarSwanros/swift,stephentyrone/swift,apple/swift,danielmartin/swift,zisko/swift,alblue/swift,jopamer/swift,ahoppen/swift,danielmartin/swift,swiftix/swift,atrick/swift,karwa/swift,devincoughlin/swift,danielmartin/swift,shahmishal/swift,aschwaighofer/swift,zisko/swift,CodaFi/swift,xedin/swift,swiftix/swift,parkera/swift,jopamer/swift,tkremenek/swift,gribozavr/swift,jckarter/swift,gregomni/swift,glessard/swift,hooman/swift,uasys/swift,harlanhaskins/swift,JGiola/swift,xwu/swift,jmgc/swift,practicalswift/swift,stephentyrone/swift,danielmartin/swift,gregomni/swift,shahmishal/swift,uasys/swift,harlanhaskins/swift,lorentey/swift,atrick/swift,uasys/swift,practicalswift/swift,alblue/swift,alblue/swift,frootloops/swift,frootloops/swift,sschiau/swift,natecook1000/swift,xwu/swift,alblue/swift,tjw/swift,jopamer/swift,devincoughlin/swift,huonw/swift,tkremenek/swift,apple/swift,austinzheng/swift,amraboelela/swift,apple/swift,devincoughlin/swift,aschwaighofer/swift,glessard/swift,swiftix/swift,jopamer/swift,austinzheng/swift,amraboelela/swift,natecook1000/swift,roambotics/swift,CodaFi/swift,jmgc/swift,sschiau/swift,JGiola/swift,jmgc/swift,shahmishal/swift,danielmartin/swift,uasys/swift,brentdax/swift,jckarter/swift,brentdax/swift,jckarter/swift,natecook1000/swift,allevato/swift,swiftix/swift,jmgc/swift,roambotics/swift,tkremenek/swift,harlanhaskins/swift,rudkx/swift,gregomni/swift,gregomni/swift,shahmishal/swift,allevato/swift,hooman/swift,tkremenek/swift,devincoughlin/swift,brentdax/swift,shajrawi/swift,sschiau/swift,parkera/swift,shajrawi/swift,gregomni/swift,nathawes/swift,allevato/swift,swiftix/swift,allevato/swift,brentdax/swift,karwa/swift,gribozavr/swift,xwu/swift,stephentyrone/swift,apple/swift,nathawes/swift,glessard/swift,gribozavr/swift,gregomni/swift,shajrawi/swift,gribozavr/swift,apple/swift,OscarSwanros/swift,zisko/swift,parkera/swift,roambotics/swift,austinzheng/swift,stephentyrone/swift,shajrawi/swift,atrick/swift,danielmartin/swift,xedin/swift,OscarSwanros/swift,harlanhaskins/swift,jopamer/swift,rudkx/swift,swiftix/swift,practicalswift/swift,benlangmuir/swift,atrick/swift,shajrawi/swift,shahmishal/swift,stephentyrone/swift,practicalswift/swift,tjw/swift,practicalswift/swift,brentdax/swift,rudkx/swift,nathawes/swift,lorentey/swift,nathawes/swift,nathawes/swift,benlangmuir/swift,jmgc/swift,huonw/swift,tjw/swift,parkera/swift,jmgc/swift,lorentey/swift,huonw/swift,ahoppen/swift,karwa/swift,karwa/swift,atrick/swift,tjw/swift,rudkx/swift,aschwaighofer/swift,austinzheng/swift,roambotics/swift,shajrawi/swift,frootloops/swift,glessard/swift,austinzheng/swift,amraboelela/swift,parkera/swift,uasys/swift,alblue/swift,ahoppen/swift,austinzheng/swift,glessard/swift,rudkx/swift,airspeedswift/swift,brentdax/swift,sschiau/swift,frootloops/swift,airspeedswift/swift,tkremenek/swift,allevato/swift,devincoughlin/swift,harlanhaskins/swift,benlangmuir/swift,devincoughlin/swift,CodaFi/swift,shahmishal/swift,roambotics/swift,karwa/swift,tkremenek/swift,amraboelela/swift,ahoppen/swift,xwu/swift,aschwaighofer/swift,alblue/swift,practicalswift/swift,tjw/swift,hooman/swift,gribozavr/swift,jmgc/swift,harlanhaskins/swift,xedin/swift,shahmishal/swift,stephentyrone/swift,xwu/swift,xwu/swift,uasys/swift,zisko/swift,sschiau/swift,nathawes/swift,airspeedswift/swift,austinzheng/swift,huonw/swift,gribozavr/swift