aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2011-06-30 20:53:10 -0400
committerJason Merrill <jason@gcc.gnu.org>2011-06-30 20:53:10 -0400
commit17d208b54e0ff2ad5b0893457f53b27378baf77d (patch)
tree27c6e54e4363a20822f00159583705d55d800cff /gcc/cp
parent0bd96aad7a56f93687c696476f7f58244885b301 (diff)
downloadgcc-17d208b54e0ff2ad5b0893457f53b27378baf77d.zip
gcc-17d208b54e0ff2ad5b0893457f53b27378baf77d.tar.gz
gcc-17d208b54e0ff2ad5b0893457f53b27378baf77d.tar.bz2
re PR c++/49387 (t.cxx:140: error: too many initializers for ‘const __class_type_info_pseudo’)
PR c++/49387 * rtti.c (get_pseudo_ti_index): Call complete_type. From-SVN: r175743
Diffstat (limited to 'gcc/cp')
-rw-r--r--gcc/cp/ChangeLog3
-rw-r--r--gcc/cp/rtti.c2
2 files changed, 5 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index e3f9845..ad6cd03 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,5 +1,8 @@
2011-06-30 Jason Merrill <jason@redhat.com>
+ PR c++/49387
+ * rtti.c (get_pseudo_ti_index): Call complete_type.
+
PR c++/49569
* method.c (implicitly_declare_fn): Set DECL_PARM_LEVEL and
DECL_PARM_INDEX on rhs parm.
diff --git a/gcc/cp/rtti.c b/gcc/cp/rtti.c
index 0feaf07..53404b4 100644
--- a/gcc/cp/rtti.c
+++ b/gcc/cp/rtti.c
@@ -406,6 +406,8 @@ get_tinfo_decl (tree type)
type = build_function_type (TREE_TYPE (type),
TREE_CHAIN (TYPE_ARG_TYPES (type)));
+ type = complete_type (type);
+
/* For a class type, the variable is cached in the type node
itself. */
if (CLASS_TYPE_P (type))