summaryrefslogtreecommitdiff
path: root/test/files/pos/t8954/t2.scala
blob: c178486bc98bc4fcaf515463cee98e7391ca9ebf (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
29
30
31
32
33
34
35
36
37
38
39
package scala.foo

// 1.2 deprecated children should be fine...
@deprecated("", "") class B extends A {

  // 1.3 and shouldn't trigger the
  // "overriding non-deprecated parent" warning
  override def foo(): Unit = ???
}

@deprecated("","") class F {
  // 1.4 a class inside a deprecated class should work too
  class G extends A
}

// 2. a method about to be made final
class C {
  @deprecatedOverriding def foo(): Unit = ???
}

// 2.1 overriding with a deprecated def should be fine
// and also should not trigger the "deprecation is useless"
// warning
class D extends C {
  @deprecated("","") override def foo(): Unit = ???
}

// 2.2 overriding from a deprecated class should be fine
@deprecated("","") class E extends C {
  override def foo(): Unit = ???
}

// 2.3 overriding from deeper inside a deprecated class
// should work too
@deprecated("","") class H {
  class I extends C {
    override def foo(): Unit = ???
  }
}