Core: New unique_name scheme, more human friendly
This commit is contained in:
@@ -371,9 +371,8 @@ gen_try_any_or_slice(Ast_Expr *expr, Ast_Type *decl_type) {
|
||||
|
||||
CORE_Static void
|
||||
gen_var(Ast_Decl *decl, B32 emit_value, B32 scope_names) {
|
||||
if (decl->name == pctx->internf("HERE_IT_IS")) __debugbreak();
|
||||
if (is_flag_set(decl->flags, AST_FOREIGN)) gen("extern ");
|
||||
gen_simple_decl(decl->type, decl->name);
|
||||
gen_simple_decl(decl->type, decl->unique_name);
|
||||
if (is_flag_set(decl->flags, AST_FOREIGN)) return;
|
||||
|
||||
if (emit_value == DONT_EMIT_VALUE) {
|
||||
@@ -428,7 +427,8 @@ gen_expr(Ast_Expr *ast) {
|
||||
if (node->resolved_decl->kind == AST_NAMESPACE)
|
||||
return false;
|
||||
|
||||
if (node->resolved_decl->kind == AST_LAMBDA) {
|
||||
bool is_global_variable = is_flag_set(node->resolved_decl->flags, AST_GLOBAL);
|
||||
if (is_global_variable) {
|
||||
gen("%Q", node->resolved_decl->unique_name);
|
||||
}
|
||||
|
||||
@@ -661,13 +661,18 @@ gen_ast(Ast *ast) {
|
||||
gen("continue;");
|
||||
BREAK();
|
||||
}
|
||||
|
||||
CASE(BREAK, Break) {
|
||||
unused(node);
|
||||
gen("break;");
|
||||
BREAK();
|
||||
}
|
||||
|
||||
CASE(COMPILER_BREAKPOINT, Break) {
|
||||
unused(node);
|
||||
__debugbreak();
|
||||
BREAK();
|
||||
}
|
||||
|
||||
CASE(PASS, Pass) {
|
||||
unused(node);
|
||||
gen("//pass");
|
||||
|
||||
Reference in New Issue
Block a user