From fd311232de67791b24e71241af208cdd407445db Mon Sep 17 00:00:00 2001 From: John Lorentzson Date: Wed, 9 Jul 2025 14:38:49 +0200 Subject: [PATCH] Add error type for missing ASM-FUNCTION --- wip-duuqnd/user-side-compiler/asm-function.lisp | 5 +++-- wip-duuqnd/user-side-compiler/error-handling.lisp | 3 +++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/wip-duuqnd/user-side-compiler/asm-function.lisp b/wip-duuqnd/user-side-compiler/asm-function.lisp index 90e8e23..f1aa905 100644 --- a/wip-duuqnd/user-side-compiler/asm-function.lisp +++ b/wip-duuqnd/user-side-compiler/asm-function.lisp @@ -27,6 +27,7 @@ asm-function (progn (cerror "Create dummy function with placeholder address." - "Tried to transform token into non-existent function ~A." - (name token)) + 'missing-function-error + :format-control "~A" + :format-arguments (list (name token))) (add-asm-function (name token) #xC0FE))))) diff --git a/wip-duuqnd/user-side-compiler/error-handling.lisp b/wip-duuqnd/user-side-compiler/error-handling.lisp index 4bfc669..ed4e95c 100644 --- a/wip-duuqnd/user-side-compiler/error-handling.lisp +++ b/wip-duuqnd/user-side-compiler/error-handling.lisp @@ -38,6 +38,9 @@ (define-condition tokenizer-error (usc-error) ((%context-string :initform "Tokenizing error:"))) +(define-condition missing-function-error (usc-error) + ((%context-string :initform "Non-existent function (TODO nicer error for this):"))) + (define-condition parser-error (usc-error) ((%context-string :initform "Syntax error:")))