mirror of
https://github.com/golang/go
synced 2024-11-22 00:34:40 -07:00
Test composite literals with undeclared types. This crashed
gccgo in a few different places, and crashes 6g as of this writing. Note that the index in a composite literal must be looked up in a different namespace if the composite literal type turns out to be a struct. R=rsc DELTA=36 (36 added, 0 deleted, 0 changed) OCL=33681 CL=33685
This commit is contained in:
parent
1068bcab96
commit
1f1551f179
32
test/bugs/bug194.go
Normal file
32
test/bugs/bug194.go
Normal file
@ -0,0 +1,32 @@
|
||||
// $G $D/$F.go && $L $F.$A && ./$A.out || echo BUG should compile and run
|
||||
|
||||
// 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
|
||||
|
||||
var v1 = T1(1)
|
||||
var v2 = T2{2}
|
||||
var v3 = T3{0:3, 1:4}
|
||||
var v4 = T4{0:5, 1:6}
|
||||
var v5 = T5{0:7, 1:8}
|
||||
var v6 = T2{f:9}
|
||||
var v7 = T4{f:10}
|
||||
var v8 = T5{f:11}
|
||||
var pf func(T1)
|
||||
|
||||
func main() {
|
||||
if v1 != 1 || v2.f != 2 || v3[0] != 3 || v3[1] != 4
|
||||
|| v4[0] != 5 || v4[1] != 6 || v5[0] != 7 || v5[1] != 8
|
||||
|| v6.f != 9 || v7[0] != 10 || v8[0] != 11 {
|
||||
panic()
|
||||
}
|
||||
}
|
||||
|
||||
type T1 int
|
||||
type T2 struct { f int }
|
||||
type T3 []int
|
||||
type T4 [2]int
|
||||
type T5 map[int] int
|
||||
const f = 0
|
@ -173,3 +173,7 @@ BUG: should compile
|
||||
BUG: errchk: bugs/bug193.go:13: error message does not match 'shift'
|
||||
bugs/bug193.go:13: fatal error: optoas: no entry LSH-float
|
||||
errchk: bugs/bug193.go:14: missing expected error: 'shift'
|
||||
|
||||
=========== bugs/bug194.go
|
||||
BUG should compile and run
|
||||
$RUNFILE: line 1: PID Segmentation fault (core dumped) $G $D/$F.go
|
||||
|
Loading…
Reference in New Issue
Block a user