github.com/llvm-mirror/llgo@v0.0.0-20190322182713-bf6f0a60fce1/test/execution/maps/range.go (about)

     1  // RUN: llgo -o %t %s
     2  // RUN: %t 2>&1 | FileCheck %s
     3  
     4  // CHECK: 0
     5  // CHECK-NEXT: 1
     6  // CHECK-NEXT: 2
     7  // CHECK-NEXT: 0
     8  // CHECK-NEXT: 1
     9  // CHECK-NEXT: 2
    10  // CHECK-NEXT: 3
    11  // CHECK-NEXT: 4
    12  // CHECK-NEXT: 5
    13  // CHECK-NEXT: 0 3
    14  // CHECK-NEXT: 1 4
    15  // CHECK-NEXT: 2 5
    16  // CHECK-NEXT: 1
    17  // CHECK-NEXT: done
    18  
    19  package main
    20  
    21  func main() {
    22  	defer println("done")
    23  	m := make(map[int]int)
    24  	m[0] = 3
    25  	m[1] = 4
    26  	m[2] = 5
    27  	for k := range m {
    28  		println(k)
    29  	}
    30  	for k, _ := range m {
    31  		println(k)
    32  	}
    33  	for _, v := range m {
    34  		println(v)
    35  	}
    36  	for k, v := range m {
    37  		println(k, v)
    38  	}
    39  
    40  	// test deletion.
    41  	i := 0
    42  	for k, _ := range m {
    43  		i++
    44  		delete(m, (k+1)%3)
    45  		delete(m, (k+2)%3)
    46  	}
    47  	println(i)
    48  }