Commits

Chris Lattner committed ab43e444d6a
Rework processing of @noescape closures a bit to fix rdar://19981118: - Have Sema, not SILGen decide if a vardecl can be captured by address instead of by-box. This is a non-local property that is best computed during capture set formation. Sema captures this as a bit on the new CapturedValue entry. - Rework some diagnostic emission to centralize a class of noescape diagnostics in capture set calculation. Previously, funcdecl closures produced their diagnostics there, but ClosureExprs produced them in MiscDiagnostics (NFC for this part). This fixes <rdar://problem/19981118> Swift 1.2 beta 2: Closures nested in @noescape closures copy, rather than reference, captured vars. Swift SVN r25759