mirror of
https://github.com/golang/go
synced 2024-11-21 17:24:42 -07:00
gc: add forgotten typecheck in a lonely corner of sinit
Fixes #2549 R=rsc CC=golang-dev https://golang.org/cl/5484060
This commit is contained in:
parent
a62722bba4
commit
1f6d130b14
@ -707,9 +707,10 @@ slicelit(int ctxt, Node *n, Node *var, NodeList **init)
|
||||
|
||||
// set auto to point at new temp or heap (3 assign)
|
||||
if(n->esc == EscNone) {
|
||||
a = temp(t);
|
||||
*init = list(*init, nod(OAS, a, N)); // zero new temp
|
||||
a = nod(OADDR, a, N);
|
||||
a = nod(OAS, temp(t), N);
|
||||
typecheck(&a, Etop);
|
||||
*init = list(*init, a); // zero new temp
|
||||
a = nod(OADDR, a->left, N);
|
||||
} else {
|
||||
a = nod(ONEW, N, N);
|
||||
a->list = list1(typenod(t));
|
||||
|
30
test/fixedbugs/bug387.go
Normal file
30
test/fixedbugs/bug387.go
Normal file
@ -0,0 +1,30 @@
|
||||
// $G $D/$F.go || echo "Bug387"
|
||||
|
||||
// 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.
|
||||
|
||||
// Issue 2549
|
||||
|
||||
/* Used to die with
|
||||
missing typecheck: [7f5bf07b4438]
|
||||
|
||||
. AS l(45)
|
||||
. . NAME-main.autotmp_0017 u(1) a(1) l(45) x(0+0) class(PAUTO)
|
||||
esc(N) tc(1) used(1) ARRAY-[2]string
|
||||
internal compiler error: missing typecheck
|
||||
*/
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"path/filepath"
|
||||
)
|
||||
|
||||
func main() {
|
||||
switch _, err := filepath.Glob(filepath.Join(".", "vnc")); {
|
||||
case err != nil:
|
||||
fmt.Println(err)
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user