diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/cp/ChangeLog | 2 | ||||
-rw-r--r-- | gcc/cp/rtti.c | 12 |
2 files changed, 9 insertions, 5 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index accc1e3..ee0f56e 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,7 @@ 2004-12-22 Mark Mitchell <mark@codesourcery.com> + * rtti.c (emit_support_tinfos): Avoid using C99 semantics. + PR c++/18464 * call.c (build_this): In templates, do not bother with build_unary_op. diff --git a/gcc/cp/rtti.c b/gcc/cp/rtti.c index 6c92d19..4740533 100644 --- a/gcc/cp/rtti.c +++ b/gcc/cp/rtti.c @@ -1345,16 +1345,18 @@ emit_support_tinfos (void) for (ix = 0; fundamentals[ix]; ix++) { tree bltn = *fundamentals[ix]; - tree types[3] = { - bltn, - build_pointer_type (bltn), - build_pointer_type (build_qualified_type (bltn, TYPE_QUAL_CONST)) - }; + tree types[3]; int i; + types[0] = bltn; + types[1] = build_pointer_type (bltn); + types[2] = build_pointer_type (build_qualified_type (bltn, + TYPE_QUAL_CONST)); + for (i = 0; i < 3; ++i) { tree tinfo; + tinfo = get_tinfo_decl (types[i]); TREE_USED (tinfo) = 1; mark_needed (tinfo); |