IRGen: Don't assert out when a generic class conforms to a protocol.
IRGen: Don't assert out when a generic class conforms to a protocol.

Fixes <rdar://problem/15420374>.

Swift SVN r10040

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