https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61853

--- Comment #7 from John David Anglin <danglin at gcc dot gnu.org> ---
Regarding the record type:

(gdb) p debug_tree ((tree)0xfab48600)
 <record_type 0xfab48600 Energy sizes-gimplified asm_written needs-constructing
type_1 type_5 DF
    size <integer_cst 0xfacf4378 type <integer_type 0xfad06120 bitsizetype>
constant 64>
    unit size <integer_cst 0xfacf4390 type <integer_type 0xfad060c0 sizetype>
constant 8>
    align 64 symtab -145262192 alias set -1 canonical type 0xfab44d20
    fields <field_decl 0xf9ded720 rawValue_
        type <real_type 0xfad06ba0 double sizes-gimplified asm_written type_6
DF size <integer_cst 0xfacf4378 64> unit size <integer_cst 0xfacf4390 8>
            align 64 symtab -85994080 alias set 8 canonical type 0xfad06ba0
precision 64
            pointer_to_this <pointer_type 0xfad06cc0> reference_to_this
<reference_type 0xfa6f5f60>>
        used private nonlocal decl_3 DF file
../include/ThePEG/Config/PhysicalQty.h line 162 col 10 size <integer_cst
0xfacf4378 64> unit size <integer_cst 0xfacf4390 8>
        align 64 offset_align 64
        offset <integer_cst 0xfacf4348 constant 0>
        bit offset <integer_cst 0xfacf43a8 constant 0> context <record_type
0xfab44d20 Qty>
        chain <type_decl 0xf9de8480 Qty type <record_type 0xf9de84e0 Qty>
            used external nonlocal suppress-debug decl_4 VOID file
../include/ThePEG/Config/PhysicalQty.h line 82 col 1
            align 8 context <record_type 0xfab44d20 Qty> result <record_type
0xfab44d20 Qty>
            chain <type_decl 0xf9deb420 Squared>>> context <namespace_decl
0xfad7ed20 ThePEG>
    full-name "ThePEG::Units::Energy"
    needs-constructor X() X(constX&) this=(X&) n_parents=0 use_template=1
interface-unknown
    pointer_to_this <pointer_type 0xf7ed7300> reference_to_this <reference_type
0xf7f18a20> chain <type_decl 0xfab48000 Qty>>
$2 = void


(gdb) p debug_tree ((tree)0xf7f1a980)
 <function_decl 0xf7f1a980
_ZTv0_n64_NK6ThePEG23ConstituentParticleData15constituentMassEv
    type <method_type 0xf7f13ba0
        type <record_type 0xfab48600 Energy sizes-gimplified asm_written
needs-constructing type_1 type_5 DF
            size <integer_cst 0xfacf4378 constant 64>
            unit size <integer_cst 0xfacf4390 constant 8>
            align 64 symtab -145262192 alias set -1 canonical type 0xfab44d20
fields <field_decl 0xf9ded720 rawValue_> context <namespace_decl 0xfad7ed20
ThePEG>
            full-name "ThePEG::Units::Energy"
            needs-constructor X() X(constX&) this=(X&) n_parents=0
use_template=1 interface-unknown
            pointer_to_this <pointer_type 0xf7ed7300> reference_to_this
<reference_type 0xf7f18a20> chain <type_decl 0xfab48000 Qty>>
        SI
        size <integer_cst 0xfacf4318 constant 32>
        unit size <integer_cst 0xfacf4330 constant 4>
        align 32 symtab 0 alias set -1 canonical type 0xf7f13c60 method
basetype <record_type 0xf7f135a0 ConstituentParticleData>
        arg-types <tree_list 0xf7f148b8 value <pointer_type 0xf7f13c00>
            chain <tree_list 0xfacf4b40 value <void_type 0xfad06960 void>>>
        pointer_to_this <pointer_type 0xf7f1bd80>>
    addressable used nothrow public ignored weak virtual decl_5 SI file
ConstituentParticleData.h line 57 col 18 align 32 context <record_type
0xf7f135a0 ConstituentParticleData> initial <block 0xf73f1d58>
    result <result_decl 0xf71ef960 D.88242 type <record_type 0xfab48600 Energy>
        used ignored regdecl DF file ConstituentParticleData.h line 57 col 18
size <integer_cst 0xfacf4378 64> unit size <integer_cst 0xfacf4390 8>
        align 64 context <function_decl 0xf7f1a980
_ZTv0_n64_NK6ThePEG23ConstituentParticleData15constituentMassEv>
        (parallel:BLK [
        (expr_list:REG_DEP_TRUE (reg:DI 101 [ <retval> ])
            (const_int 0 [0]))
    ])>
    full-name "virtual ThePEG::Units::Energy
ThePEG::ConstituentParticleData::_ZTv0_n64_NK6ThePEG23ConstituentParticleData15constituentMassEv()
const"

    arguments <parm_decl 0xf7f21f00 this
        type <pointer_type 0xf7f13cc0 type <record_type 0xf7f13b40
ConstituentParticleData>
            readonly sizes-gimplified public unsigned SI size <integer_cst
0xfacf4318 32> unit size <integer_cst 0xfacf4330 4>
            align 32 symtab -157156016 alias set -1 canonical type 0xf7f13cc0>
        readonly used unsigned SI file ConstituentParticleData.h line 57 col 36
size <integer_cst 0xfacf4318 32> unit size <integer_cst 0xfacf4330 4>
        align 32 context <function_decl 0xf7f1a980
_ZTv0_n64_NK6ThePEG23ConstituentParticleData15constituentMassEv>
        (reg/f:SI 102 [ this ]) arg-type <pointer_type 0xf7f13cc0>
        incoming-rtl (reg:SI 26 %r26 [ this ])>
    struct-function 0xf7880c98>

I'm not sure I can answer your first question.

Reply via email to