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

Jan Hubicka <hubicka at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |NEW
                 CC|                            |jason at redhat dot com
          Component|lto                         |c++
           Assignee|hubicka at gcc dot gnu.org         |unassigned at gcc dot 
gnu.org

--- Comment #1 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
We ICE on the fact that _ZTV1aIN12_GLOBAL__N_11fEE which is vtable for
anonymous namespace type but it has EXTERNAL flag set.

Jason, why this happens? I am changing type to C++: if there is indeed legal
reason to have exported vtables for anonymous types, then we can simply drop
the sanity check.


 <var_decl 0x7ffff7ff4ab0 _ZTV1aIN12_GLOBAL__N_11fEE
    type <array_type 0x7ffff72d85e8
        type <pointer_type 0x7ffff72d8540 __vtbl_ptr_type type <function_type
0x7ffff72d8498>
            unsigned DI
            size <integer_cst 0x7ffff70deb70 constant 64>
            unit-size <integer_cst 0x7ffff70deb88 constant 8>
            align:64 warn_if_not_align:0 symtab:0 alias-set -1
structural-equality
            pointer_to_this <pointer_type 0x7ffff72d8690>>
        BLK
        size <integer_cst 0x7ffff70deed0 constant 256>
        unit-size <integer_cst 0x7ffff70defc0 constant 32>
        align:64 warn_if_not_align:0 symtab:0 alias-set -1 structural-equality
        domain <integer_type 0x7ffff72d8348 type <integer_type 0x7ffff70f3000
sizetype>
            DI size <integer_cst 0x7ffff70deb70 64> unit-size <integer_cst
0x7ffff70deb88 8>
            align:64 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type
0x7ffff70f3738 precision:64 min <integer_cst 0x7ffff70deba0 0> max <integer_cst
0x7ffff72d6498 3>>>
    readonly static ignored external virtual BLK t.ii:4:27 size <integer_cst
0x7ffff70deed0 256> unit-size <integer_cst 0x7ffff70defc0 32>
    user align:64 warn_if_not_align:0 context <record_type 0x7ffff72d87e0 a>
initial <error_mark 0x7ffff70deb58>>

Reply via email to