~ chicken-core (chicken-5) 7079f6853e4d9e3a339193420086e454825a6fd1
commit 7079f6853e4d9e3a339193420086e454825a6fd1
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:26 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 ea87ced7..c9970713 100644
--- a/chicken-ffi-syntax.scm
+++ b/chicken-ffi-syntax.scm
@@ -195,6 +195,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
@@ -202,6 +203,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