Skip to content

Commit 74fcea4

Browse files
wmdietlCopilot
andauthored
Test reference equality before structural equality (eisop#1644)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
1 parent 4cec6e7 commit 74fcea4

92 files changed

Lines changed: 280 additions & 4 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

dataflow/src/main/java/org/checkerframework/dataflow/analysis/TransferInput.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -279,6 +279,9 @@ public TransferInput<V, S> leastUpperBound(TransferInput<V, S> other) {
279279

280280
@Override
281281
public boolean equals(@Nullable Object o) {
282+
if (this == o) {
283+
return true;
284+
}
282285
if (o instanceof TransferInput) {
283286
@SuppressWarnings("unchecked")
284287
TransferInput<V, S> other = (TransferInput<V, S>) o;

dataflow/src/main/java/org/checkerframework/dataflow/busyexpr/BusyExprStore.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,9 @@ public String toString() {
129129

130130
@Override
131131
public boolean equals(@Nullable Object obj) {
132+
if (this == obj) {
133+
return true;
134+
}
132135
if (!(obj instanceof BusyExprStore)) {
133136
return false;
134137
}

dataflow/src/main/java/org/checkerframework/dataflow/busyexpr/BusyExprValue.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,9 @@ public int hashCode() {
3939

4040
@Override
4141
public boolean equals(@Nullable Object obj) {
42+
if (this == obj) {
43+
return true;
44+
}
4245
if (!(obj instanceof BusyExprValue)) {
4346
return false;
4447
}

dataflow/src/main/java/org/checkerframework/dataflow/cfg/node/ArrayAccessNode.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,9 @@ public String toString() {
138138

139139
@Override
140140
public boolean equals(@Nullable Object obj) {
141+
if (this == obj) {
142+
return true;
143+
}
141144
if (!(obj instanceof ArrayAccessNode)) {
142145
return false;
143146
}

dataflow/src/main/java/org/checkerframework/dataflow/cfg/node/ArrayCreationNode.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,9 @@ public String toString() {
9292

9393
@Override
9494
public boolean equals(@Nullable Object obj) {
95+
if (this == obj) {
96+
return true;
97+
}
9598
if (!(obj instanceof ArrayCreationNode)) {
9699
return false;
97100
}

dataflow/src/main/java/org/checkerframework/dataflow/cfg/node/ArrayTypeNode.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,9 @@ public String toString() {
4848

4949
@Override
5050
public boolean equals(@Nullable Object obj) {
51+
if (this == obj) {
52+
return true;
53+
}
5154
if (!(obj instanceof ArrayTypeNode)) {
5255
return false;
5356
}

dataflow/src/main/java/org/checkerframework/dataflow/cfg/node/AssertionErrorNode.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,9 @@ public String toString() {
8686

8787
@Override
8888
public boolean equals(@Nullable Object obj) {
89+
if (this == obj) {
90+
return true;
91+
}
8992
if (!(obj instanceof AssertionErrorNode)) {
9093
return false;
9194
}

dataflow/src/main/java/org/checkerframework/dataflow/cfg/node/AssignmentNode.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,9 @@ public String toString() {
155155
@Override
156156
@Pure
157157
public boolean equals(@Nullable Object obj) {
158+
if (this == obj) {
159+
return true;
160+
}
158161
if (!(obj instanceof AssignmentNode)) {
159162
return false;
160163
}

dataflow/src/main/java/org/checkerframework/dataflow/cfg/node/BitwiseAndNode.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,9 @@ public String toString() {
4040

4141
@Override
4242
public boolean equals(@Nullable Object obj) {
43+
if (this == obj) {
44+
return true;
45+
}
4346
if (!(obj instanceof BitwiseAndNode)) {
4447
return false;
4548
}

dataflow/src/main/java/org/checkerframework/dataflow/cfg/node/BitwiseComplementNode.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,9 @@ public String toString() {
3939

4040
@Override
4141
public boolean equals(@Nullable Object obj) {
42+
if (this == obj) {
43+
return true;
44+
}
4245
if (!(obj instanceof BitwiseComplementNode)) {
4346
return false;
4447
}

0 commit comments

Comments
 (0)