OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [go.test/] [test/] [label1.go] - Rev 700

Compare with Previous | Blame | View Log

// errchk $G -e $D/$F.go

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

// Pass 2 label errors.

package main

var x int

func f() {
L1:
        for {
                if x == 0 {
                        break L1
                }
                if x == 1 {
                        continue L1
                }
                goto L1
        }

L2:
        select {
        default:
                if x == 0 {
                        break L2
                }
                if x == 1 {
                        continue L2 // ERROR "invalid continue label .*L2"
                }
                goto L2
        }

L3:
        switch {
        case x > 10:
                if x == 11 {
                        break L3
                }
                if x == 12 {
                        continue L3 // ERROR "invalid continue label .*L3"
                }
                goto L3
        }

L4:
        if true {
                if x == 13 {
                        break L4 // ERROR "invalid break label .*L4"
                }
                if x == 14 {
                        continue L4 // ERROR "invalid continue label .*L4"
                }
                if x == 15 {
                        goto L4
                }
        }

L5:
        f()
        if x == 16 {
                break L5 // ERROR "invalid break label .*L5"
        }
        if x == 17 {
                continue L5 // ERROR "invalid continue label .*L5"
        }
        if x == 18 {
                goto L5
        }

        for {
                if x == 19 {
                        break L1 // ERROR "invalid break label .*L1"
                }
                if x == 20 {
                        continue L1 // ERROR "invalid continue label .*L1"
                }
                if x == 21 {
                        goto L1
                }
        }
}

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.