aboutsummaryrefslogtreecommitdiff
path: root/tests/pos/annot.scala
blob: dec6af94564cf25a850c3d38996aa11ef82c8a56 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import java.beans.Transient
import annotation.unchecked.uncheckedVariance

class Test {

// testing combinations of annotation syntax

  @SuppressWarnings(Array("hi")) def foo() = ??? // evalutation of annotation on type cannot be deferred as requires implicit resolution(only generic Array$.apply applies here)

  @SuppressWarnings(Array("hi", "foo")) def foo2() = ??? //can be deferred as there is a non-generic method

  @SuppressWarnings(Array("hi")) def foo3() = ??? // can be written in java and is serialized this way in bytecode. doesn't typecheck

  @Transient(false) def bar = ???

  @Transient() def baz = ???

// testing annotations in types

  class A
  trait B

  val x: A @uncheckedVariance with B @uncheckedVariance = ???

  class C extends A @uncheckedVariance () with B @uncheckedVariance { val x = 10 }

}