go label 源码

  • 2022-07-15
  • 浏览 (850)

golang label 代码

文件路径:/test/label.go

// errorcheck

// Copyright 2011 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.

// Verify that erroneous labels are caught by the compiler.
// This set is caught by pass 1.
// Does not compile.

package main

var x int

func f() {
L1: // ERROR "label .*L1.* defined and not used"
	for {
	}
L2: // ERROR "label .*L2.* defined and not used"
	select {}
L3: // ERROR "label .*L3.* defined and not used"
	switch {
	}
L4: // ERROR "label .*L4.* defined and not used"
	if true {
	}
L5: // ERROR "label .*L5.* defined and not used"
	f()
L6: // GCCGO_ERROR "previous"
	f()
L6: // ERROR "label .*L6.* already defined"
	f()
	if x == 20 {
		goto L6
	}

L7:
	for {
		break L7
	}

L8:
	for {
		if x == 21 {
			continue L8
		}
	}

L9:
	switch {
	case true:
		break L9
	defalt: // ERROR "label .*defalt.* defined and not used"
	}

L10:
	select {
	default:
		break L10
	}

	goto L10

	goto go2 // ERROR "label go2 not defined|reference to undefined label .*go2"
}

相关信息

go 源码目录

相关文章

go 235 源码

go 64bit 源码

go alg 源码

go alias 源码

go alias1 源码

go alias2 源码

go alias3 源码

go align 源码

go append 源码

go append1 源码

0  赞