blob: 5da4141001b17df4e602dc7550ce0fddfd700de4 [file] [log] [blame]
import org.checkerframework.framework.testchecker.util.*;
class ListOuter<T> {}
public class InnerGenerics {
class ListInner<T> {}
void testInner1() {
// :: warning: (cast.unsafe.constructor.invocation)
@Odd ListOuter<String> o = new @Odd ListOuter<String>();
// :: warning: (cast.unsafe.constructor.invocation)
@Odd ListInner<String> i = new @Odd ListInner<String>();
}
void testInner2() {
// :: error: (assignment)
@Odd ListOuter<String> o = new ListOuter<>();
// :: error: (assignment)
@Odd ListInner<String> i = new ListInner<>();
}
void testInner3() {
ListOuter<@Odd String> o = new ListOuter<>();
ListInner<@Odd String> i = new ListInner<>();
}
void testInner4() {
// :: error: (assignment)
ListOuter<@Odd String> o = new ListOuter<String>();
// :: error: (assignment)
ListInner<@Odd String> i = new ListInner<String>();
}
}