diff --git a/test-uniquify.scm b/test-uniquify.scm index abb327f..df45c20 100644 --- a/test-uniquify.scm +++ b/test-uniquify.scm @@ -25,6 +25,15 @@ (let ([x.1 32]) (+ (let ([x.2 10]) x.2) x.1))))) +(test-eq (uniquify + `(program () + (let ([x 32]) + (- x)))) + `(#hash((x . 1)) + (program () + (let ([x.1 32]) + (- x.1))))) + (test-eq (uniquify `(program () diff --git a/uniquify.scm b/uniquify.scm index 00fde74..70eb782 100644 --- a/uniquify.scm +++ b/uniquify.scm @@ -46,7 +46,7 @@ (begin (define-values (new-symtable res) (for/fold ([cur-symtable symtable] - [res (list '+)]) + [res (list op)]) ([exp es]) (let ([uniquify-result ((uniquify-exp cur-symtable ctxtable) exp)]) (values (car uniquify-result) (append res (list (cadr uniquify-result)))))))