jdk-24/test/langtools/tools/javac/ConditionalWithVoid.java

17 lines
664 B
Java
Raw Normal View History

2007-12-01 00:00:00 +00:00
/*
* @test /nodynamiccopyright/
* @bug 4974927 8064464
2007-12-01 00:00:00 +00:00
* @summary The compiler was allowing void types in its parsing of conditional expressions.
* @author tball
*
* @compile/fail/ref=ConditionalWithVoid.out -XDrawDiagnostics ConditionalWithVoid.java
2007-12-01 00:00:00 +00:00
*/
public class ConditionalWithVoid {
public void test(Object o) {
// Should fail to compile since Object.wait() has a void return type. Poly case.
2007-12-01 00:00:00 +00:00
System.out.println(o instanceof String ? o.hashCode() : o.wait());
// Should fail to compile since Object.wait() has a void return type. Standalone case.
(o instanceof String ? o.hashCode() : o.wait()).toString();
2007-12-01 00:00:00 +00:00
}
}