aboutsummaryrefslogtreecommitdiff
path: root/tests/run/inlinePower/power_1.scala
blob: 1faa10516f9fd49032592a8e7260138a57b813de (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
package p

object pow {

  @dotty.annotation.inline
  def power(x: Double, n: Int): Double =
    if (n == 0) 1.0
    else if (n == 1) x
    else {
      val y = power(x, n / 2)
      if (n % 2 == 0) y * y else y * y * x
    }
}