mirror of
https://github.com/golang/go
synced 2024-11-22 18:54:44 -07:00
892fa3ae6c
For issue 3757: BEFORE: test/fixedbugs/bug463.go:12: typechecking loop involving a test/fixedbugs/bug463.go:12 a test/fixedbugs/bug463.go:12 <node DCLCONST> AFTER: test/fixedbugs/bug463.go:12: constant definition loop test/fixedbugs/bug463.go:12: a uses a For issue 3937: BEFORE: test/fixedbugs/bug464.go:12: typechecking loop involving foo test/fixedbugs/bug464.go:12 <T> test/fixedbugs/bug464.go:12 foo test/fixedbugs/bug464.go:12 <node DCLFUNC> AFTER: test/fixedbugs/bug464.go:12: foo is not a type Fixes #3757. Fixes #3937. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6614058
23 lines
456 B
Go
23 lines
456 B
Go
// errorcheck
|
|
|
|
// Copyright 2012 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
// Issue 3757: unhelpful typechecking loop message
|
|
// for constants that refer to themselves.
|
|
|
|
package main
|
|
|
|
const a = a // ERROR "refers to itself|definition loop"
|
|
|
|
const (
|
|
X = A
|
|
A = B // ERROR "refers to itself|definition loop"
|
|
B = D
|
|
C, D = 1, A
|
|
)
|
|
|
|
func main() {
|
|
}
|