--- Comment #8 from sfalco at harris dot com 2008-07-10 13:15 ---
Thanks, and sorry for the bogus report.
I'll pursue it with the authors of the e2fs utilities.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36775
--- Comment #7 from pinskia at gcc dot gnu dot org 2008-07-09 21:50 ---
Not a bug as the code violates aliasing rules.
--
pinskia at gcc dot gnu dot org changed:
What|Removed |Added
--
--- Comment #6 from schwab at suse dot de 2008-07-09 21:30 ---
extern __inline__ errcode_t ext2fs_get_mem(unsigned long size, void *ptr)
{
void **pp = (void **)ptr;
*pp = malloc(size);
[...]
}
[...]
{
ext2_u32_list bb;
errcode_t retval;
retval = ext2fs_get_mem(sizeof(struct ext2_s
--- Comment #5 from sfalco at harris dot com 2008-07-09 21:08 ---
That works. Here is what the generated code looks like. As you can see, r3 is
immediately stored to bb->list, which is what I would expect.
14c0: 48 04 05 d1 bl 10040a90 <[EMAIL PROTECTED]>
14c4:
--- Comment #4 from pinskia at gcc dot gnu dot org 2008-07-09 21:04 ---
This looks like an aliasing violation.What happens if you compile with -O2
-fno-strict-aliasing ?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36775