object Test {
  ~{
    println("!")
    1
  }

  +{
    println("!")
    1
  }

  -{
    println("!")
    1
  }

  !{
    println("!")
    true
  }

  { println("1"); 1 } + { println("2"); 2}

  !(try true finally{()})
}
object Test {

  ~{
    println("!")
    1
  }

  +{
    println("!")
    1
  }

  -{
    println("!")
    1
  }

  !{
    println("!")
    true
  }

  { println("1"); 1 } + { println("2"); 2}

  !(try true finally{()})


  class C {
    def foo: 1 = 1
  }

  { println("!"); new C }.foo

}
Add test with user-defined constant unary operators
Add test with user-defined constant unary operators

Add test showing that user-defined unary operators do not cause a problem,
even if they have constant types.
