@@ -281,7 +281,7 @@ end;
procedure TTestECPoint.AssertIFiniteFieldsEqual(const a, b: IFiniteField);
begin
- CheckEquals(True, (a as TObject).Equals(b as TObject));
+ CheckEquals(True, a.Equals(b));
end;
procedure TTestECPoint.AssertOptionalValuesAgree(const a, b: TBigInteger);
@@ -67,6 +67,8 @@ function TPrimeField.Equals(const AOther: IFiniteField): Boolean;
if AOther = nil then
Exit(False);
+ if (Self as IFiniteField) = AOther then
+ Exit(True);
Result := FCharacteristic.Equals(AOther.Characteristic);