]> Cypherpunks.ru repositories - gostls13.git/blob - test/const8.go
cmd/compile/internal/inline: score call sites exposed by inlines
[gostls13.git] / test / const8.go
1 // run
2
3 // Copyright 2022 The Go Authors. All rights reserved.
4 // Use of this source code is governed by a BSD-style
5 // license that can be found in the LICENSE file.
6
7 // Test that identifiers in implicit (omitted) RHS
8 // expressions of constant declarations are resolved
9 // in the correct context; see issues #49157, #53585.
10
11 package main
12
13 const X = 2
14
15 func main() {
16         const (
17                 A    = iota // 0
18                 iota = iota // 1
19                 B           // 1 (iota is declared locally on prev. line)
20                 C           // 1
21         )
22         if A != 0 || B != 1 || C != 1 {
23                 println("got", A, B, C, "want 0 1 1")
24                 panic("FAILED")
25         }
26
27         const (
28                 X = X + X
29                 Y
30                 Z = iota
31         )
32         if X != 4 || Y != 8 || Z != 1 {
33                 println("got", X, Y, Z, "want 4 8 1")
34                 panic("FAILED")
35         }
36 }