Files
openide/java/java-tests/testData/codeInsight/daemonCodeAnalyzer/genericsHighlighting/IDEA76283.java
Tagir Valeev c449c341b7 [java-highlighting] test-data adjusted (mostly anchors) after recent updates
Part of IDEA-365344 Create a new Java error highlighter with minimal dependencies (PSI only)

GitOrigin-RevId: 1e1b77009dc78de49c7cc5c44d4704937397bb23
2025-01-29 11:35:30 +00:00

50 lines
2.5 KiB
Java

import java.util.*;
class IDEA76283 {
}
interface Parametrized<T extends Number> {
}
class Bug1<T extends Number> {
<I extends Number> Parametrized<I> foo(Parametrized<I> param) {
return null;
}
void bug1(Parametrized<? super T> param) {
foo(param);
}
void bug2(Set<Parametrized<? extends Number>> parametrizeds) {
Set<Parametrized<?>> items = parametrizeds;
}
void bug3(Set<Parametrized<?>> parametrizeds) {
Set<Parametrized<?>> items = parametrizeds;
}
void bug4(Set<Parametrized<<error descr="Type parameter '? extends String' is not within its bound; should extend 'java.lang.Number'">? extends String</error>>> parametrizeds) {
Set<Parametrized<?>> items = <error descr="Incompatible types. Found: 'java.util.Set<Parametrized<? extends java.lang.String>>', required: 'java.util.Set<Parametrized<?>>'">parametrizeds</error>;
}
void bug5(Set<Parametrized<? extends Integer>> parametrizeds) {
Set<Parametrized<?>> items = <error descr="Incompatible types. Found: 'java.util.Set<Parametrized<? extends java.lang.Integer>>', required: 'java.util.Set<Parametrized<?>>'">parametrizeds</error>;
}
void bug6(Set<Parametrized<? super Number>> parametrizeds) {
Set<Parametrized<?>> items = <error descr="Incompatible types. Found: 'java.util.Set<Parametrized<? super java.lang.Number>>', required: 'java.util.Set<Parametrized<?>>'">parametrizeds</error>;
}
void bug7(Set<Parametrized<? super Integer>> parametrizeds) {
Set<Parametrized<?>> items = <error descr="Incompatible types. Found: 'java.util.Set<Parametrized<? super java.lang.Integer>>', required: 'java.util.Set<Parametrized<?>>'">parametrizeds</error>;
}
void bug8(Set<Parametrized<<error descr="Type parameter '? super String' is not within its bound; should extend 'java.lang.Number'">? super String</error>>> parametrizeds) {
Set<Parametrized<?>> items = <error descr="Incompatible types. Found: 'java.util.Set<Parametrized<? super java.lang.String>>', required: 'java.util.Set<Parametrized<?>>'">parametrizeds</error>;
}
void bug9(Set<Parametrized<<error descr="Type parameter '? super Object' is not within its bound; should extend 'java.lang.Number'">? super Object</error>>> parametrizeds) {
Set<Parametrized<?>> items = <error descr="Incompatible types. Found: 'java.util.Set<Parametrized<? super java.lang.Object>>', required: 'java.util.Set<Parametrized<?>>'">parametrizeds</error>;
}
}