From b379aae8b607c707dd74339c344612d58a62291a Mon Sep 17 00:00:00 2001 From: alex-eg Date: Wed, 22 Oct 2025 22:28:37 +0300 Subject: [PATCH] add c-or/c-bit-or/c-bit-or= support --- fmt-c-writer.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/fmt-c-writer.scm b/fmt-c-writer.scm index bb58b7f..6734d86 100644 --- a/fmt-c-writer.scm +++ b/fmt-c-writer.scm @@ -75,6 +75,11 @@ (('cast expr type) (list '%cast (walk-type type) (walk-expr expr))) + ;; | is problematic... And c-or/bit-or/etc are actually + ;; procedures, so we have to call the procedure itself + (('c-or . rest) (apply c-or (map walk-expr rest))) + (('c-bit-or . rest) (apply c-bit-or (map walk-expr rest))) + (('c-bit-or= . rest) (apply c-bit-or= (map walk-expr rest))) (else (map walk-expr form)))) (define (walk-var form)