title: Why can't Swift initializers call convenience initializers on their superclass?
body: <p>Consider the two classes:</p>
  
  <pre><code>class A {
      var x: Int
  
      init(x: Int) {
          self.x = x
      }
  
      convenience init() {
          self.init(x: 0)
      }
  }
  
  class B: A {
      init() {
          super.init() // Error: Must call a designated initializer of the superclass 'A'
      }
  }
  </code></pre>
  
  <p>I don't see why this isn't allowed. Ultimately, each class's designated initializer is called with any values they need, so why do I need to repeat myself in <code>B</code>'s <code>init</code> by specifying a default value for <code>x</code> again, when the convenience <code>init</code> in <code>A</code> will do just fine?</p>