1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-21 20:20:24 +02:00
guile/module
Mark H Weaver c3e14b74e8 Fix type inferencing for 'nil?' and 'null?' predicates.
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.
2018-10-19 21:09:43 -04:00
..
ice-9 time: Use #: for 'define-module' clauses. 2018-09-23 16:41:13 +02:00
language Fix type inferencing for 'nil?' and 'null?' predicates. 2018-10-19 21:09:43 -04:00
oop goops: Fix 'instance?' to work on objects that aren't structs. 2018-06-11 10:12:50 -04:00
rnrs Fix R6RS call-with-{input,output}-file to open textual ports. 2018-08-02 10:14:03 -04:00
scripts compile: Update copyright year. 2018-07-19 18:00:19 +02:00
srfi Fix typos, indentation and error reporting in SRFI-19. 2018-10-16 04:20:47 -04:00
sxml Remove duplicate definitions of call/ec' and let/ec'. 2013-04-06 15:40:19 +02:00
system Add -Wshadowed-toplevel. 2018-07-24 11:53:02 +02:00
texinfo texinfo: Remove unnecessary (oop goops) dependency. 2017-03-01 19:28:04 +01:00
web web: Export http-request. 2018-06-23 23:32:13 +02:00
Makefile.am build: Really build srfi/srfi-71.scm. 2018-07-01 23:33:46 +02:00
rnrs.scm Add R6RS bytevector->string, string->bytevector 2016-06-21 11:29:14 +02:00
statprof.scm Fixed bug: statprof flat display wasn't writing summary lines to port 2017-04-19 16:25:00 +02:00
texinfo.scm texinfo: fix @url{@@} parsing 2014-11-09 15:56:33 +00:00