mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-07 18:30:25 +02:00
Fixes <https://bugs.gnu.org/33036>. Reported by <calcium@disroot.org>. * module/language/cps/types.scm (define-simple-type-inferrer): Apply (logand (&type val) <>) uniformly. Previously, this was done only in the false branch. Rename local variable to 'type*', to allow the macro operand 'type' to be an arbitrary expression. (*type-inferrers*)<null?>: Add &nil to the set of possible types. (*type-inferrers*)<nil?>: Add &false and &null to the set the possible types. * module/language/cps/type-fold.scm (*branch-folders*)<null?>: Add &nil to the set of possible types. (*branch-folders*)<nil?>: Add &false and &null to the set the possible types. * test-suite/tests/compiler.test: Add tests. |
||
---|---|---|
.. | ||
brainfuck | ||
bytecode | ||
cps | ||
ecmascript | ||
elisp | ||
scheme | ||
tree-il | ||
value | ||
bytecode.scm | ||
cps.scm | ||
tree-il.scm |