Skip to content

Commit 4c6a5bb

Browse files
authored
Merge pull request #28 from AlexKnauth/patch-1
use make-variable-like-transformer for bitvector and bv
2 parents 1226edf + 07aacdb commit 4c6a5bb

File tree

1 file changed

+4
-7
lines changed

1 file changed

+4
-7
lines changed

rosette/base/core/bitvector.rkt

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
#lang racket
22

3-
(require (for-syntax racket/syntax) racket/stxparam racket/stxparam-exptime)
3+
(require racket/stxparam racket/stxparam-exptime
4+
(for-syntax racket/syntax syntax/transformer))
45
(require "term.rkt" "union.rkt" "bool.rkt" "polymorphic.rkt"
56
"merge.rkt" "safe.rkt" "lift.rkt" "forall.rkt")
67
(require (only-in "real.rkt" @>= @> @= @integer? T*->integer?))
@@ -70,9 +71,7 @@
7071
(define-match-expander @bitvector
7172
(syntax-rules ()
7273
[(_ sz) (bitvector sz)])
73-
(syntax-id-rules (set!)
74-
[(@bitvector sz) (bitvector-type sz)]
75-
[@bitvector bitvector-type]))
74+
(make-variable-like-transformer #'bitvector-type))
7675

7776
(define (bvsmin t) (- (expt 2 (- (bitvector-size t) 1))))
7877
(define (bvsmin? b) (and (bv? b) (= (bv-value b) (bvsmin (bv-type b)))))
@@ -127,9 +126,7 @@
127126
(define-match-expander @bv
128127
(syntax-rules ()
129128
[(_ val-pat type-pat) (bv val-pat type-pat)])
130-
(syntax-id-rules (set!)
131-
[(@bv v t) (make-bv v t)]
132-
[@bv make-bv]))
129+
(make-variable-like-transformer #'make-bv))
133130

134131
(define (@bv? v)
135132
(match v

0 commit comments

Comments
 (0)