PR# 13862 NATURAL_32 attribute value displayed incorrectly when object printed

Problem Report Summary
Submitter: prestoat2000
Category: Runtime
Priority: Medium
Date: 2008/01/07
Class: Bug
Severity: Serious
Number: 13862
Release: 6.1.71477
Confidential: No
Status: Closed
Responsible:
Environment: Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.8.0.7) Gecko/20060915 Firefox/1.5.0.7 Solaris 9 on SPARC
Synopsis: NATURAL_32 attribute value displayed incorrectly when object printed

Description
If a class with a NATURAL_32 attribute whose value is 2^32-1 prints `Current'
the value of the attribute is displayed as -1.  This is due to incorrect
format specified in routines rec_write and rec_swrite in out.c.  They are
using %d as the format specifier for a natural instead of %u.  The format
specifiers for other NATURAL types should also be corrected, though they
might not make a difference on most platforms.  You might want to define
something similar to EIF_NATURAL_64_DISPLAY for the smaller natural types
instead and then use that (might be more easily portable).

The attached class could be (and should be) turned into an eweasel test.
To Reproduce

										
Problem Report Interactions
From:manus_eiffel    Date:2009/04/01    Status: Closed    Download   
This is now fixed in rev#78028.

From:prestoat2000    Date:2008/12/22    Download   
Added eweasel test exec298 for this bug.

From:prestoat2000    Date:2008/01/07    Download   
Attachments for problem report #13862

Attachment: test.e     Size:184