Fixing type bugs

This commit is contained in:
Krzosa Karol
2022-10-04 20:03:37 +02:00
parent fb3226a059
commit ed0b32eb3e
3 changed files with 19 additions and 25 deletions

View File

@@ -345,18 +345,6 @@ gen_expr(Ast_Expr *ast){
if(node->resolved_decl->kind == AST_MODULE_NAMESPACE || node->resolved_decl->kind == AST_FILE_NAMESPACE)
return false;
/// @edit
// if(type_of_var && is_slice(type_of_var) && is_array(node->resolved_decl->type)){
// gen("{%d, ", (int)node->resolved_decl->type->arr.size);
// gen("%Q}", node->intern_val);
// }
// else if(type_of_var && !is_any(ast->resolved_type) && is_any(type_of_var)){
// gen("(Any){&");
// gen_expr(ast);
// gen(", %d}", ast->resolved_type->type_id);
// }
if(node->resolved_decl->kind == AST_LAMBDA){
gen("%Q", node->resolved_decl->unique_name);
}
@@ -370,14 +358,6 @@ gen_expr(Ast_Expr *ast){
}
CASE(VALUE, Atom){
// @edit
// if(is_any(type_of_var)){
// gen("(Any){&");
// gen("("); gen_simple_decl(node->type); gen("){"); gen_value(node->pos, node->value); gen("}");
// gen(", %d}", node->type->type_id);
// return true;
// }
B32 written = gen_value(node->pos, node->value);
if(!written) {
gen("%Q", node->value.intern_val);
@@ -393,7 +373,7 @@ gen_expr(Ast_Expr *ast){
CASE(INDEX, Index){
gen("(");
gen_expr(node->expr);
if(node->index_original_type == type_string){
if(node->index_original_type == type_string || node->index_original_type == untyped_string){
gen(".str");
}
else if(is_slice(node->index_original_type)){