From e0dbda3ab7082551c5b1ccd06bcd76f1d3f437ba Mon Sep 17 00:00:00 2001 From: Brad Lewis <22850972+BradLewis@users.noreply.github.com> Date: Sat, 4 Oct 2025 08:06:26 -0400 Subject: Add proc inlining information for generic procs --- src/server/analysis.odin | 3 ++- src/server/generics.odin | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/server/analysis.odin b/src/server/analysis.odin index abddab6..1ee5ad6 100644 --- a/src/server/analysis.odin +++ b/src/server/analysis.odin @@ -2482,7 +2482,8 @@ resolve_symbol_return :: proc(ast_context: ^AstContext, symbol: Symbol, ok := tr } case SymbolProcedureValue: if v.generic { - if resolved_symbol, ok := resolve_generic_function(ast_context, v.arg_types, v.return_types); ok { + if resolved_symbol, ok := resolve_generic_function(ast_context, v.arg_types, v.return_types, v.inlining); + ok { return resolved_symbol, ok } else { return symbol, true diff --git a/src/server/generics.odin b/src/server/generics.odin index e8abdaf..d57f4d5 100644 --- a/src/server/generics.odin +++ b/src/server/generics.odin @@ -502,7 +502,7 @@ resolve_generic_function_ast :: proc(ast_context: ^AstContext, proc_lit: ast.Pro results = proc_lit.type.results.list } - return resolve_generic_function_symbol(ast_context, params, results) + return resolve_generic_function_symbol(ast_context, params, results, proc_lit.inlining) } @@ -510,6 +510,7 @@ resolve_generic_function_symbol :: proc( ast_context: ^AstContext, params: []^ast.Field, results: []^ast.Field, + inlining: ast.Proc_Inlining, ) -> ( Symbol, bool, @@ -686,6 +687,7 @@ resolve_generic_function_symbol :: proc( arg_types = argument_types[:], orig_arg_types = params[:], orig_return_types = results[:], + inlining = inlining, } return symbol, true -- cgit v1.2.3