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

Subversion Repositories openrisc

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

Compare with Previous | Blame | View Log

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

// Copyright 2009 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 C struct {
        a       int;
        x       func(p *C)int;
}

func (this *C) f()int {
        return this.a;
}

func
main() {
        var v int;
        var c *C;

        c = new(C);
        c.a = 6;
        c.x = g;

        v = g(c);
        if v != 6 { panic(v); }

        v = c.x(c);
        if v != 6 { panic(v); }

        v = c.f();
        if v != 6 { panic(v); }
}

func g(p *C)int {
        var v int;

        v = p.a;
        if v != 6 { panic(v); }
        return p.a;
}

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.