anchor.diff:      expect(operand.propertyName.name, "x");
     }
   
  +  void test_parseUnaryExpression_minus_identifier_index() {
  +    PrefixExpression expression = parseExpression('-a[0]');
  +    expect(expression, isNotNull);
  +    assertNoErrors();
  +    expect(expression.operator, isNotNull);
  +    expect(expression.operator.type, TokenType.MINUS);
  +    expect(expression.operand, isNotNull);
  +    IndexExpression operand = expression.operand as IndexExpression;
  +    expect(operand.realTarget, const TypeMatcher<SimpleIdentifier>());
  +    expect(operand.index is IntegerLiteral, isTrue);
  +  }
  +
     void test_parseUnaryExpression_minus_normal() {
       PrefixExpression expression = parseUnaryExpression('-x');
       expect(expression, isNotNull);
  
positive.code:     expect(operand.operand, isNotNull);
    }
  
    void test_parseUnaryExpression_increment_normal() {
      PrefixExpression expression = parseUnaryExpression('++x');
      expect(expression, isNotNull);
  
negative.code:     expect(expression.operator, isNotNull);
      expect(expression.operator.type, TokenType.TILDE);
      expect(expression.operand, isNotNull);
    }
  
    void test_parseUnaryExpression_tilde_identifier_index() {
      PrefixExpression expression = parseExpression('~a[0]');
      expect(expression, isNotNull);
      assertNoErrors();
      expect(expression.operator, isNotNull);
      expect(expression.operator.type, TokenType.TILDE);
      expect(expression.operand, isNotNull);
      IndexExpression operand = expression.operand as IndexExpression;
      expect(operand.realTarget, const TypeMatcher<SimpleIdentifier>());
      expect(operand.index is IntegerLiteral, isTrue);
    }
  }
  
  