Commit 284fdc4c by Ian Lance Taylor

compiler: support alias to pointer type as method receiver

    
    Fixes golang/go#28252.
    
    Reviewed-on: https://go-review.googlesource.com/c/160077

From-SVN: r268397
parent 8ff7780c
5af8ee0693944c280b1f529450dbfd4ec1ee451d 2206f40fc1e0e1e2ba3eacb7388dd26b72729bde
The first line of this file holds the git revision number of the last The first line of this file holds the git revision number of the last
merge done from the gofrontend repository. merge done from the gofrontend repository.
...@@ -1944,6 +1944,10 @@ Gogo::start_function(const std::string& name, Function_type* type, ...@@ -1944,6 +1944,10 @@ Gogo::start_function(const std::string& name, Function_type* type,
go_assert(at_top_level); go_assert(at_top_level);
Type* rtype = type->receiver()->type(); Type* rtype = type->receiver()->type();
while (rtype->named_type() != NULL
&& rtype->named_type()->is_alias())
rtype = rtype->named_type()->real_type()->forwarded();
// We want to look through the pointer created by the // We want to look through the pointer created by the
// parser, without getting an error if the type is not yet // parser, without getting an error if the type is not yet
// defined. // defined.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment