diff --git a/src/token.sol b/src/token.sol
index 240f704..10eeda5 100644
--- a/src/token.sol
+++ b/src/token.sol
@@ -15,7 +15,7 @@
// You should have received a copy of the GNU General Public License
// along with this program. If not, see .
-pragma solidity >=0.4.23 <0.7.0;
+pragma solidity >=0.4.23;
import "ds-math/math.sol";
import "ds-auth/auth.sol";
@@ -48,7 +48,7 @@ contract DSToken is DSMath, DSAuth {
}
function approve(address guy) external returns (bool) {
- return approve(guy, uint(-1));
+ return approve(guy, type(uint).max);
}
function approve(address guy, uint wad) public stoppable returns (bool) {
@@ -68,7 +68,7 @@ contract DSToken is DSMath, DSAuth {
stoppable
returns (bool)
{
- if (src != msg.sender && allowance[src][msg.sender] != uint(-1)) {
+ if (src != msg.sender && allowance[src][msg.sender] != type(uint).max) {
require(allowance[src][msg.sender] >= wad, "ds-token-insufficient-approval");
allowance[src][msg.sender] = sub(allowance[src][msg.sender], wad);
}
@@ -110,7 +110,7 @@ contract DSToken is DSMath, DSAuth {
}
function burn(address guy, uint wad) public auth stoppable {
- if (guy != msg.sender && allowance[guy][msg.sender] != uint(-1)) {
+ if (guy != msg.sender && allowance[guy][msg.sender] != type(uint).max) {
require(allowance[guy][msg.sender] >= wad, "ds-token-insufficient-approval");
allowance[guy][msg.sender] = sub(allowance[guy][msg.sender], wad);
}
diff --git a/src/token.t.sol b/src/token.t.sol
index 2acfc1c..12bee08 100644
--- a/src/token.t.sol
+++ b/src/token.t.sol
@@ -15,7 +15,7 @@
// You should have received a copy of the GNU General Public License
// along with this program. If not, see .
-pragma solidity >=0.4.23 <0.7.0;
+pragma solidity >=0.4.23;
import "ds-test/test.sol";
@@ -315,7 +315,7 @@ contract DSTokenTest is DSTest {
function testTrusting() public {
assertEq(token.allowance(self, user2), 0);
token.approve(user2);
- assertEq(token.allowance(self, user2), uint(-1));
+ assertEq(token.allowance(self, user2), type(uint).max);
token.approve(user2, 0);
assertEq(token.allowance(self, user2), 0);
}
@@ -363,10 +363,10 @@ contract DSTokenTest is DSTest {
assertEq(token.allowance(self, user1), 0);
assertEq(token.balanceOf(user1), 0);
token.approve(user1);
- assertEq(token.allowance(self, user1), uint(-1));
+ assertEq(token.allowance(self, user1), type(uint).max);
TokenUser(user1).doPull(self, 1000);
assertEq(token.balanceOf(user1), 1000);
- assertEq(token.allowance(self, user1), uint(-1));
+ assertEq(token.allowance(self, user1), type(uint).max);
}
function testFailTransferOnlyTrustedCaller() public {