Revert "self_downcast never deals in address-only types."
Revert "self_downcast never deals in address-only types."

This reverts commit a877f20420b14a7f053d6496d43b20689631ac4b.

Swift SVN r12399

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