compiler: don't double count "." in nested_function_num

Nested functions are named "outerfunc.$nestedN", where N is a
number. nested_function_num extracts that number. The name is
first passed to unpack_hidden_name, which handles the "." and
should result "$nestedN". Don't expect the "." again.

This fixes assertion failure when escape analysis is enabled
and -fgo-debug-escape is on. The failure looks

go1: internal compiler error: in nested_function_num, at go/gofrontend/names.cc:241
0x7bd7d3 Gogo::nested_function_num(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)

Change-Id: I6aaeb20b68a7cfc8a2073d8d0ed198aff5962bee
Reviewed-on: https://go-review.googlesource.com/76213
Reviewed-by: Ian Lance Taylor <iant@golang.org>
diff --git a/go/names.cc b/go/names.cc
index 20f7c57..4353a00 100644
--- a/go/names.cc
+++ b/go/names.cc
@@ -238,8 +238,8 @@
 Gogo::nested_function_num(const std::string& name)
 {
   std::string n(Gogo::unpack_hidden_name(name));
-  go_assert(n.compare(0, 8, ".$nested") == 0);
-  return strtol(n.substr(8).c_str(), NULL, 0);
+  go_assert(n.compare(0, 7, "$nested") == 0);
+  return strtol(n.substr(7).c_str(), NULL, 0);
 }
 
 // Return the name to use for a sink function, a function whose name