Prefix named types with package name in debug types

This commit is contained in:
gingerBill
2021-03-23 20:45:39 +00:00
parent 331167e91f
commit f1e13bdddb
2 changed files with 12 additions and 0 deletions

View File

@@ -2010,6 +2010,9 @@ void lb_debug_complete_types(lbModule *m) {
String name = str_lit("<anonymous-struct>");
if (t->kind == Type_Named) {
name = t->Named.name;
if (t->Named.type_name && t->Named.type_name->pkg && t->Named.type_name->pkg->name.len != 0) {
name = concatenate3_strings(temporary_allocator(), t->Named.type_name->pkg->name, str_lit("."), t->Named.name);
}
LLVMMetadataRef file = nullptr;
unsigned line = 0;

View File

@@ -343,6 +343,15 @@ String concatenate_strings(gbAllocator a, String const &x, String const &y) {
data[len] = 0;
return make_string(data, len);
}
String concatenate3_strings(gbAllocator a, String const &x, String const &y, String const &z) {
isize len = x.len+y.len+z.len;
u8 *data = gb_alloc_array(a, u8, len+1);
gb_memmove(data, x.text, x.len);
gb_memmove(data+x.len, y.text, y.len);
gb_memmove(data+x.len+y.len, z.text, z.len);
data[len] = 0;
return make_string(data, len);
}
String string_join_and_quote(gbAllocator a, Array<String> strings) {
if (!strings.count) {