Assert not properly traced #1354. Update interface fix.

This commit is contained in:
Christoffer Lerno
2024-08-12 21:01:04 +02:00
parent 9aab962ebc
commit 1678e2a939
3 changed files with 7 additions and 6 deletions

View File

@@ -67,6 +67,7 @@
- Int128 alignment change in LLVM fixed on x64.
- Fix interface lazy resolution errors.
- Interface resolution when part of generics #1348.
- Assert not properly traced #1354.
### Stdlib changes

View File

@@ -147,6 +147,11 @@ static void sema_trace_stmt_liveness(Ast *ast)
{
sema_trace_expr_liveness(e);
}
if (safe_mode_enabled())
{
sema_trace_exprid_liveness(ast->assert_stmt.message);
sema_trace_expr_list_liveness(ast->assert_stmt.args);
}
return;
}
case AST_DECLS_STMT:

View File

@@ -98,12 +98,7 @@ static bool add_members_to_decl_stack(SemaContext *context, Decl *decl)
}
if (decl->decl_kind == DECL_INTERFACE)
{
FOREACH(TypeInfo *, parent_interface, decl->interfaces)
{
if (!sema_resolve_type_info(context, parent_interface, RESOLVE_TYPE_DEFAULT)) return false;
Decl *inf = parent_interface->type->decl;
if (!add_interface_to_decl_stack(context, inf)) return false;
}
if (!add_interface_to_decl_stack(context, decl)) return false;
}
if (decl_is_struct_type(decl) || decl->decl_kind == DECL_BITSTRUCT)
{