From 8ccafb1ac732ab7994acb3c40786a0b943974554 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Mon, 11 Dec 2017 12:03:44 -0800 Subject: [PATCH] test: add fixedbugs/bug506 for gccgo Building with gccgo failed with an undefined symbol error from an unnecessary hash function. Updates #19773 Change-Id: Ic78bf1b086ff5ee26d464089c0e14987d3fe8b02 Reviewed-on: https://go-review.googlesource.com/c/130956 Run-TryBot: Ian Lance Taylor TryBot-Result: Gobot Gobot Reviewed-by: Brad Fitzpatrick --- test/fixedbugs/bug506.dir/a.go | 16 ++++++++++++++++ test/fixedbugs/bug506.dir/main.go | 20 ++++++++++++++++++++ test/fixedbugs/bug506.go | 10 ++++++++++ 3 files changed, 46 insertions(+) create mode 100644 test/fixedbugs/bug506.dir/a.go create mode 100644 test/fixedbugs/bug506.dir/main.go create mode 100644 test/fixedbugs/bug506.go diff --git a/test/fixedbugs/bug506.dir/a.go b/test/fixedbugs/bug506.dir/a.go new file mode 100644 index 00000000000..8e8a2005810 --- /dev/null +++ b/test/fixedbugs/bug506.dir/a.go @@ -0,0 +1,16 @@ +// Copyright 2018 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 internal struct { + f1 string + f2 float64 +} + +type S struct { + F struct { + I internal + } +} diff --git a/test/fixedbugs/bug506.dir/main.go b/test/fixedbugs/bug506.dir/main.go new file mode 100644 index 00000000000..1b60e40d8d0 --- /dev/null +++ b/test/fixedbugs/bug506.dir/main.go @@ -0,0 +1,20 @@ +// Copyright 2018 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 + +import ( + "fmt" + + "./a" +) + +var v = a.S{} + +func main() { + want := "{{ 0}}" + if got := fmt.Sprint(v.F); got != want { + panic(got) + } +} diff --git a/test/fixedbugs/bug506.go b/test/fixedbugs/bug506.go new file mode 100644 index 00000000000..7c8ccc6ec7e --- /dev/null +++ b/test/fixedbugs/bug506.go @@ -0,0 +1,10 @@ +// rundir + +// Copyright 2018 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. + +// Gccgo caused an undefined symbol reference building hash functions +// for an imported struct with unexported fields. + +package ignored