title: self.dynamicType not work for Generic type in Swift?
body: <p>I tried to use Generic type in Swift, but I found that it is not working well with inheritance and override. Here is an code example:</p>
  <pre><code>class A {
      class var test: String{
          return getName()
      }
      class func getName() -&gt; String {
          return &quot;I'm class A&quot;
      }
      func doSomething() -&gt; Void {
          println(self.dynamicType.test)
      }
  }
  class B : A {
      override class func getName() -&gt; String {
          return &quot;I'm class B&quot;
      }
  }
  class C&lt;T: A&gt; {
      func doSomething() -&gt; Void {
          var x = T()
          x.doSomething()
      }
  }
  var c = C&lt;B&gt;()
  c.doSomething()//This line prints out &quot;I'm class A&quot;
  </code></pre>
  <p>
  Looks like even I specified the type as class B when creating the instance of class C, the new instance created with Generic type T still in type class A.
  </p>
  <p>
  There is an similar question here:
  </p>
  <p>
  http://stackoverflow.com/questions/27899744/wrong-generic-type-in-swift
  But no answer/solution yet, is this a bug of Swift?
  </p>