<html>
  <head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
I'm looking at the docs<div><a href="https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/Initialization.html#//apple_ref/doc/uid/TP40014097-CH18-ID203" target="_blank" rel="noopener noreferrer">https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/Initialization.html#//apple_ref/doc/uid/TP40014097-CH18-ID203</a><br /></div><div><br /></div><div>1st they say</div><div><br /></div><div>&quot;A failable initializer can also delegate to a nonfailable initializer. Use this approach if you need to add a potential failure state to an existing initialization process that does not otherwise fail.&quot;</div><div><br /></div><div>2nd they say</div><div><br /></div><div>&quot;You can override a failable initializer with a nonfailable initializer but not the other way around.&quot;</div><div><br /></div><div>This is not strictly conflicting info. But what is so special about OVERRIDDEN intializers? What is a good reason for why we cannot override a nonfailable initializer with a failable initializer? There must be some intuitive explanation that I'm missing.</div><div><br /></div><div>To clarify what I mean, here is the &quot;conflict&quot; I'm talking about:</div><div><br /></div><div>According to the 1st, this is possible:</div><div><br /></div><div>FAILABLE calls super.NONFAILABLE</div><div><br /></div><div>But according to the 2nd, 1st is only possible if FAILABLE does not OVERRIDE super.NONFAILABLE.</div><div><br /></div>  </body>
</html>