From c2047754c300b68c05d65faa8dc2925fe67b71b4 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Sat, 14 Jan 2017 00:05:42 +0000 Subject: libgo: update to Go 1.8 release candidate 1 Compiler changes: * Change map assignment to use mapassign and assign value directly. * Change string iteration to use decoderune, faster for ASCII strings. * Change makeslice to take int, and use makeslice64 for larger values. * Add new noverflow field to hmap struct used for maps. Unresolved problems, to be fixed later: * Commented out test in go/types/sizes_test.go that doesn't compile. * Commented out reflect.TestStructOf test for padding after zero-sized field. Reviewed-on: https://go-review.googlesource.com/35231 gotools/: Updates for Go 1.8rc1. * Makefile.am (go_cmd_go_files): Add bug.go. (s-zdefaultcc): Write defaultPkgConfig. * Makefile.in: Rebuild. From-SVN: r244456 --- libgo/go/net/dnsname_test.go | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) (limited to 'libgo/go/net/dnsname_test.go') diff --git a/libgo/go/net/dnsname_test.go b/libgo/go/net/dnsname_test.go index bc777b8..e0f786d 100644 --- a/libgo/go/net/dnsname_test.go +++ b/libgo/go/net/dnsname_test.go @@ -32,14 +32,12 @@ var dnsNameTests = []dnsNameTest{ func emitDNSNameTest(ch chan<- dnsNameTest) { defer close(ch) - var char59 = "" var char63 = "" - var char64 = "" - for i := 0; i < 59; i++ { - char59 += "a" + for i := 0; i < 63; i++ { + char63 += "a" } - char63 = char59 + "aaaa" - char64 = char63 + "a" + char64 := char63 + "a" + longDomain := strings.Repeat(char63+".", 5) + "example" for _, tc := range dnsNameTests { ch <- tc @@ -47,14 +45,15 @@ func emitDNSNameTest(ch chan<- dnsNameTest) { ch <- dnsNameTest{char63 + ".com", true} ch <- dnsNameTest{char64 + ".com", false} - // 255 char name is fine: - ch <- dnsNameTest{char59 + "." + char63 + "." + char63 + "." + - char63 + ".com", - true} - // 256 char name is bad: - ch <- dnsNameTest{char59 + "a." + char63 + "." + char63 + "." + - char63 + ".com", - false} + + // Remember: wire format is two octets longer than presentation + // (length octets for the first and [root] last labels). + // 253 is fine: + ch <- dnsNameTest{longDomain[len(longDomain)-253:], true} + // A terminal dot doesn't contribute to length: + ch <- dnsNameTest{longDomain[len(longDomain)-253:] + ".", true} + // 254 is bad: + ch <- dnsNameTest{longDomain[len(longDomain)-254:], false} } func TestDNSName(t *testing.T) { -- cgit v1.1