diff --git a/test/libsolidity/syntaxTests/viewPureChecker/address.sol b/test/libsolidity/syntaxTests/viewPureChecker/address.sol new file mode 100644 index 000000000..5c17dac64 --- /dev/null +++ b/test/libsolidity/syntaxTests/viewPureChecker/address.sol @@ -0,0 +1,8 @@ +contract C { + function f() public view returns (uint) { + return address(this).balance; + } + function g() public view returns (uint) { + return address(0).balance; + } +} diff --git a/test/libsolidity/syntaxTests/viewPureChecker/assembly.sol b/test/libsolidity/syntaxTests/viewPureChecker/assembly.sol index c3ab88b5b..8e1081385 100644 --- a/test/libsolidity/syntaxTests/viewPureChecker/assembly.sol +++ b/test/libsolidity/syntaxTests/viewPureChecker/assembly.sol @@ -14,10 +14,16 @@ contract C { function h() view public { assembly { function g() { pop(blockhash(20)) } } } - function j() public { + function i() public { assembly { pop(call(0, 1, 2, 3, 4, 5, 6)) } } - function k() public { + function j() public { assembly { pop(call(gas(), 1, 2, 3, 4, 5, 6)) } } + function k() public view { + assembly { pop(balance(0)) } + } + function l() public view { + assembly { pop(extcodesize(0)) } + } } diff --git a/test/libsolidity/syntaxTests/viewPureChecker/assembly_constantinople.sol b/test/libsolidity/syntaxTests/viewPureChecker/assembly_constantinople.sol new file mode 100644 index 000000000..ed0b20d53 --- /dev/null +++ b/test/libsolidity/syntaxTests/viewPureChecker/assembly_constantinople.sol @@ -0,0 +1,8 @@ +contract C { + function f() public view { + assembly { pop(extcodehash(0)) } + } +} +// ==== +// EVMVersion: >=constantinople +// ---- diff --git a/test/libsolidity/syntaxTests/viewPureChecker/assembly_istanbul.sol b/test/libsolidity/syntaxTests/viewPureChecker/assembly_istanbul.sol new file mode 100644 index 000000000..4cb626736 --- /dev/null +++ b/test/libsolidity/syntaxTests/viewPureChecker/assembly_istanbul.sol @@ -0,0 +1,8 @@ +contract C { + function f() public pure { + assembly { pop(chainid()) } + } +} +// ==== +// EVMVersion: >=istanbul +// ---- diff --git a/test/libsolidity/syntaxTests/viewPure/view_pure_abi_encode.sol b/test/libsolidity/syntaxTests/viewPureChecker/view_pure_abi_encode.sol similarity index 100% rename from test/libsolidity/syntaxTests/viewPure/view_pure_abi_encode.sol rename to test/libsolidity/syntaxTests/viewPureChecker/view_pure_abi_encode.sol diff --git a/test/libsolidity/syntaxTests/viewPure/view_pure_abi_encode_arguments.sol b/test/libsolidity/syntaxTests/viewPureChecker/view_pure_abi_encode_arguments.sol similarity index 100% rename from test/libsolidity/syntaxTests/viewPure/view_pure_abi_encode_arguments.sol rename to test/libsolidity/syntaxTests/viewPureChecker/view_pure_abi_encode_arguments.sol