bug report egcs 1.1b Solaris 2.6

David S. Miller davem@dm.cobaltmicro.com
Wed Oct 7 04:41:00 GMT 1998


I think this one is a bug in the c++ front end or similar (all I can
for sure is that it is not a Sparc bug), aparently it causes a
gen_lowpart of (const_int 0) in BLKmode, wheee...

expr.c:expand_assignment() gets passed 'to' and 'from' trees which
look like:

to:
 <var_decl 0xefbf18 oldu
    type <record_type 0xa47f88 position allocated from permanent_obstack
        permanent no-force-blk type_1 type_5 BLK
        size <integer_cst 0xa48dd0 constant permanent 64>
        align 32 symtab 0 alias set -1
        fields <field_decl 0xa482b0 row type <integer_type 0x3ee420 int>
            allocated from permanent_obstack
            permanent nonlocal decl_3 SI file ../siag/calc.h line 61
            size <integer_cst 0x3ee600 constant permanent 32>
            align 32
            bitpos <integer_cst 0x3f2450 constant permanent 0> context <record_type 0xa47f88 position> arguments <integer_cst 0x3f2450 0> chain <field_decl 0xa48358 col>>
        X() X(constX&) has= this=(X&) n_parents 0 n_ancestors 0 use_template=0 interface-unknown
        member-functions <tree_vec 0xa25200 not allocated from any obstack
           
            elt 0 <overload 0xa48da8>
            elt 2 <function_decl 0xa48c18 __as>>
        pointer_to_this <pointer_type 0xa480b8> reference_to_this <reference_type 0xa48a60> chain <type_decl 0xa48130 ._13>>
    allocated from function maybepermanent obstack
    asm_written used static decl_6 BLK file siagcallbacks.cpp line 428 size <integer_cst 0xa48dd0 64>
    align 32 context <function_decl 0xd64bb8 set_block> initial <error_mark 0x3ee230>
    (mem/s:BLK (symbol_ref:SI ("oldu.1715")))>

from:
 <integer_cst 0x3f22a0 type <integer_type 0x3ee420 int> constant permanent 0>

This call is made from cp/decl.c:7576

I am not a c++ guru, so one of them will need to look into this.

Later,
David S. Miller
davem@dm.cobaltmicro.com



More information about the Gcc-bugs mailing list