swiftlang/swift

[SR-8536] Warn on member assignments capturing self

Ouverte

#51 055 ouverte le 14 août 2018

 (2 commentaires) (0 réaction) (0 personne assignée)Swift (10 719 forks)batch import
compilergood first issueimprovementtype checker

Métriques du dépôt

Stars
 (69 989 étoiles)
Métriques de merge PR
 (Métriques PR en attente)

Description

Previous ID SR-8536
Radar None
Original Reporter @CodaFi
Type Improvement
Votes 2
Component/s Compiler
Labels Improvement, StarterBug, TypeChecker
Assignee tt (JIRA)
Priority Medium

md5: cb331d15432b248f57b7b7bce4d077f7

Issue Description:

class Foo {
  let bar: () -> ()

  func baz() {}

  init() {
    self.bar = baz // We oughta warn about capturing 'self' implicitly.
  }
}

In the example above, we should warn about capturing `self` implicitly and, rather than suggest the user make it explicit, probably offer a fixit that provides a closure with a weak or unowned capture.

Guide contributeur