Consider this code:
-----
import java.util.Collection;
import java.util.List;
public final class ModelUtils {
    public static void getNamespaceScope(Collection<? extends CharSequence> l) {
        getFirst(filter(l));
    }
    public static <T> T getFirst(Collection<? extends T> all) {
        return null;
    }
    public static <T extends CharSequence> T getFirst(Collection<T> allElements, String... elementName) {
        return null;
    }
    public static <T extends CharSequence> List<? extends T> filter(Collection<T> allElements) {
        return null;
    }
}
-----
Compiling using langtools with fix for JDK-8044546 yields:
-----
$ javac ModelUtils.java 
ModelUtils.java:7: error: incompatible types: cannot infer type-variable(s) T#1,CAP#1,T#2
        getFirst(filter(l));
                ^
    (argument mismatch; List<CAP#2> cannot be converted to Collection<? extends CAP#2>)
  where T#1,T#2 are type-variables:
    T#1 extends Object declared in method <T#1>getFirst(Collection<? extends T#1>)
    T#2 extends CharSequence declared in method <T#2>filter(Collection<T#2>)
  where CAP#1,CAP#2,CAP#3 are fresh type-variables:
    CAP#1 extends T#2 from capture of ? extends T#2
    CAP#2 extends CAP#3 from capture of ? extends T#2
    CAP#3 extends CharSequence from capture of ? extends CharSequence
1 error
-----
Compiling using langtools before the fix for JDK-8044546 passes: