6491 – [3.3/3.4 Regression] [g77] Logical operations error on logicals when using -fugly-logint (original) (raw)
Doing parallel byte operations with and's, or's fails to run correctly when using --fugly-logint.
The file below is good example of how a.and.b works differently from and(a,b)
Please compile example with g77 -fugly-logint
Release: gcc version 2.95.1 19990816 (release)/GNU Fortran 0.5.25 19990816 (release)
Environment: Linux ibdu 2.2.12-20 #1 Fri Sep 29 07:29:24 EDT 2000 i686 unknown(RedHat 6.1)
How-To-Repeat: Just compile file with -fugly-logint and run to see difference between 2 outputs.
Comment 1 aurag 2002-04-27 14:06:00 UTC
Fix: I have no idea, except that .and. should behave as and(.,.) in my opinion. But I am no expert.
Comment 3 Toon Moene 2003-11-24 21:58:22 UTC
I have to reopen this bug, because the proposed (and implemented) solution caused regression (cf. PR fortran/12633).
Comment 4 aurag 2003-11-25 10:49:34 UTC
Created attachment 5211 [details] This is a modified expr.c that correctly immitates IBM's xlf -qintlog
This should fix the mentionned problem. I had it for a while but forgot to submit it. Sorry
Comment 5 aurag 2003-11-25 10:51:21 UTC
The Expr.zip attachement above contains a modified expr.c file replacing gcc/f/expr.c
This should correctly handle all logical operations and still implements IBM's xlf -qintlog.
It's not the best looking code but it works
Comment 6 Toon Moene 2003-11-25 22:15:30 UTC
Nope, this doesn't fix the test case of PR 12633.
Comment 7 aurag 2003-11-27 17:04:21 UTC
I will look at this asap, and come back with a solution (hopefully).
Comment 8 Drea Pinski 2003-11-27 21:52:04 UTC
Assigning who thought he assigned it to himself.
Comment 9 Drea Pinski 2003-12-23 09:25:34 UTC
Mark it right as the patch which fixed this caused other problems so it was reverted for 3.3.3 and 3.4.
Comment 10 Drea Pinski 2003-12-23 09:26:16 UTC
Mark it right as the patch which fixed this caused other problems so it was reverted for 3.3.3 and 3.4.
Comment 14 Drea Pinski 2004-01-14 03:05:07 UTC
Fixed for 3.4.