On Tue, Jun 29, 2010 at 2:12 AM, Gabriel Dos Reis <gdr@integrable-solutions.net> wrote:
On Mon, Jun 28, 2010 at 2:46 PM, Juan Jose Garcia-Ripoll
<juanjose.garciaripoll@googlemail.com> wrote:
> * Proclamations are also used to deduce the type of a function's arguments
> and create argument type checks.
>
The function arguments checking seems to have a bug.

Thanks a lot for the test case. I identified a problem with how FTYPE declarations are parsed. I did not detect the problem because I was focusing on PROCLAIM, not DECLAIM. It should be fixed now, but just started an OpenAxiom build to make sure -- Maxima works, though.
 
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.

These two were caused by the error I just fixed.
 
What are the notes about propagating FUNCALL and C-INLINE about?

The type propagator is complaining about forms for which there is no type propagation code. I just disabled some of them, but seems I forgot FUNCALL.

Juanjo

--
Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)
http://juanjose.garciaripoll.googlepages.com