[SIL] Adjust lowering to account for default expr having type different from parameter
[SIL] Adjust lowering to account for default expr having type different from parameter

Use `getTypeOfDefaultExpr()` to fetch a type associated with default expression
if any. This could only happen in situations where it's acceptable to infer type
of generic parameter(s) associated with parameter from default expression.

glessard/swift,atrick/swift,rudkx/swift,ahoppen/swift,gregomni/swift,atrick/swift,JGiola/swift,glessard/swift,benlangmuir/swift,ahoppen/swift,ahoppen/swift,JGiola/swift,rudkx/swift,atrick/swift,rudkx/swift,ahoppen/swift,benlangmuir/swift,apple/swift,roambotics/swift,gregomni/swift,roambotics/swift,benlangmuir/swift,roambotics/swift,roambotics/swift,gregomni/swift,rudkx/swift,benlangmuir/swift,gregomni/swift,apple/swift,atrick/swift,JGiola/swift,atrick/swift,apple/swift,roambotics/swift,gregomni/swift,atrick/swift,benlangmuir/swift,glessard/swift,gregomni/swift,JGiola/swift,ahoppen/swift,glessard/swift,apple/swift,glessard/swift,JGiola/swift,rudkx/swift,ahoppen/swift,apple/swift,roambotics/swift,JGiola/swift,apple/swift,rudkx/swift,benlangmuir/swift,glessard/swift