#9917: ECL has too few arguments and two many on file dpp.c
------------------------+---------------------------------------------------
Reporter: drkirkby | Owner: GeorgSWeber
Type: defect | Status: new
Priority: major | Milestone: sage-4.6
Component: build | Keywords: ecl
Author: | Upstream: N/A
Reviewer: | Merged:
Work_issues: |
------------------------+---------------------------------------------------
Description changed by drkirkby:
Old description:
> When I'm building ecl-10.2.1 as part of Sage I get too warning messages
> from gcc.
>
> /export/home/drkirkby/sage-4.6.alpha0/spkg/build/ecl-10.2.1.p2/src/src/c/dpp.c:
> In function 'put_declaration':
> /export/home/drkirkby/sage-4.6.alpha0/spkg/build/ecl-10.2.1.p2/src/src/c/dpp.c:678:5:
> warning: too few arguments for format
> /export/home/drkirkby/sage-4.6.alpha0/spkg/build/ecl-10.2.1.p2/src/src/c/dpp.c:680:13:
> warning: too many arguments for format
>
> Looking at line 678 of dpp.c, I see:
>
> fprintf(out, "\tif (ecl_unlikely(narg!=%d))");
>
> So there's a %d, but what is associate with the %d? There should be an
> integer, but there is not one. So it seems to me gcc is right to complain
> there are too few arguments for format.
>
> Likewise, on line 680, I see:
>
> fprintf(out, "\t FEwrong_num_arguments(MAKE_FIXNUM(%d));\n",
> nreq, function_code);
>
> There's one two arguments supplied, but only one %d is there. That does
> not make any sense to me. Both "nreq" and "function_code" are declared as
> integers, so should there not two %d's and not one?
>
> Again, it seems gcc is right to complain that.
>
> There are thousands of warning messages in Sage, but I'm a bit concerned
> about resolving those in ecl, as the ecl library being built has text
> relocation problems - see #9840
>
> Dave
New description:
When I'm building ecl-10.2.1 as part of Sage I get too warning messages
from gcc.
{{{
/export/home/drkirkby/sage-4.6.alpha0/spkg/build/ecl-10.2.1.p2/src/src/c/dpp.c:
In function 'put_declaration':
/export/home/drkirkby/sage-4.6.alpha0/spkg/build/ecl-10.2.1.p2/src/src/c/dpp.c:678:5:
warning: too few arguments for format
/export/home/drkirkby/sage-4.6.alpha0/spkg/build/ecl-10.2.1.p2/src/src/c/dpp.c:680:13:
warning: too many arguments for format
}}}
Looking at line 678 of dpp.c, I see:
{{{
fprintf(out, "\tif (ecl_unlikely(narg!=%d))");
}}}
So there's a %d, but what is associate with the %d? There should be an
integer, but there is not one. So it seems to me gcc is right to complain
there are too few arguments for format.
Likewise, on line 680, I see:
{{{
fprintf(out, "\t FEwrong_num_arguments(MAKE_FIXNUM(%d));\n",
nreq, function_code);
}}}
There we observe two arguments supplied, but only one %d is there. That
does not make any sense to me. Both "nreq" and "function_code" are
declared as integers, so should there not two %d's and not one.
Again, it seems gcc is right to complain that.
There are thousands of warning messages in Sage, but I'm a bit concerned
about resolving those in ecl, as the ecl library being built has text
relocation problems - see #9840
Dave
--
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/9917#comment:1>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.