/* | |
* Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | |
* for details. All rights reserved. Use of this source code is governed by a | |
* BSD-style license that can be found in the LICENSE file. | |
*/ | |
/** | |
* @assertion Equality expressions test objects for equality. | |
* equalityExpression: | |
* relationalExpression (equalityOperator relationalExpression)? | | |
* super equalityOperator relationalExpression | |
* ; | |
* equalityOperator: | |
* '==' | | |
* '!=' | |
* ; | |
* An equality expression is either a relational expression, or an invocation of | |
* an equality operator on either super or an expression e1, with argument e2. | |
* @description Checks that super can be used only as the first operand | |
* of an equality expression. | |
* @compile-error | |
* @author msyabro | |
* @reviewer kaigorodov | |
*/ | |
class S {} | |
class A extends S { | |
test() { | |
try { | |
1 == super; | |
} catch (e) {} | |
} | |
} | |
main() { | |
A a = new A(); | |
a.test(); | |
} |