Skip to content

Incorrect expectations in LanguageFeatures/Enhanced-Enum/semantics_A06_t02 #1245

@alexmarkov

Description

@alexmarkov

This test incorrectly tests type parameter of enum values:

enum E<T extends A> {
e1<A>(),
e2<B>(),
e3<C>();
}
main() {
Expect.isTrue(E.values[0] is A);
Expect.isFalse(E.values[0] is B);
Expect.isFalse(E.values[0] is C);
Expect.isTrue(E.values[1] is A);
Expect.isFalse(E.values[1] is B);
Expect.isFalse(E.values[1] is C);
Expect.isTrue(E.values[2] is A);
Expect.isFalse(E.values[2] is B);
Expect.isFalse(E.values[2] is C);
}

E.values[0], E.values[1], E.values[2] are enum values e1, e2 and e3 and have types E<A>, E<B> and E<C>. They are not instances of classes A, B, C, so is tests against those classes result in false.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions