diff --git a/pkgs/contract-profile/main.rkt b/pkgs/contract-profile/main.rkt index bdd28ca657..6204c09d08 100644 --- a/pkgs/contract-profile/main.rkt +++ b/pkgs/contract-profile/main.rkt @@ -31,6 +31,12 @@ (blame-swap b) ; swap back b)))) (define regular-profile (analyze-samples samples*)) + ;; all blames must be complete, otherwise we get bogus profiles + (for ([b (in-list all-blames)]) + (unless (and (blame-positive b) + (blame-negative b)) + (error (string-append "contract-profile: incomplete blame:\n" + (format-blame b))))) (contract-profile total-time live-contract-samples all-blames regular-profile)) diff --git a/pkgs/contract-profile/utils.rkt b/pkgs/contract-profile/utils.rkt index 0e9463f665..014a8e644c 100644 --- a/pkgs/contract-profile/utils.rkt +++ b/pkgs/contract-profile/utils.rkt @@ -35,8 +35,8 @@ (lambda () body ...)))) ;; for debugging -(define (print-blame b) - (printf (string-append "#