compiler: emit type specific functions for aliases

If we have an alias for a struct or array that requires a
type-specific function, don't emit the function with the alias name.
Emit it with the struct/array as usual.

Test case is https://golang.org/cl/62531.

Change-Id: Ic194ea913a3a6fa42138706d0a6929b490733394
Reviewed-on: https://go-review.googlesource.com/62412
Reviewed-by: Than McIntosh <thanm@google.com>
diff --git a/go/gogo.cc b/go/gogo.cc
index 5dbe29d..adc8e8a 100644
--- a/go/gogo.cc
+++ b/go/gogo.cc
@@ -2498,6 +2498,8 @@
     case Type::TYPE_NAMED:
       {
 	Named_type* nt = t->named_type();
+	if (nt->is_alias())
+	  return TRAVERSE_CONTINUE;
 	if (t->needs_specific_type_functions(this->gogo_))
 	  t->type_functions(this->gogo_, nt, NULL, NULL, &hash_fn, &equal_fn);