github.com/neugram/ng@v0.0.0-20180309130942-d472ff93d872/eval/testdata/defer3.ng (about)

     1  n := 0
     2  
     3  func f1() {
     4  	n++
     5  }
     6  
     7  func f2() {
     8  	n *= 3
     9  }
    10  
    11  func g() {
    12  	n += 2
    13  	defer f1()
    14  	defer f2()
    15  	n++
    16  }
    17  
    18  n = 0
    19  g()
    20  if n != 10 {
    21  	panic("ERROR 1")
    22  }
    23  
    24  n = 1
    25  g()
    26  if n != 13 {
    27  	panic("ERROR 2")
    28  }
    29  
    30  n = 0
    31  g()
    32  if n != 10 {
    33  	panic("ERROR 3")
    34  }
    35  
    36  print("OK")