This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug ada/24533] FAIL: a85013b: *** glibc detected *** free(): invalid pointer: 0x00062a00 ***
- From: "charlet at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 3 Jan 2006 13:28:58 -0000
- Subject: [Bug ada/24533] FAIL: a85013b: *** glibc detected *** free(): invalid pointer: 0x00062a00 ***
- References: <bug-24533-276@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #4 from charlet at gcc dot gnu dot org 2006-01-03 13:28 -------
The bug is that the following line in s-osinte-linux-hppa.ads is wrong:
for atomic_lock_t'Alignment use 8 * 16;
The alignment clause takes *bytes*, not *bits*, so you need to use instead:
for atomic_lock_t'Alignment use 16;
The inconsistency between new and free for objects aligned more than
Standard'Maximum_Alignment is indeed a known latent issue that
is being worked on and is not trivial to fix, but should not affect the Ada
run-time itself (except when a wrong clause is defined as was the case here).
Change suggested above pre-approved.
Arno
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24533