title: Overriding a computed property that returns an Optional value with one that returns a non-Optional
body: <p>The following compiles and runs with no issue on my Xcode 9.2 running Swift 4:</p>
  
  <pre><code>class ParentWithComputedOptional {
      var computedOptional: Int? { return nil }
  }
  
  class ChildThatUnwraps: ParentWithComputedOptional {
      override var computedOptional: Int { return 10 }
  }
  </code></pre>
  
  <p>Notice that in the parent, <code>computedOptional</code> is an <code>Int?</code>, but in the child it is overridden to be an <code>Int</code>. Furthermore, the <code>override</code> keyword has to be specified for the code to compile. This was tested on both Playground and a proper project.</p>
  
  <p>Is this expected behaviour? If yes, is there a relevant page in Apple's documentation for this scenario?</p>