In GCC we decided to use DW_TAG_module to represent Ada packages, so
make this same decision in gdb. This also updates tag_matches_domain
to handle this case.
{
gdb::unique_xmalloc_ptr<char> new_name
= make_unique_xstrndup (name.data (), name.length ());
- last = create (entry->die_offset, DW_TAG_namespace,
+ last = create (entry->die_offset, DW_TAG_module,
0, language_ada, new_name.get (), parent,
entry->per_cu);
last->canonical = last->name;
{
/* These entries are synthesized by the reader, and so should not
be written. */
- if (entry->lang == language_ada && entry->tag == DW_TAG_namespace)
+ if (entry->lang == language_ada && entry->tag == DW_TAG_module)
return;
m_name_to_value_set[entry->name].emplace_back (entry);
break;
case DW_TAG_module:
- flags = SEARCH_MODULE_DOMAIN;
+ if (lang == language_ada)
+ flags = SEARCH_TYPE_DOMAIN;
+ else
+ flags = SEARCH_MODULE_DOMAIN;
break;
}