COMPILE does a better job if there is an additional lambda (result-type derivation lossage involving &more)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
SBCL |
Fix Released
|
Medium
|
Unassigned |
Bug Description
CL-USER> (format t "~&The type is ~S~%"
The type is (FUNCTION (FIXNUM FIXNUM &KEY (:K1 (MEMBER NIL T))) *)
NIL
CL-USER> (format t "~&The type is ~S~%"
The type is (FUNCTION (FIXNUM FIXNUM &KEY (:K1 (MEMBER NIL T)))
NIL
Changed in sbcl: | |
importance: | Undecided → Medium |
status: | New → Confirmed |
tags: | added: compiler |
summary: |
- Difference in type derivation between file compiler and run-time + difference in type derivation between file compiler and run-time compiler |
description: | updated |
summary: |
- difference in type derivation between file compiler and run-time - compiler + COMPILE does a better job if there is an additional lambda |
summary: |
COMPILE does a better job if there is an additional lambda (result-type - derivation losage involving &more) + derivation lossage involving &more) |
Changed in sbcl: | |
assignee: | nobody → Nikodemus Siivola (nikodemus) |
status: | Confirmed → In Progress |
Changed in sbcl: | |
assignee: | Nikodemus Siivola (nikodemus) → nobody |
status: | In Progress → Triaged |
Changed in sbcl: | |
assignee: | nobody → Nikodemus Siivola (nikodemus) |
status: | Triaged → In Progress |
Changed in sbcl: | |
status: | Fix Committed → Fix Released |
The problem seems to be that in the first case the tail-set of the main-entry for the optional dispatch is not the same one the TL-XEP has -- which is the one what gets the return type properly.