Disallow calldata arrays with dynamically encoded base types in TypeChecker.

This commit is contained in:
Daniel Kirchner
2019-02-11 17:13:12 +01:00
parent 92cb6cb793
commit 9e32aa7510
7 changed files with 52 additions and 0 deletions
@@ -0,0 +1,6 @@
pragma experimental ABIEncoderV2;
contract Test {
function f(uint[3] calldata) external { }
}
// ----
// Warning: (0-33): Experimental features are turned on. Do not use experimental features on live deployments.
@@ -0,0 +1,6 @@
pragma experimental ABIEncoderV2;
contract Test {
function f(uint[] calldata) external { }
}
// ----
// Warning: (0-33): Experimental features are turned on. Do not use experimental features on live deployments.
@@ -0,0 +1,6 @@
pragma experimental ABIEncoderV2;
contract Test {
function f(uint[3][4] calldata) external { }
}
// ----
// Warning: (0-33): Experimental features are turned on. Do not use experimental features on live deployments.
@@ -0,0 +1,7 @@
pragma experimental ABIEncoderV2;
contract Test {
function f(uint[][] calldata) external { }
}
// ----
// Warning: (0-33): Experimental features are turned on. Do not use experimental features on live deployments.
// TypeError: (65-82): Calldata arrays with dynamically encoded base types are not yet supported.
@@ -6,3 +6,4 @@ contract Test {
}
// ----
// Warning: (0-33): Experimental features are turned on. Do not use experimental features on live deployments.
// TypeError: (131-145): Calldata arrays with dynamically encoded base types are not yet supported.