Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
nilptr2.go132 linesDownload Raw Back to test
1// run2 3// Copyright 2013 The Go Authors. All rights reserved.4// Use of this source code is governed by a BSD-style5// license that can be found in the LICENSE file.6 7package main8 9func main() {10	ok := true11	for _, tt := range tests {12		func() {13			defer func() {14				if err := recover(); err == nil {15					println(tt.name, "did not panic")16					ok = false17				}18			}()19			tt.fn()20		}()21	}22	if !ok {23		println("BUG")24	}25}26 27var intp *int28var slicep *[]byte29var a10p *[10]int30var a10Mp *[1<<20]int31var structp *Struct32var bigstructp *BigStruct33var i int34var m *M35var m1 *M136var m2 *M237 38var V interface{}39 40func use(x interface{}) {41	V = x42}43 44var tests = []struct{45	name string46	fn func()47}{48	// Edit .+1,/^}/s/^[^	].+/	{"&", func() { println(&) }},\n	{"\&&", func() { println(\&&) }},/g49	{"*intp", func() { println(*intp) }},50	{"&*intp", func() { println(&*intp) }},51	{"*slicep", func() { println(*slicep) }},52	{"&*slicep", func() { println(&*slicep) }},53	{"(*slicep)[0]", func() { println((*slicep)[0]) }},54	{"&(*slicep)[0]", func() { println(&(*slicep)[0]) }},55	{"(*slicep)[i]", func() { println((*slicep)[i]) }},56	{"&(*slicep)[i]", func() { println(&(*slicep)[i]) }},57	{"*a10p", func() { use(*a10p) }},58	{"&*a10p", func() { println(&*a10p) }},59	{"a10p[0]", func() { println(a10p[0]) }},60	{"&a10p[0]", func() { println(&a10p[0]) }},61	{"a10p[i]", func() { println(a10p[i]) }},62	{"&a10p[i]", func() { println(&a10p[i]) }},63	{"*structp", func() { use(*structp) }},64	{"&*structp", func() { println(&*structp) }},65	{"structp.i", func() { println(structp.i) }},66	{"&structp.i", func() { println(&structp.i) }},67	{"structp.j", func() { println(structp.j) }},68	{"&structp.j", func() { println(&structp.j) }},69	{"structp.k", func() { println(structp.k) }},70	{"&structp.k", func() { println(&structp.k) }},71	{"structp.x[0]", func() { println(structp.x[0]) }},72	{"&structp.x[0]", func() { println(&structp.x[0]) }},73	{"structp.x[i]", func() { println(structp.x[i]) }},74	{"&structp.x[i]", func() { println(&structp.x[i]) }},75	{"structp.x[9]", func() { println(structp.x[9]) }},76	{"&structp.x[9]", func() { println(&structp.x[9]) }},77	{"structp.l", func() { println(structp.l) }},78	{"&structp.l", func() { println(&structp.l) }},79	{"*bigstructp", func() { use(*bigstructp) }},80	{"&*bigstructp", func() { println(&*bigstructp) }},81	{"bigstructp.i", func() { println(bigstructp.i) }},82	{"&bigstructp.i", func() { println(&bigstructp.i) }},83	{"bigstructp.j", func() { println(bigstructp.j) }},84	{"&bigstructp.j", func() { println(&bigstructp.j) }},85	{"bigstructp.k", func() { println(bigstructp.k) }},86	{"&bigstructp.k", func() { println(&bigstructp.k) }},87	{"bigstructp.x[0]", func() { println(bigstructp.x[0]) }},88	{"&bigstructp.x[0]", func() { println(&bigstructp.x[0]) }},89	{"bigstructp.x[i]", func() { println(bigstructp.x[i]) }},90	{"&bigstructp.x[i]", func() { println(&bigstructp.x[i]) }},91	{"bigstructp.x[9]", func() { println(bigstructp.x[9]) }},92	{"&bigstructp.x[9]", func() { println(&bigstructp.x[9]) }},93	{"bigstructp.x[100<<20]", func() { println(bigstructp.x[100<<20]) }},94	{"&bigstructp.x[100<<20]", func() { println(&bigstructp.x[100<<20]) }},95	{"bigstructp.l", func() { println(bigstructp.l) }},96	{"&bigstructp.l", func() { println(&bigstructp.l) }},97	{"m1.F()", func() { println(m1.F()) }},98	{"m1.M.F()", func() { println(m1.M.F()) }},99	{"m2.F()", func() { println(m2.F()) }},100	{"m2.M.F()", func() { println(m2.M.F()) }},101}102 103type Struct struct {104	i int105	j float64106	k string107	x [10]int108	l []byte109}110 111type BigStruct struct {112	i int113	j float64114	k string115	x [128<<20]byte116	l []byte117}118 119type M struct {120}121 122func (m *M) F() int {return 0}123 124type M1 struct {125	M126}127 128type M2 struct {129	x int130	M131}132 
codekingpro/portable-devtools · Team Ai