fix: 'builtins'

This commit is contained in:
2026-07-22 11:21:37 +02:00
parent a0a8771141
commit b8170c3c01
2 changed files with 10 additions and 4 deletions
+9 -4
View File
@@ -143,12 +143,17 @@ int lisp_function_builtins(Nodes args, Scopes *scopes, Node *result) {
} }
Scope *global_scope = nob_da_first(scopes); Scope *global_scope = nob_da_first(scopes);
Nodes nodes = {0}; Nodes *nodes = malloc(sizeof(Nodes));
nob_da_foreach(ScopeObject, scope_object, global_scope) { if (nodes == NULL) {
nob_da_append(&nodes, scope_object->node); printf("Failed to allocated memory, something is very wrong!\n");
return 1;
} }
*result->as_list = nodes; nob_da_foreach(ScopeObject, scope_object, global_scope) {
nob_da_append(nodes, scope_object->node);
}
result->as_list = nodes;
result->kind = NODE_KIND_LIST; result->kind = NODE_KIND_LIST;
return 0; return 0;
} }
+1
View File
@@ -53,6 +53,7 @@ void build_scopes(Scopes *scopes) {
scope_add_function(&global_scope, "append", lisp_function_append); scope_add_function(&global_scope, "append", lisp_function_append);
scope_add_function(&global_scope, "length", lisp_function_length); scope_add_function(&global_scope, "length", lisp_function_length);
scope_add_function(&global_scope, "null?", lisp_function_isnull); scope_add_function(&global_scope, "null?", lisp_function_isnull);
scope_add_function(&global_scope, "builtins", lisp_function_builtins);
scope_add_function(&global_scope, "floor", lisp_function_floor); scope_add_function(&global_scope, "floor", lisp_function_floor);
scope_add_function(&global_scope, "ceil", lisp_function_ceil); scope_add_function(&global_scope, "ceil", lisp_function_ceil);