From 1e93424f67ab362c8fc6844f97c33e0354039827 Mon Sep 17 00:00:00 2001 From: Robby Findler Date: Mon, 9 Apr 2018 11:21:15 -0500 Subject: [PATCH] adjusted the blame objects so that equality tests (and equal hashing) work better --- pkgs/racket-test/tests/racket/contract/blame.rkt | 9 +++++++++ racket/collects/racket/contract/private/blame.rkt | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/pkgs/racket-test/tests/racket/contract/blame.rkt b/pkgs/racket-test/tests/racket/contract/blame.rkt index 2a4d7b5926..afb9bc3c12 100644 --- a/pkgs/racket-test/tests/racket/contract/blame.rkt +++ b/pkgs/racket-test/tests/racket/contract/blame.rkt @@ -320,4 +320,13 @@ '(has-complete-blame? (contract (vectorof integer?) (vector 1 2 3) 'pos 'neg)) #t) + (test/spec-passed/result + 'blame-equality + '(let ([b + (make-blame (srcloc "src.rkt" #f #f #f #f) + 'whatever (λ () 'the-name) 'pos 'neg #t)]) + (equal? (blame-add-context b "thing" #:important 'yes!) + (blame-add-context b "thing" #:important 'yes!))) + #t) + ) diff --git a/racket/collects/racket/contract/private/blame.rkt b/racket/collects/racket/contract/private/blame.rkt index e345249bae..f745f7c0eb 100644 --- a/racket/collects/racket/contract/private/blame.rkt +++ b/racket/collects/racket/contract/private/blame.rkt @@ -103,7 +103,7 @@ [context new-context] [top-known? #t])) -(struct important (name sense-swapped?)) +(struct important (name sense-swapped?) #:transparent) (define (blame-add-unknown-context b) (define old (blame-context b))