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

Subversion Repositories openrisc

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

Compare with Previous | Blame | View Log

// $G $D/$F.go && $L $F.$A && ./$A.out

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

package main

type T1 struct {
        Next *T2
}

type T2 T1

type T3 struct {
        Next *T4
}

type T4 T5
type T5 T6
type T6 T7
type T7 T8
type T8 T9
type T9 T3

type T10 struct {
        x struct {
                y ***struct {
                        z *struct {
                                Next *T11
                        }
                }
        }
}

type T11 T10

type T12 struct {
        F1 *T15
        F2 *T13
        F3 *T16
}

type T13 T14
type T14 T15
type T15 T16
type T16 T17
type T17 T12

// issue 1672
type T18 *[10]T19
type T19 T18

func main() {
        _ = &T1{&T2{}}
        _ = &T2{&T2{}}
        _ = &T3{&T4{}}
        _ = &T4{&T4{}}
        _ = &T5{&T4{}}
        _ = &T6{&T4{}}
        _ = &T7{&T4{}}
        _ = &T8{&T4{}}
        _ = &T9{&T4{}}
        _ = &T12{&T15{}, &T13{}, &T16{}}

        var (
                tn    struct{ Next *T11 }
                tz    struct{ z *struct{ Next *T11 } }
                tpz   *struct{ z *struct{ Next *T11 } }
                tppz  **struct{ z *struct{ Next *T11 } }
                tpppz ***struct{ z *struct{ Next *T11 } }
                ty    struct {
                        y ***struct{ z *struct{ Next *T11 } }
                }
        )
        tn.Next = &T11{}
        tz.z = &tn
        tpz = &tz
        tppz = &tpz
        tpppz = &tppz
        ty.y = tpppz
        _ = &T10{ty}

        t19s := &[10]T19{}
        _ = T18(t19s)
}

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.