github.com/llvm-mirror/llgo@v0.0.0-20190322182713-bf6f0a60fce1/test/execution/slices/append.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: 3
     8  // CHECK-NEXT: 4
     9  // CHECK-NEXT: 5
    10  // CHECK-NEXT: 6
    11  // CHECK-NEXT: 7
    12  // CHECK-NEXT: 8
    13  // CHECK-NEXT: 9
    14  // CHECK-NEXT: 10
    15  // CHECK-NEXT: 11
    16  // CHECK-NEXT: 12
    17  // CHECK-NEXT: 13
    18  // CHECK-NEXT: 14
    19  // CHECK-NEXT: 15
    20  // CHECK-NEXT: 16
    21  // CHECK-NEXT: 17
    22  // CHECK-NEXT: 18
    23  // CHECK-NEXT: 19
    24  // CHECK-NEXT: 20
    25  // CHECK-NEXT: 21
    26  // CHECK-NEXT: 22
    27  // CHECK-NEXT: 23
    28  // CHECK-NEXT: 24
    29  // CHECK-NEXT: 25
    30  // CHECK-NEXT: 26
    31  // CHECK-NEXT: 27
    32  // CHECK-NEXT: 28
    33  // CHECK-NEXT: 29
    34  // CHECK-NEXT: 30
    35  // CHECK-NEXT: 31
    36  // CHECK-NEXT: 32
    37  // CHECK-NEXT: 33
    38  // CHECK-NEXT: 34
    39  // CHECK-NEXT: 35
    40  // CHECK-NEXT: 36
    41  // CHECK-NEXT: 37
    42  // CHECK-NEXT: 38
    43  // CHECK-NEXT: 39
    44  // CHECK-NEXT: 40
    45  // CHECK-NEXT: 41
    46  // CHECK-NEXT: 42
    47  // CHECK-NEXT: 43
    48  // CHECK-NEXT: 44
    49  // CHECK-NEXT: 45
    50  // CHECK-NEXT: 46
    51  // CHECK-NEXT: 47
    52  // CHECK-NEXT: 48
    53  // CHECK-NEXT: 49
    54  // CHECK-NEXT: 50
    55  // CHECK-NEXT: 51
    56  // CHECK-NEXT: 52
    57  // CHECK-NEXT: 53
    58  // CHECK-NEXT: 54
    59  // CHECK-NEXT: 55
    60  // CHECK-NEXT: 56
    61  // CHECK-NEXT: 57
    62  // CHECK-NEXT: 58
    63  // CHECK-NEXT: 59
    64  // CHECK-NEXT: 60
    65  // CHECK-NEXT: 61
    66  // CHECK-NEXT: 62
    67  // CHECK-NEXT: 63
    68  // CHECK-NEXT: 64
    69  // CHECK-NEXT: 65
    70  // CHECK-NEXT: 66
    71  // CHECK-NEXT: 67
    72  // CHECK-NEXT: 68
    73  // CHECK-NEXT: 69
    74  // CHECK-NEXT: 70
    75  // CHECK-NEXT: 71
    76  // CHECK-NEXT: 72
    77  // CHECK-NEXT: 73
    78  // CHECK-NEXT: 74
    79  // CHECK-NEXT: 75
    80  // CHECK-NEXT: 76
    81  // CHECK-NEXT: 77
    82  // CHECK-NEXT: 78
    83  // CHECK-NEXT: 79
    84  // CHECK-NEXT: 80
    85  // CHECK-NEXT: 81
    86  // CHECK-NEXT: 82
    87  // CHECK-NEXT: 83
    88  // CHECK-NEXT: 84
    89  // CHECK-NEXT: 85
    90  // CHECK-NEXT: 86
    91  // CHECK-NEXT: 87
    92  // CHECK-NEXT: 88
    93  // CHECK-NEXT: 89
    94  // CHECK-NEXT: 90
    95  // CHECK-NEXT: 91
    96  // CHECK-NEXT: 92
    97  // CHECK-NEXT: 93
    98  // CHECK-NEXT: 94
    99  // CHECK-NEXT: 95
   100  // CHECK-NEXT: 96
   101  // CHECK-NEXT: 97
   102  // CHECK-NEXT: 98
   103  // CHECK-NEXT: 99
   104  // CHECK-NEXT: 0
   105  // CHECK-NEXT: 1
   106  // CHECK-NEXT: 2
   107  // CHECK-NEXT: 3
   108  // CHECK-NEXT: 4
   109  // CHECK-NEXT: 5
   110  // CHECK-NEXT: 6
   111  // CHECK-NEXT: 7
   112  // CHECK-NEXT: 8
   113  // CHECK-NEXT: 9
   114  // CHECK-NEXT: 10
   115  // CHECK-NEXT: 11
   116  // CHECK-NEXT: 12
   117  // CHECK-NEXT: 13
   118  // CHECK-NEXT: 14
   119  // CHECK-NEXT: 15
   120  // CHECK-NEXT: 16
   121  // CHECK-NEXT: 17
   122  // CHECK-NEXT: 18
   123  // CHECK-NEXT: 19
   124  // CHECK-NEXT: 20
   125  // CHECK-NEXT: 21
   126  // CHECK-NEXT: 22
   127  // CHECK-NEXT: 23
   128  // CHECK-NEXT: 24
   129  // CHECK-NEXT: 25
   130  // CHECK-NEXT: 26
   131  // CHECK-NEXT: 27
   132  // CHECK-NEXT: 28
   133  // CHECK-NEXT: 29
   134  // CHECK-NEXT: 30
   135  // CHECK-NEXT: 31
   136  // CHECK-NEXT: 32
   137  // CHECK-NEXT: 33
   138  // CHECK-NEXT: 34
   139  // CHECK-NEXT: 35
   140  // CHECK-NEXT: 36
   141  // CHECK-NEXT: 37
   142  // CHECK-NEXT: 38
   143  // CHECK-NEXT: 39
   144  // CHECK-NEXT: 40
   145  // CHECK-NEXT: 41
   146  // CHECK-NEXT: 42
   147  // CHECK-NEXT: 43
   148  // CHECK-NEXT: 44
   149  // CHECK-NEXT: 45
   150  // CHECK-NEXT: 46
   151  // CHECK-NEXT: 47
   152  // CHECK-NEXT: 48
   153  // CHECK-NEXT: 49
   154  // CHECK-NEXT: 50
   155  // CHECK-NEXT: 51
   156  // CHECK-NEXT: 52
   157  // CHECK-NEXT: 53
   158  // CHECK-NEXT: 54
   159  // CHECK-NEXT: 55
   160  // CHECK-NEXT: 56
   161  // CHECK-NEXT: 57
   162  // CHECK-NEXT: 58
   163  // CHECK-NEXT: 59
   164  // CHECK-NEXT: 60
   165  // CHECK-NEXT: 61
   166  // CHECK-NEXT: 62
   167  // CHECK-NEXT: 63
   168  // CHECK-NEXT: 64
   169  // CHECK-NEXT: 65
   170  // CHECK-NEXT: 66
   171  // CHECK-NEXT: 67
   172  // CHECK-NEXT: 68
   173  // CHECK-NEXT: 69
   174  // CHECK-NEXT: 70
   175  // CHECK-NEXT: 71
   176  // CHECK-NEXT: 72
   177  // CHECK-NEXT: 73
   178  // CHECK-NEXT: 74
   179  // CHECK-NEXT: 75
   180  // CHECK-NEXT: 76
   181  // CHECK-NEXT: 77
   182  // CHECK-NEXT: 78
   183  // CHECK-NEXT: 79
   184  // CHECK-NEXT: 80
   185  // CHECK-NEXT: 81
   186  // CHECK-NEXT: 82
   187  // CHECK-NEXT: 83
   188  // CHECK-NEXT: 84
   189  // CHECK-NEXT: 85
   190  // CHECK-NEXT: 86
   191  // CHECK-NEXT: 87
   192  // CHECK-NEXT: 88
   193  // CHECK-NEXT: 89
   194  // CHECK-NEXT: 90
   195  // CHECK-NEXT: 91
   196  // CHECK-NEXT: 92
   197  // CHECK-NEXT: 93
   198  // CHECK-NEXT: 94
   199  // CHECK-NEXT: 95
   200  // CHECK-NEXT: 96
   201  // CHECK-NEXT: 97
   202  // CHECK-NEXT: 98
   203  // CHECK-NEXT: 99
   204  // CHECK-NEXT: 1
   205  // CHECK-NEXT: 2
   206  // CHECK-NEXT: 3
   207  // CHECK-NEXT: abcdef
   208  // CHECK-NEXT: true
   209  // CHECK-NEXT: true
   210  // CHECK-NEXT: false false
   211  // CHECK-NEXT: true true
   212  // CHECK-NEXT: false false
   213  
   214  package main
   215  
   216  func stringtobytes() {
   217  	var b []byte
   218  	b = append(b, "abc"...)
   219  	b = append(b, "def"...)
   220  	println(string(b))
   221  }
   222  
   223  func appendnothing() {
   224  	var x []string
   225  	println(append(x) == nil)
   226  	x = append(x, "!")
   227  	println(len(append(x)) == 1)
   228  }
   229  
   230  func appendmulti() {
   231  	a := append([]bool{}, []bool{false, true, false}...)
   232  	b := append([]bool{}, false, true, false)
   233  	for i := range a {
   234  		println(a[i], b[i])
   235  	}
   236  }
   237  
   238  func main() {
   239  	x := []int{}
   240  	for i := 0; i < 100; i++ {
   241  		x = append(x, i)
   242  	}
   243  	for i := 0; i < len(x); i++ {
   244  		println(x[i])
   245  	}
   246  	y := []int{1, 2, 3}
   247  	x = append(x, y...)
   248  	for i := 0; i < len(x); i++ {
   249  		println(x[i])
   250  	}
   251  	stringtobytes()
   252  	appendnothing()
   253  	appendmulti()
   254  }