------- Additional Comments From mark_l_hansen at yahoo dot com  2005-06-29 
02:08 -------
I did some more research on the bug and found the following:

1) in fortran .TRUE. is 0x1 in hex
2) if(item) statements evaluate to true when the item value is non zero
3) .NOT., .AND., etc either perform bitwise or logical operations depending on
what they are operating on.

The problem occurs when doing bitwise operations and then doing a logical if
check with the -fugly-logint flag.  For example: 0xFF .AND. 0x02 = 0x02 i.e.
True, but  .NOT.(0xFF .AND. 0x02) = 0xFD i.e. also true when the desired result
is false.

I know the above might all be already understood, but I thought it might help if
others are looking into the problems.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21931

Reply via email to