From 9d56dd8ea30068aa3b3211939b50407b10edb50e Mon Sep 17 00:00:00 2001 From: Than McIntosh Date: Wed, 10 Jul 2019 09:12:24 -0400 Subject: [PATCH] test: new testcase for gccgo compiler bug Updates #33013 Change-Id: I3db062b37860bb0c6c99a553408b47cf0313531e Reviewed-on: https://go-review.googlesource.com/c/go/+/185517 Run-TryBot: Ian Lance Taylor TryBot-Result: Gobot Gobot Reviewed-by: Ian Lance Taylor --- test/fixedbugs/issue33013.dir/a.go | 9 +++++++++ test/fixedbugs/issue33013.dir/b.go | 24 ++++++++++++++++++++++++ test/fixedbugs/issue33013.dir/c.go | 19 +++++++++++++++++++ test/fixedbugs/issue33013.dir/d.go | 16 ++++++++++++++++ test/fixedbugs/issue33013.go | 9 +++++++++ 5 files changed, 77 insertions(+) create mode 100644 test/fixedbugs/issue33013.dir/a.go create mode 100644 test/fixedbugs/issue33013.dir/b.go create mode 100644 test/fixedbugs/issue33013.dir/c.go create mode 100644 test/fixedbugs/issue33013.dir/d.go create mode 100644 test/fixedbugs/issue33013.go diff --git a/test/fixedbugs/issue33013.dir/a.go b/test/fixedbugs/issue33013.dir/a.go new file mode 100644 index 00000000000..056be88aeac --- /dev/null +++ b/test/fixedbugs/issue33013.dir/a.go @@ -0,0 +1,9 @@ +// Copyright 2019 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 a + +type G interface { + UsesEmpty(p interface{}) int +} diff --git a/test/fixedbugs/issue33013.dir/b.go b/test/fixedbugs/issue33013.dir/b.go new file mode 100644 index 00000000000..5694b58282c --- /dev/null +++ b/test/fixedbugs/issue33013.dir/b.go @@ -0,0 +1,24 @@ +// Copyright 2019 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 b + +import "a" + +type Service uint64 +type ServiceDesc struct { + X int + uc +} + +type uc interface { + f() a.G +} + +var q int + +func RS(svcd *ServiceDesc, server interface{}, qq uint8) *Service { + defer func() { q += int(qq) }() + return nil +} diff --git a/test/fixedbugs/issue33013.dir/c.go b/test/fixedbugs/issue33013.dir/c.go new file mode 100644 index 00000000000..bfdc0b535fe --- /dev/null +++ b/test/fixedbugs/issue33013.dir/c.go @@ -0,0 +1,19 @@ +// Copyright 2019 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 c + +import ( + "a" + "b" +) + +type BI interface { + Something(s int64) int64 + Another(pxp a.G) int32 +} + +func BRS(sd *b.ServiceDesc, server BI, xyz int) *b.Service { + return b.RS(sd, server, 7) +} diff --git a/test/fixedbugs/issue33013.dir/d.go b/test/fixedbugs/issue33013.dir/d.go new file mode 100644 index 00000000000..f4fff4ac62a --- /dev/null +++ b/test/fixedbugs/issue33013.dir/d.go @@ -0,0 +1,16 @@ +// Copyright 2019 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 d + +import ( + "b" + "c" +) + +var GA b.Service + +func C() { + c.BRS(nil, nil, 22) +} diff --git a/test/fixedbugs/issue33013.go b/test/fixedbugs/issue33013.go new file mode 100644 index 00000000000..e363cf500f3 --- /dev/null +++ b/test/fixedbugs/issue33013.go @@ -0,0 +1,9 @@ +// compiledir + +// Copyright 2019 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 33013: gccgo compiler error with inlinable function + +package ignored