summaryrefslogtreecommitdiff
path: root/test/files/run/bcodeInlinerMixed/B_1.scala
blob: b26f2f1dd524df8ef182b0cbe28e2accb47714e7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// Since 1.0.18, partest does mixed compilation only in two stages 
//   1. scalac *.scala *.java
//   2. javac *.java
//
// Before it used to do a third stage
//   3. scalc *.scala
//
// Because he inliner doesn't has access to the bytecode of `bar`, it cannot verify whether the
// invocation of `bar` can be safely copied to a differnet place, so `flop` is not inlined to `B.g`
// or `C.h`.

class B {
  @inline final def flop = A_1.bar
  def g = flop
}
class C {
  def h(b: B) = b.flop
}