blob: c6f4b10fb2b8a385f3b08652f933374fba9adb3f [file] [log] [blame]
// 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 Unary expressions invoke unary operators on objects.
* unaryExpression:
* prefixOperator unaryExpression |
* awaitExpression |
* postfixExpression |
* (minusOperator | tildeOperator) super |
* incrementOperator assignableExpression
* ;
* prefixOperator:
* minusOperator |
* negationOperator |
* tildeOperator
* ;
* minusOperator:
* ‘-’ |
* ;
* negationOperator:
* ‘!’ |
* ;
* tildeOperator:
* ‘˜’
* ;
* A unary expression is either a postfix expression, an await expression or
* an invocation of a prefix operator on an expression or an invocation of a
* unary operator on either super or an expression e.
* @description Checks that incrementOperator can't be used with an unary
* expression of the form -e.
* @compile-error
* @author msyabro
*/
main() {
var x = 1;
++-x;
}