~ chicken-core (chicken-5) d17df1bf9af7dfb74f67a63118c9df65e4401645
commit d17df1bf9af7dfb74f67a63118c9df65e4401645
Author: LemonBoy <thatlemon@gmail.com>
AuthorDate: Sat May 27 22:58:31 2017 +0200
Commit: Evan Hanson <evhan@foldling.org>
CommitDate: Tue May 30 11:36:15 2017 +1200
Check the syntax correctness for some constructs
Forgetting to do so leads to segfaults in the compiler and suboptimal
error messages for the end user.
Signed-off-by: Peter Bex <peter@more-magic.net>
Signed-off-by: Evan Hanson <evhan@foldling.org>
diff --git a/chicken-ffi-syntax.scm b/chicken-ffi-syntax.scm
index a14369b4..1bb05407 100644
--- a/chicken-ffi-syntax.scm
+++ b/chicken-ffi-syntax.scm
@@ -203,6 +203,7 @@
'()
(##sys#er-transformer
(lambda (form r c)
+ (##sys#check-syntax 'define-foreign-type form '(_ symbol symbol . #(_ 0 2)))
`(##core#define-foreign-type ,@(cdr form)))))
(##sys#extend-macro-environment
@@ -210,6 +211,7 @@
'()
(##sys#er-transformer
(lambda (form r c)
+ (##sys#check-syntax 'define-foreign-variable form '(_ symbol symbol . #(string 0 1)))
`(##core#define-foreign-variable ,@(cdr form)))))
(##sys#extend-macro-environment
Trap