Revert "Simplify constraint application now that open-existentials are more local."
Revert "Simplify constraint application now that open-existentials are more local."

This reverts r27107; we're going to need this code for recovery.

Swift SVN r27169

calebd/swift,swiftix/swift.old,swiftix/swift,MukeshKumarS/Swift,parkera/swift,jmgc/swift,jopamer/swift,emilstahl/swift,jopamer/swift,Jnosh/swift,karwa/swift,milseman/swift,slavapestov/swift,zisko/swift,swiftix/swift,swiftix/swift,tkremenek/swift,sschiau/swift,shahmishal/swift,amraboelela/swift,deyton/swift,swiftix/swift.old,tjw/swift,roambotics/swift,bitjammer/swift,calebd/swift,MukeshKumarS/Swift,felix91gr/swift,parkera/swift,benlangmuir/swift,aschwaighofer/swift,kusl/swift,manavgabhawala/swift,karwa/swift,ben-ng/swift,huonw/swift,kusl/swift,JaSpa/swift,parkera/swift,IngmarStein/swift,uasys/swift,kentya6/swift,kperryua/swift,JaSpa/swift,therealbnut/swift,kentya6/swift,hughbe/swift,xedin/swift,rudkx/swift,apple/swift,stephentyrone/swift,calebd/swift,sschiau/swift,kstaring/swift,bitjammer/swift,danielmartin/swift,huonw/swift,adrfer/swift,ken0nek/swift,johnno1962d/swift,frootloops/swift,sdulal/swift,return/swift,modocache/swift,nathawes/swift,practicalswift/swift,djwbrown/swift,shahmishal/swift,codestergit/swift,austinzheng/swift,gribozavr/swift,austinzheng/swift,zisko/swift,therealbnut/swift,JaSpa/swift,arvedviehweger/swift,gmilos/swift,kentya6/swift,rudkx/swift,gregomni/swift,dduan/swift,gribozavr/swift,stephentyrone/swift,kentya6/swift,milseman/swift,parkera/swift,zisko/swift,calebd/swift,lorentey/swift,kentya6/swift,parkera/swift,felix91gr/swift,ken0nek/swift,swiftix/swift,shahmishal/swift,frootloops/swift,benlangmuir/swift,xwu/swift,russbishop/swift,KrishMunot/swift,airspeedswift/swift,gmilos/swift,gottesmm/swift,JGiola/swift,shajrawi/swift,gottesmm/swift,bitjammer/swift,ken0nek/swift,return/swift,cbrentharris/swift,felix91gr/swift,mightydeveloper/swift,ahoppen/swift,jckarter/swift,kusl/swift,tinysun212/swift-windows,Ivacker/swift,emilstahl/swift,huonw/swift,airspeedswift/swift,parkera/swift,KrishMunot/swift,arvedviehweger/swift,tinysun212/swift-windows,Jnosh/swift,slavapestov/swift,sdulal/swift,jckarter/swift,milseman/swift,austinzheng/swift,kentya6/swift,SwiftAndroid/swift,aschwaighofer/swift,mightydeveloper/swift,aschwaighofer/swift,danielmartin/swift,therealbnut/swift,shahmishal/swift,nathawes/swift,tardieu/swift,deyton/swift,khizkhiz/swift,harlanhaskins/swift,jckarter/swift,adrfer/swift,harlanhaskins/swift,gribozavr/swift,tjw/swift,gribozavr/swift,xwu/swift,modocache/swift,CodaFi/swift,jopamer/swift,KrishMunot/swift,danielmartin/swift,kentya6/swift,khizkhiz/swift,mightydeveloper/swift,kusl/swift,jopamer/swift,sdulal/swift,allevato/swift,jtbandes/swift,xedin/swift,xwu/swift,amraboelela/swift,huonw/swift,IngmarStein/swift,allevato/swift,gmilos/swift,apple/swift,jmgc/swift,rudkx/swift,LeoShimonaka/swift,LeoShimonaka/swift,uasys/swift,devincoughlin/swift,JaSpa/swift,return/swift,rudkx/swift,ben-ng/swift,stephentyrone/swift,natecook1000/swift,IngmarStein/swift,kperryua/swift,JaSpa/swift,alblue/swift,aschwaighofer/swift,arvedviehweger/swift,karwa/swift,adrfer/swift,kstaring/swift,IngmarStein/swift,xwu/swift,atrick/swift,jtbandes/swift,natecook1000/swift,milseman/swift,harlanhaskins/swift,ben-ng/swift,djwbrown/swift,kusl/swift,djwbrown/swift,arvedviehweger/swift,sschiau/swift,cbrentharris/swift,JaSpa/swift,SwiftAndroid/swift,dduan/swift,calebd/swift,frootloops/swift,gregomni/swift,kusl/swift,bitjammer/swift,sdulal/swift,tjw/swift,OscarSwanros/swift,tjw/swift,felix91gr/swift,zisko/swift,slavapestov/swift,devincoughlin/swift,tkremenek/swift,tjw/swift,russbishop/swift,xedin/swift,swiftix/swift.old,lorentey/swift,lorentey/swift,aschwaighofer/swift,cbrentharris/swift,johnno1962d/swift,brentdax/swift,ben-ng/swift,return/swift,practicalswift/swift,lorentey/swift,milseman/swift,hughbe/swift,gregomni/swift,natecook1000/swift,ken0nek/swift,sdulal/swift,practicalswift/swift,khizkhiz/swift,practicalswift/swift,amraboelela/swift,khizkhiz/swift,roambotics/swift,dreamsxin/swift,natecook1000/swift,glessard/swift,jmgc/swift,devincoughlin/swift,deyton/swift,natecook1000/swift,LeoShimonaka/swift,codestergit/swift,jmgc/swift,frootloops/swift,adrfer/swift,dduan/swift,bitjammer/swift,stephentyrone/swift,arvedviehweger/swift,glessard/swift,therealbnut/swift,kstaring/swift,milseman/swift,adrfer/swift,hughbe/swift,tardieu/swift,Jnosh/swift,gottesmm/swift,allevato/swift,apple/swift,JGiola/swift,zisko/swift,allevato/swift,lorentey/swift,emilstahl/swift,hooman/swift,Ivacker/swift,apple/swift,brentdax/swift,kusl/swift,xwu/swift,IngmarStein/swift,aschwaighofer/swift,frootloops/swift,danielmartin/swift,harlanhaskins/swift,djwbrown/swift,jopamer/swift,harlanhaskins/swift,codestergit/swift,hughbe/swift,zisko/swift,tinysun212/swift-windows,glessard/swift,lorentey/swift,cbrentharris/swift,emilstahl/swift,JGiola/swift,LeoShimonaka/swift,hooman/swift,djwbrown/swift,atrick/swift,uasys/swift,tkremenek/swift,emilstahl/swift,modocache/swift,harlanhaskins/swift,SwiftAndroid/swift,alblue/swift,devincoughlin/swift,gribozavr/swift,stephentyrone/swift,return/swift,emilstahl/swift,ben-ng/swift,deyton/swift,felix91gr/swift,airspeedswift/swift,karwa/swift,shajrawi/swift,xedin/swift,johnno1962d/swift,shahmishal/swift,nathawes/swift,tkremenek/swift,alblue/swift,manavgabhawala/swift,airspeedswift/swift,manavgabhawala/swift,cbrentharris/swift,brentdax/swift,JGiola/swift,brentdax/swift,arvedviehweger/swift,jmgc/swift,benlangmuir/swift,austinzheng/swift,kusl/swift,uasys/swift,amraboelela/swift,swiftix/swift,benlangmuir/swift,swiftix/swift.old,emilstahl/swift,amraboelela/swift,alblue/swift,tjw/swift,manavgabhawala/swift,rudkx/swift,huonw/swift,codestergit/swift,glessard/swift,danielmartin/swift,amraboelela/swift,khizkhiz/swift,gmilos/swift,shahmishal/swift,Jnosh/swift,sschiau/swift,felix91gr/swift,cbrentharris/swift,sschiau/swift,dduan/swift,OscarSwanros/swift,xedin/swift,tinysun212/swift-windows,mightydeveloper/swift,xedin/swift,johnno1962d/swift,sschiau/swift,gregomni/swift,MukeshKumarS/Swift,deyton/swift,karwa/swift,calebd/swift,ben-ng/swift,shajrawi/swift,hughbe/swift,nathawes/swift,swiftix/swift.old,CodaFi/swift,xwu/swift,sdulal/swift,jtbandes/swift,karwa/swift,modocache/swift,OscarSwanros/swift,mightydeveloper/swift,jckarter/swift,johnno1962d/swift,brentdax/swift,IngmarStein/swift,devincoughlin/swift,Ivacker/swift,johnno1962d/swift,dduan/swift,russbishop/swift,tardieu/swift,Ivacker/swift,tinysun212/swift-windows,frootloops/swift,sschiau/swift,kstaring/swift,SwiftAndroid/swift,JaSpa/swift,CodaFi/swift,MukeshKumarS/Swift,therealbnut/swift,austinzheng/swift,aschwaighofer/swift,glessard/swift,uasys/swift,return/swift,allevato/swift,rudkx/swift,jtbandes/swift,deyton/swift,parkera/swift,airspeedswift/swift,kperryua/swift,huonw/swift,CodaFi/swift,tkremenek/swift,nathawes/swift,milseman/swift,JGiola/swift,gregomni/swift,mightydeveloper/swift,amraboelela/swift,cbrentharris/swift,CodaFi/swift,LeoShimonaka/swift,felix91gr/swift,apple/swift,tardieu/swift,tkremenek/swift,KrishMunot/swift,kperryua/swift,hughbe/swift,jckarter/swift,danielmartin/swift,modocache/swift,kstaring/swift,gmilos/swift,tinysun212/swift-windows,cbrentharris/swift,djwbrown/swift,jckarter/swift,Jnosh/swift,gribozavr/swift,hooman/swift,manavgabhawala/swift,alblue/swift,IngmarStein/swift,frootloops/swift,roambotics/swift,mightydeveloper/swift,gottesmm/swift,jopamer/swift,ahoppen/swift,KrishMunot/swift,djwbrown/swift,danielmartin/swift,jtbandes/swift,manavgabhawala/swift,airspeedswift/swift,manavgabhawala/swift,gribozavr/swift,russbishop/swift,roambotics/swift,modocache/swift,jtbandes/swift,russbishop/swift,Ivacker/swift,glessard/swift,shajrawi/swift,LeoShimonaka/swift,austinzheng/swift,tardieu/swift,kperryua/swift,ben-ng/swift,sdulal/swift,slavapestov/swift,natecook1000/swift,kperryua/swift,shajrawi/swift,jckarter/swift,zisko/swift,arvedviehweger/swift,atrick/swift,modocache/swift,shajrawi/swift,devincoughlin/swift,practicalswift/swift,ken0nek/swift,OscarSwanros/swift,allevato/swift,ken0nek/swift,tardieu/swift,practicalswift/swift,natecook1000/swift,codestergit/swift,tinysun212/swift-windows,Ivacker/swift,atrick/swift,parkera/swift,therealbnut/swift,shajrawi/swift,slavapestov/swift,stephentyrone/swift,ahoppen/swift,ahoppen/swift,bitjammer/swift,kstaring/swift,Ivacker/swift,swiftix/swift.old,sschiau/swift,johnno1962d/swift,KrishMunot/swift,tardieu/swift,benlangmuir/swift,lorentey/swift,ken0nek/swift,shahmishal/swift,atrick/swift,xwu/swift,SwiftAndroid/swift,deyton/swift,roambotics/swift,allevato/swift,jtbandes/swift,alblue/swift,calebd/swift,roambotics/swift,benlangmuir/swift,kstaring/swift,OscarSwanros/swift,tkremenek/swift,xedin/swift,devincoughlin/swift,return/swift,SwiftAndroid/swift,practicalswift/swift,austinzheng/swift,bitjammer/swift,gottesmm/swift,CodaFi/swift,devincoughlin/swift,dduan/swift,shahmishal/swift,Jnosh/swift,dduan/swift,uasys/swift,OscarSwanros/swift,harlanhaskins/swift,gribozavr/swift,hooman/swift,hooman/swift,gottesmm/swift,slavapestov/swift,swiftix/swift.old,stephentyrone/swift,swiftix/swift,jopamer/swift,russbishop/swift,KrishMunot/swift,gregomni/swift,adrfer/swift,nathawes/swift,LeoShimonaka/swift,apple/swift,hughbe/swift,kperryua/swift,swiftix/swift,swiftix/swift.old,SwiftAndroid/swift,xedin/swift,dreamsxin/swift,codestergit/swift,practicalswift/swift,brentdax/swift,uasys/swift,emilstahl/swift,khizkhiz/swift,CodaFi/swift,adrfer/swift,hooman/swift,karwa/swift,mightydeveloper/swift,karwa/swift,Jnosh/swift,MukeshKumarS/Swift,sdulal/swift,LeoShimonaka/swift,russbishop/swift,jmgc/swift,MukeshKumarS/Swift,JGiola/swift,alblue/swift,gmilos/swift,OscarSwanros/swift,codestergit/swift,jmgc/swift,atrick/swift,gottesmm/swift,slavapestov/swift,huonw/swift,shajrawi/swift,Ivacker/swift,nathawes/swift,lorentey/swift,kentya6/swift,MukeshKumarS/Swift,airspeedswift/swift,khizkhiz/swift,ahoppen/swift,hooman/swift,gmilos/swift,therealbnut/swift,ahoppen/swift,tjw/swift,brentdax/swift