On Mon, Jun 28, 2010 at 2:46 PM, Juan Jose Garcia-Ripoll
<juanjose.garciarip...@googlemail.com> wrote:
> * Proclamations are also used to deduce the type of a function's arguments
> and create argument type checks.
>

Hi Juanjo,

  The function arguments checking seems to have a bug.  The attached
testcase (distilled from OpenAxiom) produces the following warnings:

> (compile-file "pbug.lisp")

;;; Loading #P"/usr/local/lib/ecl-10.4.2/cmp.fas"
;;;
;;; Compiling pbug.lisp.
;;; OPTIMIZE levels: Safety=2, Space=0, Speed=3, Debug=0
;;;
;;; Compiling (DEFUN BEGIN-DOLLAR-P ...).
;;; Note:
;;;   in file pbug.lisp, position 55
;;;   at (DEFUN BEGIN-DOLLAR-P ...)
;;;   In function BEGIN-DOLLAR-P, checking types of arguments X.
;;; Note:
;;;   in file pbug.lisp, position 55
;;;   at (DEFUN BEGIN-DOLLAR-P ...)
;;;   Unknown type (T). Assuming it is T.
;;; Compiling (DEFUN COMP-FLUIDIZE ...).
;;; Warning:
;;;   in file pbug.lisp, position 123
;;;   at (DEFUN COMP-FLUIDIZE ...)
;;;   ! Too few arguments for proclaimed function BEGIN-DOLLAR-P
;;; End of Pass 1.
;;; Note:
;;;   Refusing to propagate FUNCALL
;;; Note:
;;;   Refusing to propagate C-INLINE
;;; Warning:
;;;   ! Too few arguments for proclaimed function BEGIN-DOLLAR-P


1. The argument-type in the function proclamation is simple enough
    that ECL should not be confused.

2. ECL pretends that there are too few arguments for proclaimed
    BEGIN-DOLLAR-P.  Yet, the function was proclaimed to be
    of arity 1, and there is exactly one argument supplied in the call.

What are the notes about propagating FUNCALL and C-INLINE about?

-- Gaby

Attachment: pbug.lisp
Description: Binary data

------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
Ecls-list mailing list
Ecls-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ecls-list

Reply via email to