From 164cf8fba33be0ba6a4964f2ccc91638a249a7b6 Mon Sep 17 00:00:00 2001
From: mehbark <terezi@pyrope.net>
Date: Mon, 24 Feb 2025 15:52:53 -0500
Subject: [PATCH] fix: make `define-record-equality!` a definition

---
 record.sls | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/record.sls b/record.sls
index 7a3b14f..65ae023 100644
--- a/record.sls
+++ b/record.sls
@@ -6,6 +6,8 @@
 (define-syntax define-record-equality!
   (syntax-rules ()
     [(_ record-type-name)
+     ;; pointless definition ensures that you can do (begin (define) (define-record-equality!) (define))
+     (define _
      (let ()
        (define rtd (record-type-descriptor record-type-name))
        (define field-count (vector-length (record-type-field-names rtd)))
@@ -17,7 +19,7 @@
                                     (lambda (r1 r2 =)
                                       (for-all
                                        (lambda (accessor) (= (accessor r1) (accessor r2)))
-                                       accessors))))]
+                                       accessors)))))]
     [(_ name name* ...)
      (begin (define-record-equality! name)
             (define-record-equality! name*) ...)]))