title: maven refuses to compile generic class due to bounds, even after casting class
body: <p>Here is a simplified version of the code I'm using to hold a generic list of children to a parent.  Forgive me for having to rewrite this by hand instead of copy-past, There is no way to copy from machine with the issue.</p>
  
  <pre><code>MyObject&lt;childType extends MyObject&gt; {}
  
  public class Model{
  
  
    HashMap&lt;MyObject, Set&lt;MyObject&gt;&gt; store= new HashMap&lt;MyObject, Set&lt;MyObject&gt;&gt;()
  
  
    public &lt;childType extends MyObject&gt; Set&lt;childType&gt; getChildren(MyObject&lt;childType&gt; parent)
    {
  
       return (Set&lt;childType&gt;) store.get(parent);
    }
  
  
  
    public void &lt;T extends MyObject&lt;?&gt;&gt; addChild(MyObject&lt;T&gt; parent, T child){
       Set&lt;MyObject&gt; childSet=store.get(parent);
  
       if(childSet==null){
          childSet=new Set&lt;MyObject&gt;();
          store.put(parent, childSet);
       }
  
       childSet.add(child);
   }
  </code></pre>
  
  <p>This builds in Eclipse without issue.  However, if I clean my class files and run a maven install I get the following error:</p>
  
  <pre><code>the parameter childType is not within its bound
  </code></pre>
  
  <p>The error occures on the definition on getChildren.  Though I have previously had a different, but similar, issue before I had paramertized the store and was casting to Set in the class calling to the store.</p>
  
  <p>I understand why such an exception would occure in general, if I wasn't casting.  What has me confused is that I <em>am</em> casting.  I don't understand why it will throw an error and stop compiling rather then accepting the cast as my saying "jsut trust me, it's right" and moving on.</p>
  
  <p>I believe I"m using mavin-compile-pluging version 1.6 if that matters.</p>
  
  <p>ps. I have no idea whey the formatting for my code example is so ugly.  If anyone can fix it or tell me how to fix it I would appreciate it.  I've never had that issue before...</p>