Skip to content

Commit 3ed0cd0

Browse files
committed
Always pick the correct argument in gen_or().
I got the comments right, but not all of the code, fix that and update the tests.
1 parent 9309458 commit 3ed0cd0

File tree

2 files changed

+8
-8
lines changed

2 files changed

+8
-8
lines changed

gencode.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1462,10 +1462,10 @@ gen_or(struct block *b0, struct block *b1)
14621462
return b0;
14631463
// True or X is true.
14641464
if (b0->meaning == IS_TRUE)
1465-
return b1;
1465+
return b0;
14661466
// X or true is true.
14671467
if (b1->meaning == IS_TRUE)
1468-
return b0;
1468+
return b1;
14691469

14701470
// b0->meaning == IS_UNCERTAIN && b1->meaning == IS_UNCERTAIN
14711471
b0->sense = !b0->sense;

testprogs/TESTrun

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17265,7 +17265,9 @@ my @accept_blocks = (
1726517265
'ip6 or ip', # [3] False or true is true.
1726617266
'not ip or ip', # [3] Not true or true is true.
1726717267
'ip or ip', # [4] True or true is true.
17268-
'not ip6 or ip', # [4] Not false or true is not false. (BUG!)
17268+
'ip or not ip6', # [4] True or not false is true.
17269+
'ip or igmp', # [9] True or X is true.
17270+
'igmp or ip', # [10] X or true is true.
1726917271
],
1727017272
opt => '
1727117273
(000) ret #262144
@@ -17289,8 +17291,10 @@ my @accept_blocks = (
1728917291
'not ip6 or not ip', # [2] Not false or not true is not false.
1729017292
'ip6 or not ip6', # [3] False or not false is not false.
1729117293
'not ip or not ip6', # [3] Not true or not false is not false.
17294+
'not ip6 or ip', # [4] Not false or true is not false.
1729217295
'not ip6 or not ip6', # [4] Not false or not false is not false.
17293-
'ip or not ip6', # [4] True or not false is true. (BUG!)
17296+
'not ip6 or igmp', # [9] Not false or X is not false.
17297+
'igmp or not ip6', # [10] X or not false is not false.
1729417298
],
1729517299
opt => '
1729617300
(000) ret #262144
@@ -17316,10 +17320,6 @@ my @accept_blocks = (
1731617320
'not ip or igmp', # [7] Not true or X is X.
1731717321
'igmp or ip6', # [8] X or false is X.
1731817322
'igmp or not ip', # [8] X or not true is X.
17319-
'ip or igmp', # [9] True or X is true. (BUG!)
17320-
'not ip6 or igmp', # [9] Not false or X is not false. (BUG!)
17321-
'igmp or ip', # [10] X or true is true. (BUG!)
17322-
'igmp or not ip6', # [10] X or not false is not false. (BUG!)
1732317323
],
1732417324
optunopt => '
1732517325
(000) ldb [9]

0 commit comments

Comments
 (0)