From 852c55a7689182b2fd28b6da346fff63f36bf5b7 Mon Sep 17 00:00:00 2001 From: IgorCielniak Date: Sun, 21 Dec 2025 13:41:34 +0100 Subject: [PATCH] small update --- main.py | 9 ++++++++- stdlib/stdlib.sl | 5 +++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/main.py b/main.py index 8bfb713..693cb8c 100644 --- a/main.py +++ b/main.py @@ -2543,9 +2543,16 @@ class Compiler: except FileNotFoundError as exc: raise ParseError(f"cannot import {path}: {exc}") from exc lines: List[str] = [] + in_py_block = False for idx, line in enumerate(contents.splitlines()): stripped = line.strip() - if stripped.startswith("import "): + # Detect :py block start/end + if stripped.startswith(":py") and "{" in stripped: + in_py_block = True + if in_py_block and "}" in stripped: + in_py_block = False + # Only process import as file import if not in :py block + if not in_py_block and stripped.startswith("import "): target = stripped.split(None, 1)[1].strip() if not target: raise ParseError(f"empty import target in {path}:{idx + 1}") diff --git a/stdlib/stdlib.sl b/stdlib/stdlib.sl index b5d0a72..05dc134 100644 --- a/stdlib/stdlib.sl +++ b/stdlib/stdlib.sl @@ -1,3 +1,8 @@ +:asm int3 { + int3 +} +; + # : c@ ( addr -- byte ) :asm c@ { mov rax, [r12]