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

--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
So pubnames has entries like

100008      boost::spirit::x3::context<skui::css::grammar::percentag
e_or_uint8, const
boost::spirit::x3::alternative<boost::spirit::x3::rule_definit
ion<<lambda(auto:23&&)> [with auto:23 = boost::spirit::x3::....

with very long names.  There are not many duplicates but some, like

f4000       std::__is_convertible_to_basic_istream<boost::spirit::x3
::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::sequence<boost::spirit::x3::rule_definition<skui::css::grammar::repeating,
boost::spirit::x3::alternative<boost::spirit::x3::sequence<boost::spirit::x3::literal_string<char
const*, boost::spirit::char_encoding::standar...

or

49d28       std::__detail::__variant::__accepted_index<char const (&
)[3], std::variant<std::__cxx11::basic_string<char, std::char_traits<char>,
std:
:allocator<char> >, skui::css::linear_gradient, skui::css::radial_gradient>,
voi
d>::value

appear twice (for the same DIE).

There are also quite many _name_ duplicates refering to different DIEs!  Like
178 copies of 'std::is_same_v' and others:

...
     37 std::is_copy_assignable_v
     37 std::is_copy_constructible_v
     37 std::is_literal_type_v
     37 std::is_move_assignable_v
     37 std::is_move_constructible_v
     37 std::is_reference_v
     37 std::is_trivially_copy_assignable_v
     37 std::is_trivially_copy_constructible_v
     37 std::is_trivially_destructible_v
     37 std::is_trivially_move_assignable_v
     37 std::is_trivially_move_constructible_v
     38 std::__and_v
     39 std::is_void_v
     78 std::__detail::__variant::__tuple_count_v
    178 std::is_same_v

this also means we are generating "duplicate" DIEs for those though
interestingly the offsets do not translate to any DIE in .debug_info(!?)

    48084       std::__detail::__variant::_Traits<skui::css::position,
float>::_
S_nothrow_default_ctor
    fbba8       std::is_default_constructible_v
    fbbad       std::is_copy_constructible_v

the testcase is too large to track these "issues" down.

Reply via email to