This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Ada] GNAAMP run-time failure with "not" operator in ACATS C41325A)


Tested on i686-linux, committed on trunk

The Vector constant True_Val, used to implement the "not" operator for unpacked
Boolean arrays, was initialized to a bit pattern based on the assumption that
components of such arrays are allocated in bytes. On targets where a storage
unit is larger (specifically AAMP, which is addressed by 16-bit words), the
initialization needs to take the larger component size into account, and is
changed to use the storage unit size for setting the True bits rather than
assuming a byte size.

See ACATS test C41325A

2007-08-14  Gary Dismukes  <dismukes@adacore.com>

	* s-veboop.adb (SU): New named number initialized to
	System.Storage_Unit.
	(True_Val): The initialization expression is revised to use SU (=
	Storage_Unit) rather than assuming 8 for the component size of an
	unpacked Boolean array.

Attachment: difs
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]