diff options
| author | A404M <ahmadmahmoudiprogrammer@gmail.com> | 2025-04-07 19:12:17 +0330 | 
|---|---|---|
| committer | A404M <ahmadmahmoudiprogrammer@gmail.com> | 2025-04-07 19:12:17 +0330 | 
| commit | ec346278c8f5155d7c044a26415cd4489d71a0af (patch) | |
| tree | fb3d85fccce366157c27abb3da43ceba2f63ddb9 | |
| parent | 92bf7bf5de203eac51befc914dfddbc29d49351b (diff) | |
speed improvements
| -rw-r--r-- | code/main.felan | 9 | ||||
| -rw-r--r-- | src/compiler/ast-tree.c | 11 | 
2 files changed, 6 insertions, 14 deletions
diff --git a/code/main.felan b/code/main.felan index 667adbe..f1e224c 100644 --- a/code/main.felan +++ b/code/main.felan @@ -24,16 +24,9 @@ array :: (t:type) -> type {    };  }; -array2 :: (t:type) -> type { -  return struct { -    ptr : *t; -    length : usize; -  }; -}; -  array_int :: array(u64);  array_int1 :: array(u64); -array_int2 :: array2(u64); +array_int2 :: array(i64);  main :: () -> void {    print_u64 (if array_int == array_int1 1 else 0); diff --git a/src/compiler/ast-tree.c b/src/compiler/ast-tree.c index d014f4a..5fa13ab 100644 --- a/src/compiler/ast-tree.c +++ b/src/compiler/ast-tree.c @@ -3517,12 +3517,11 @@ bool setTypesFunctionCall(AstTree *tree, AstTreeSetTypesHelper helper) {  bool setTypesVariable(AstTree *tree, AstTreeSetTypesHelper helper) {    AstTreeVariable *metadata = tree->metadata; -  if (setTypesAstVariable(metadata, helper)) { -    tree->type = copyAstTree(metadata->type); -    return true; -  } else { +  if (!setTypesAstVariable(metadata, helper)) {      return false;    } +  tree->type = copyAstTree(metadata->type); +  return true;  }  bool setTypesOperatorAssign(AstTree *tree, AstTreeSetTypesHelper helper) { @@ -3627,9 +3626,9 @@ bool setTypesOperatorDereference(AstTree *tree, AstTreeSetTypesHelper helper) {  }  bool setTypesVariableDefine(AstTree *tree, AstTreeSetTypesHelper helper) { -  AstTreeVariable *metadata = tree->metadata; +  (void)helper;    tree->type = &AST_TREE_VOID_TYPE; -  return setTypesAstVariable(metadata, helper); +  return true;  }  bool setTypesAstVariable(AstTreeVariable *variable,  |