title: Struct cannot have stored property that references itself but it can have an array of the same type
body: <p>In swift this fails</p>
  
  <pre><code>struct Node {
    var val: String
    var parent: Node
  }
  </code></pre>
  
  <p>with error
  error: value type 'Node' cannot have a stored property that recursively contains it</p>
  
  <p>but this works</p>
  
  <pre><code>struct Node {
    var val: String
    var parent: [Node]
  }
  </code></pre>
  
  <p>What is the reasoning behind this behavior?</p>