~ chicken-core (chicken-5) 6c09f18961f7b0ae7a1baf7bc05f87bcc72d8e6c
commit 6c09f18961f7b0ae7a1baf7bc05f87bcc72d8e6c Author: megane <meganeka@gmail.com> AuthorDate: Wed Aug 21 08:51:04 2019 +0300 Commit: Peter Bex <peter@more-magic.net> CommitDate: Sun Sep 15 11:26:43 2019 +0200 * scrutinizer.scm: Improve debug output Print walk result at the same indentation level as the "walk:" message. Prefix with "walked" so it's quicker to see what this message is about. The big banners are helpful for finding where the scrutiny starts. Especially when there's a lot of define-types which generate debugging output too. Signed-off-by: Peter Bex <peter@more-magic.net> diff --git a/scrutinizer.scm b/scrutinizer.scm index 76b2e208..369942ee 100644 --- a/scrutinizer.scm +++ b/scrutinizer.scm @@ -175,6 +175,7 @@ (else #f))) (define (scrutinize node db complain specialize strict block-compilation) + (d "################################## SCRUTINIZE ##################################") (define (report loc msg . args) (when *complain?* (warning @@ -794,7 +795,7 @@ (for-each (lambda (n) (walk n e loc #f flow #f)) subs) '*)))) (set! d-depth (sub1 d-depth)) - (dd " ~a -> ~a" class results) + (dd "walked ~a -> ~a flow: ~a" class results flow) results))) (let ((rn (walk (first (node-subexpressions node)) '() '() #f (list (tag)) #f))) @@ -813,6 +814,7 @@ (debugging '(o e) "dropped branches" dropped-branches)) (when (positive? assigned-immediates) (debugging '(o e) "assignments to immediate values" assigned-immediates)) + (d "############################### SCRUTINIZE FINISH ##############################") (when errors (quit-compiling "some variable types do not satisfy strictness")) rn)))Trap