aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@gcc.gnu.org>2011-01-19 15:47:50 +0000
committerIan Lance Taylor <ian@gcc.gnu.org>2011-01-19 15:47:50 +0000
commit0ca82dd6bae0055cf2c8b95823dea52a1d2e92f0 (patch)
treef963aef4df1820b1ed365a938ba7c0a6d55e32e6 /gcc
parentcfea9968d13cba69f32bf1e13126ed91fabfc02a (diff)
downloadgcc-0ca82dd6bae0055cf2c8b95823dea52a1d2e92f0.zip
gcc-0ca82dd6bae0055cf2c8b95823dea52a1d2e92f0.tar.gz
gcc-0ca82dd6bae0055cf2c8b95823dea52a1d2e92f0.tar.bz2
Fix handling of anonymous field in struct with pointer type.
From-SVN: r169001
Diffstat (limited to 'gcc')
-rw-r--r--gcc/go/gofrontend/types.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/go/gofrontend/types.cc b/gcc/go/gofrontend/types.cc
index bbf217a..1a68e77 100644
--- a/gcc/go/gofrontend/types.cc
+++ b/gcc/go/gofrontend/types.cc
@@ -7948,7 +7948,9 @@ Type::find_field_or_method(const Type* type,
|| pf->type()->deref()->is_undefined())
continue;
- Named_type* fnt = pf->type()->deref()->named_type();
+ Named_type* fnt = pf->type()->named_type();
+ if (fnt == NULL)
+ fnt = pf->type()->deref()->named_type();
gcc_assert(fnt != NULL);
int sublevel = level == NULL ? 1 : *level + 1;