Commit d9d8d4e5 by Ian Lance Taylor

compiler: Do not dereference a named pointer type when looking up a method.

Fixes Issue 9018.

From-SVN: r218026
parent ea903c37
......@@ -10035,6 +10035,18 @@ Type::find_field_or_method(const Type* type,
if (found_level == 0)
return false;
else if (found_is_method
&& type->named_type() != NULL
&& type->points_to() != NULL)
{
// If this is a method inherited from a struct field in a named pointer
// type, it is invalid to automatically dereference the pointer to the
// struct to find this method.
if (level != NULL)
*level = found_level;
*is_method = true;
return false;
}
else if (!found_ambig1.empty())
{
go_assert(!found_ambig1.empty());
......
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