From 60ce82e68bebcb842b417fba440b96b5a12720eb Mon Sep 17 00:00:00 2001
From: afonya <adamhir@freemail.hu>
Date: Wed, 18 Jun 2025 19:37:47 +0200
Subject: [PATCH] fixed multi file error messages

---
 src/compiler.rs |  8 +++++---
 src/main.rs     |  2 +-
 test.asl        | 10 ++--------
 3 files changed, 8 insertions(+), 12 deletions(-)

diff --git a/src/compiler.rs b/src/compiler.rs
index d30d014..49110e5 100644
--- a/src/compiler.rs
+++ b/src/compiler.rs
@@ -32,7 +32,8 @@ struct Compiled {
     variables: Vec<Variable>,
     strings: HashMap<u32, String>,
     functions: HashMap<u32, Compiled>,
-    try_catch: Option<u32>
+    try_catch: Option<u32>,
+    ctx: Context
 }
 
 #[derive(Debug, Clone)]
@@ -753,7 +754,8 @@ fn compile_function(ast: Vec<ASTPart>, args: Option<Vec<String>>, registers: &mu
         variables,
         strings,
         functions,
-        try_catch
+        try_catch,
+        ctx: ctx.clone(),
     };
 }
 
@@ -825,7 +827,7 @@ fn compile_body(compiled: Compiled, fpos: &mut usize, ctx: &Context) -> (Vec<u8>
         *fpos += 1;
         append_be_num(&mut output, 3, *funcs as usize);
         append_be_num(&mut output, 4, *fpos);
-        let (compiled, mut context) = compile_body(compiled.functions[funcs].clone(), fpos, ctx);
+        let (compiled, mut context) = compile_body(compiled.functions[funcs].clone(), fpos, &compiled.functions[funcs].ctx);
         for c in &mut context {
             c.c_funcid = *fpos
         }
diff --git a/src/main.rs b/src/main.rs
index 291e975..0b758b0 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -10,7 +10,7 @@ mod virtualmachine;
 mod errors;
 mod decompiler;
 
-const CLIVER: [u8; 3] = [1,0,1];
+const CLIVER: [u8; 3] = [1,0,2];
 
 #[derive(Debug, Clone)]
 struct Context {
diff --git a/test.asl b/test.asl
index c56098e..3324140 100644
--- a/test.asl
+++ b/test.asl
@@ -1,8 +1,2 @@
-gethelj con = kábel.kapcsolódj(szaft"example.com:80"szaft)
-con.írj(con, szaft"GET / HTTP/1.1
-User-Agent: Astro Lang
-Host: example.com
-
-"szaft)
-ugass(con.olvass(con, 5120))
-con.zár(con)
\ No newline at end of file
+hámozd test be szaft"test2.asl"szaft
+gethelj a = szaft"asd"szaft+1
\ No newline at end of file