title: 'Object' is not convertible to 'T' using Generics in Swift
body: <p>I'm getting an error message when trying to use Generics in Swift.  I'm trying to create a function that takes any object that inherits from <code>Parent</code>, and modify an <code>inout</code> reference which just so happens to be an <code>Array</code> of <code>T: Parent</code></p>
  
  <pre><code>func myFunction&lt;T: Parent&gt;(data: NSDictionary, inout objects: Array&lt;T&gt;) {
      let myArray = data.valueForKey("the_array") as NSArray
  
      for object in myArray {
          var addMe: Object = Object()
          //...
  
          objects.append(addMe) //'Object' is not convertible to 'T'
      }
  
  }
  </code></pre>
  
  <p>I'm passing this into the function higher up the stack.</p>
  
  <pre><code>var objects: [Object] = []
  
  myClass.myFunction(data, objects: &amp;objects)
  </code></pre>
  
  <p>Even though <code>Object</code> is defined as follows, inheriting from <code>Parent</code></p>
  
  <pre><code>class Object: Parent {
      //...
  }
  </code></pre>
  
  <p>It gives me an error that it can't convert <code>Object</code> to <code>T</code>.. although I'm probably mis-interpreting the error message. Does anyone see what I'm doing wrong?</p>