R=adg
CC=golang-dev
https://golang.org/cl/893041
</p>
<pre>
-var a string;
+var a string
func f() {
- print(a);
+ print(a)
}
func hello() {
- a = "hello, world";
- go f();
+ a = "hello, world"
+ go f()
}
</pre>
var a string
func f() {
- a = "hello, world";
- c <- 0;
+ a = "hello, world"
+ c <- 0
}
func main() {
- go f();
- <-c;
- print(a);
+ go f()
+ <-c
+ print(a)
}
</pre>
var a string
func f() {
- a = "hello, world";
- <-c;
+ a = "hello, world"
+ <-c
}
</pre>
<pre>
func main() {
- go f();
- c <- 0;
- print(a);
+ go f()
+ c <- 0
+ print(a)
}
</pre>
var a string
func f() {
- a = "hello, world";
- l.Unlock();
+ a = "hello, world"
+ l.Unlock()
}
func main() {
- l.Lock();
- go f();
- l.Lock();
- print(a);
+ l.Lock()
+ go f()
+ l.Lock()
+ print(a)
}
</pre>
var a string
func setup() {
- a = "hello, world";
+ a = "hello, world"
}
func doprint() {
- once.Do(setup);
- print(a);
+ once.Do(setup)
+ print(a)
}
func twoprint() {
- go doprint();
- go doprint();
+ go doprint()
+ go doprint()
}
</pre>
var a, b int
func f() {
- a = 1;
- b = 2;
+ a = 1
+ b = 2
}
func g() {
- print(b);
- print(a);
+ print(b)
+ print(a)
}
func main() {
- go f();
- g();
+ go f()
+ g()
}
</pre>
var done bool
func setup() {
- a = "hello, world";
- done = true;
+ a = "hello, world"
+ done = true
}
func doprint() {
if !done {
- once.Do(setup);
+ once.Do(setup)
}
- print(a);
+ print(a)
}
func twoprint() {
- go doprint();
- go doprint();
+ go doprint()
+ go doprint()
}
</pre>
var done bool
func setup() {
- a = "hello, world";
- done = true;
+ a = "hello, world"
+ done = true
}
func main() {
- go setup();
+ go setup()
for !done {
}
- print(a);
+ print(a)
}
</pre>
<pre>
type T struct {
- msg string;
+ msg string
}
var g *T
func setup() {
- t := new(T);
- t.msg = "hello, world";
- g = t;
+ t := new(T)
+ t.msg = "hello, world"
+ g = t
}
func main() {
- go setup();
+ go setup()
for g == nil {
}
- print(g.msg);
+ print(g.msg)
}
</pre>