Move around experimental tests

Exclude list for AST JSON tests

Fix type inference shellcheck failure

Disable shellcheck SC2086
This commit is contained in:
Nikola Matic
2023-09-14 07:56:33 +02:00
parent 7c2f5ee171
commit 319a6c4999
19 changed files with 53 additions and 8 deletions
@@ -0,0 +1,5 @@
pragma experimental solidity;
// ====
// EVMVersion: >=constantinople
// ----
// Warning 2264: (0-29): Experimental features are turned on. Do not use experimental features on live deployments.
@@ -0,0 +1,26 @@
==== Source: A.sol ====
contract A {}
==== Source: B.sol ====
pragma experimental solidity;
import "A.sol";
contract B {
A a;
}
==== Source: C.sol ====
pragma experimental solidity;
import "A.sol";
contract C {
A a;
}
==== Source: D.sol ====
pragma experimental solidity;
import "A.sol";
contract D {
A a;
}
// ====
// EVMVersion: >=constantinople
// ----
// ParserError 2141: (B.sol:0-29): File declares "pragma experimental solidity". If you want to enable the experimental mode, all source units must include the pragma.
// ParserError 2141: (C.sol:0-29): File declares "pragma experimental solidity". If you want to enable the experimental mode, all source units must include the pragma.
// ParserError 2141: (D.sol:0-29): File declares "pragma experimental solidity". If you want to enable the experimental mode, all source units must include the pragma.
@@ -0,0 +1,7 @@
contract A {}
pragma experimental solidity;
// ====
// EVMVersion: >=constantinople
// ----
// ParserError 8185: (45-45): Experimental pragma "solidity" can only be set at the beginning of the source unit.
@@ -0,0 +1,15 @@
function f() pure returns (uint)
{
return 1;
}
pragma experimental solidity;
struct A
{
uint256 x;
}
// ====
// EVMVersion: >=constantinople
// ----
// ParserError 8185: (83-89): Experimental pragma "solidity" can only be set at the beginning of the source unit.
@@ -0,0 +1,8 @@
pragma experimental solidity;
contract C {}
// ====
// EVMVersion: <constantinople
// ----
// ParserError 7637: (31-39): Experimental solidity requires Constantinople EVM version at the minimum.
@@ -6,4 +6,5 @@ import std.stub;
// ----
// Warning 2264: (std.stub:63-92): Experimental features are turned on. Do not use experimental features on live deployments.
// Warning 2264: (0-29): Experimental features are turned on. Do not use experimental features on live deployments.
// UnimplementedFeatureError 6547: Experimental Analysis is not implemented yet.
// Info 4164: (std.stub:94-117): Inferred type: () -> ()
// Info 4164: (std.stub:111-113): Inferred type: ()
@@ -6,4 +6,5 @@ import std.stub as stub;
// ----
// Warning 2264: (std.stub:63-92): Experimental features are turned on. Do not use experimental features on live deployments.
// Warning 2264: (0-29): Experimental features are turned on. Do not use experimental features on live deployments.
// UnimplementedFeatureError 6547: Experimental Analysis is not implemented yet.
// Info 4164: (std.stub:94-117): Inferred type: () -> ()
// Info 4164: (std.stub:111-113): Inferred type: ()
@@ -6,4 +6,6 @@ import { identity } from std.stub;
// ----
// Warning 2264: (std.stub:63-92): Experimental features are turned on. Do not use experimental features on live deployments.
// Warning 2264: (0-29): Experimental features are turned on. Do not use experimental features on live deployments.
// UnimplementedFeatureError 6547: Experimental Analysis is not implemented yet.
// Info 4164: (std.stub:94-117): Inferred type: () -> ()
// Info 4164: (std.stub:111-113): Inferred type: ()
// Info 4164: (40-48): Inferred type: () -> ()
@@ -6,4 +6,5 @@ import * as stub from std.stub;
// ----
// Warning 2264: (std.stub:63-92): Experimental features are turned on. Do not use experimental features on live deployments.
// Warning 2264: (0-29): Experimental features are turned on. Do not use experimental features on live deployments.
// UnimplementedFeatureError 6547: Experimental Analysis is not implemented yet.
// Info 4164: (std.stub:94-117): Inferred type: () -> ()
// Info 4164: (std.stub:111-113): Inferred type: ()
@@ -0,0 +1,4 @@
function f() pure {
uint word; word;
uint static_assert; static_assert;
}
@@ -0,0 +1,24 @@
pragma experimental solidity;
import { identity as id } from std.stub;
contract C
{
fallback() external
{
id();
}
}
// ====
// EVMVersion: >=constantinople
// ----
// Warning 2264: (std.stub:63-92): Experimental features are turned on. Do not use experimental features on live deployments.
// Warning 2264: (0-29): Experimental features are turned on. Do not use experimental features on live deployments.
// Info 4164: (std.stub:94-117): Inferred type: () -> ()
// Info 4164: (std.stub:111-113): Inferred type: ()
// Info 4164: (40-48): Inferred type: () -> ()
// Info 4164: (90-135): Inferred type: () -> ()
// Info 4164: (98-100): Inferred type: ()
// Info 4164: (124-128): Inferred type: ()
// Info 4164: (124-126): Inferred type: () -> ()