Hi Robert,

Since there's only one ACATS FAIL on mipsel-linux I investigated it
and it looks like a-teioed.adb code is wrong in some case:

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39221
<<
,.,. CXF3A01 ACATS 2.5 09-02-17 22:07:04
---- CXF3A01 Check that the Valid function from package
                Ada.Text_IO.Editing returns False for strings that fail 
                to comply with the composition constraints defined for
                picture strings. Check that the Valid function returns
                True for strings that conform to the composition
                constraints defined for picture strings.
   * CXF3A01 Incorrect result from Function Valid using Invalid_String =
                99999999999999999999999999999999999999999999999999999999
                999999999.
**** CXF3A01 FAILED ****************************.

http://gcc.gnu.org/ml/gcc-testresults/2009-02/msg01635.html

After investigation it looks like the code of Expand is wrong when
Picture'Length > MAX_PICSIZE since in this case memory after Result will be
overwritten (on all platform, but with effect FAIL on mipsel and ia64-linux).

Two obvious solutions: use Unsupress locally since there's already a others
handler or add explicit length checks.
>>

To reach quickly the interesting point under gdb:

break cxf3a01.adb:110
cond 1 i=25
run
step

If you share my analysis, what solution do you suggest?

Thanks in advance,

Laurent

Reply via email to