blob: e60c440b6f69fd975db35b9d0bbabb1ec04e935a [file] [log] [blame]
// operators applicability
public class a {
int f(int ik) {
if (<error descr="Operator '<' cannot be applied to 'int', 'null'">1 < null</error>) {}
if (<error descr="Operator '==' cannot be applied to 'null', 'char'">null == 'c'</error>) {}
Object o = null;
if (<error descr="Operator '>=' cannot be applied to 'double', 'java.lang.Object'">1.2 >= o</error>) {}
if (<error descr="Operator '!=' cannot be applied to 'long', 'java.lang.String'">1L != "null"</error>) {}
if (<error descr="Operator '==' cannot be applied to 'boolean', 'int'">(1==2) == 3</error>) {}
int i = (<error descr="Operator '+' cannot be applied to 'int', 'null'">1 + null</error>);
i = <error descr="Operator '/' cannot be applied to 'java.lang.Object', 'java.lang.Object'">o/o</error>;
i = <error descr="Operator '-' cannot be applied to 'null', 'double'">null - 1.2</error>;
i = <error descr="Operator '%' cannot be applied to 'boolean', 'int'">true % 4</error>;
i = <error descr="Operator '<<' cannot be applied to 'int', 'java.lang.Object'">i << o</error>;
i = <error descr="Operator '>>' cannot be applied to 'boolean', 'null'">(i==2) >> null</error>;
i = <error descr="Operator '>>>' cannot be applied to 'int', 'double'">i >>> 2.2</error>;
i = <error descr="Operator '&' cannot be applied to 'int', 'java.lang.Object'">i & o</error>;
i = <error descr="Operator '|' cannot be applied to 'boolean', 'double'">true | 2.1</error>;
i = <error descr="Operator '&&' cannot be applied to 'int', 'int'">2 && 3</error>;
i = <error descr="Operator '||' cannot be applied to 'double', 'long'">3.8 || 2L</error>;
i = <error descr="Operator '||' cannot be applied to 'null', 'java.lang.Object'">null || o</error>;
<error descr="Operator '|' cannot be applied to 'int', 'null'">i |= null</error>;
double d = 0;
<error descr="Operator '&' cannot be applied to 'double', 'int'">d &= i</error>;
<error descr="Operator '/' cannot be applied to 'java.lang.Object', 'int'">o /= 3</error>;
String sss2 = <error descr="Operator '+' cannot be applied to 'java.lang.String', 'void'">"" + fvoid()</error>;
int sss1 = <error descr="Operator '+' cannot be applied to 'void', 'int'">fvoid() + 2</error>;
int ia[] = null;
boolean b = 1==3 || 3 < '4' && (1>3.5) == (o == null) || false || (o == "d");
b = (1 != 'f') == (3.4 >= 'x') && o!=null & (b | (3<4));
i = i & 2 | i>>i ^ 15>>>4 & ~ia[i-- + (int)d] - (int)d;
b |= (i &= 7) == 5 | (null == null);
d *= (i -= 3) / 13.4;
ia[0]++;
ia[~i | (i+=(!b?2:i))] -= i + 3.3;
// Object += String
<error descr="Operator '+' cannot be applied to 'java.lang.Object', 'java.lang.String'">o += o + "string"</error>;
return 0;
}
void fvoid() {}
}
class Test
{
public void test(TestB a)
{
if(a == this)
{
System.out.println("a is equals to this");
}
}
public static interface TestB
{
public void bla();
}
}