title: Java Generics: Who is right, javac or Eclipse compile?
body: <p>Calling this method:</p>
  
  <pre><code>public static @Nonnull &lt;TV, TG extends TV&gt; Maybe&lt;TV&gt; something(final @Nonnull TG value) {
      return new Maybe&lt;TV&gt;(value);
  }
  </code></pre>
  
  <p>like this:</p>
  
  <pre><code>public @Nonnull Maybe&lt;Foo&gt; visit() {
      return Maybe.something(new BarExtendsFoo());
  }
  </code></pre>
  
  <p>compiles just fine in Eclipse, but javac gives an "incompatable types" warning:</p>
  
  <pre><code>found   : BarExtendsFoo
  </code></pre>
  
  <p>required: Foo</p>