From 98d52beba3f989b3a5eeaba2d257de8de5df60a7 Mon Sep 17 00:00:00 2001 From: Erik Kundt Date: Wed, 16 May 2018 17:18:30 +0200 Subject: Adds syntax tests, documentation and changelog entry. Refines comment for array utility function. --- ...ength_cannot_be_constant_function_parameter.sol | 7 ------ .../arrayLength/can_be_constant_in_function.sol | 8 ------- .../arrayLength/can_be_constant_in_struct.sol | 7 ------ .../arrayLength/can_be_recursive_constant.sol | 6 ------ .../syntaxTests/arrayLength/cannot_be_function.sol | 6 ------ .../arrayLength/cannot_be_function_call.sol | 7 ------ .../arrayLength/complex_cyclic_constant.sol | 10 --------- .../arrayLength/const_cannot_be_fractional.sol | 6 ------ .../syntaxTests/arrayLength/constant_var.sol | 5 ----- .../syntaxTests/arrayLength/cyclic_constant.sol | 8 ------- .../syntaxTests/arrayLength/inline_array.sol | 5 ----- .../arrayLength/invalid_expression_1.sol | 5 ----- .../arrayLength/invalid_expression_2.sol | 5 ----- .../arrayLength/invalid_expression_3.sol | 5 ----- .../arrayLength/invalid_expression_4.sol | 5 ----- .../arrayLength/invalid_expression_5.sol | 5 ----- .../arrayLength/non_integer_constant_var.sol | 6 ------ .../arrayLength/not_convertible_to_integer.sol | 5 ----- .../syntaxTests/arrayLength/parentheses.sol | 25 ---------------------- .../syntaxTests/arrayLength/pure_functions.sol | 6 ------ .../syntaxTests/arrayLength/too_large.sol | 5 ----- .../libsolidity/syntaxTests/arrayLength/tuples.sol | 5 ----- 22 files changed, 152 deletions(-) delete mode 100644 test/libsolidity/syntaxTests/arrayLength/array_length_cannot_be_constant_function_parameter.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/can_be_constant_in_function.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/can_be_constant_in_struct.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/can_be_recursive_constant.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/cannot_be_function.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/cannot_be_function_call.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/complex_cyclic_constant.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/const_cannot_be_fractional.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/constant_var.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/cyclic_constant.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/inline_array.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/invalid_expression_1.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/invalid_expression_2.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/invalid_expression_3.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/invalid_expression_4.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/invalid_expression_5.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/non_integer_constant_var.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/not_convertible_to_integer.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/parentheses.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/pure_functions.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/too_large.sol delete mode 100644 test/libsolidity/syntaxTests/arrayLength/tuples.sol (limited to 'test/libsolidity/syntaxTests/arrayLength') diff --git a/test/libsolidity/syntaxTests/arrayLength/array_length_cannot_be_constant_function_parameter.sol b/test/libsolidity/syntaxTests/arrayLength/array_length_cannot_be_constant_function_parameter.sol deleted file mode 100644 index 11d40f26..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/array_length_cannot_be_constant_function_parameter.sol +++ /dev/null @@ -1,7 +0,0 @@ -contract C { - function f(uint constant LEN) { - uint[LEN] a; - } -} -// ---- -// TypeError: (62-65): Invalid array length, expected integer literal or constant expression. diff --git a/test/libsolidity/syntaxTests/arrayLength/can_be_constant_in_function.sol b/test/libsolidity/syntaxTests/arrayLength/can_be_constant_in_function.sol deleted file mode 100644 index 92536dd5..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/can_be_constant_in_function.sol +++ /dev/null @@ -1,8 +0,0 @@ -contract C { - uint constant LEN = 10; - function f() public pure { - uint[LEN] memory a; - a; - } -} -// ---- diff --git a/test/libsolidity/syntaxTests/arrayLength/can_be_constant_in_struct.sol b/test/libsolidity/syntaxTests/arrayLength/can_be_constant_in_struct.sol deleted file mode 100644 index 89e174f2..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/can_be_constant_in_struct.sol +++ /dev/null @@ -1,7 +0,0 @@ -contract C { - uint constant LEN = 10; - struct Test { - uint[LEN] ids; - } -} -// ---- diff --git a/test/libsolidity/syntaxTests/arrayLength/can_be_recursive_constant.sol b/test/libsolidity/syntaxTests/arrayLength/can_be_recursive_constant.sol deleted file mode 100644 index 6810a9d6..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/can_be_recursive_constant.sol +++ /dev/null @@ -1,6 +0,0 @@ -contract C { - uint constant L = 5; - uint constant LEN = L + 4 * L; - uint[LEN] ids; -} -// ---- diff --git a/test/libsolidity/syntaxTests/arrayLength/cannot_be_function.sol b/test/libsolidity/syntaxTests/arrayLength/cannot_be_function.sol deleted file mode 100644 index ac3abc4c..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/cannot_be_function.sol +++ /dev/null @@ -1,6 +0,0 @@ -contract C { - function f() {} - uint[f] ids; -} -// ---- -// TypeError: (42-43): Invalid array length, expected integer literal or constant expression. diff --git a/test/libsolidity/syntaxTests/arrayLength/cannot_be_function_call.sol b/test/libsolidity/syntaxTests/arrayLength/cannot_be_function_call.sol deleted file mode 100644 index a6863955..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/cannot_be_function_call.sol +++ /dev/null @@ -1,7 +0,0 @@ -contract C { - function f(uint x) {} - uint constant LEN = f(); - uint[LEN] ids; -} -// ---- -// TypeError: (77-80): Invalid array length, expected integer literal or constant expression. diff --git a/test/libsolidity/syntaxTests/arrayLength/complex_cyclic_constant.sol b/test/libsolidity/syntaxTests/arrayLength/complex_cyclic_constant.sol deleted file mode 100644 index 254f9f02..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/complex_cyclic_constant.sol +++ /dev/null @@ -1,10 +0,0 @@ -contract C { - uint constant L2 = LEN - 10; - uint constant L1 = L2 / 10; - uint constant LEN = 10 + L1 * 5; - function f() { - uint[LEN] a; - } -} -// ---- -// TypeError: (36-39): Cyclic constant definition (or maximum recursion depth exhausted). diff --git a/test/libsolidity/syntaxTests/arrayLength/const_cannot_be_fractional.sol b/test/libsolidity/syntaxTests/arrayLength/const_cannot_be_fractional.sol deleted file mode 100644 index 397bbbcd..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/const_cannot_be_fractional.sol +++ /dev/null @@ -1,6 +0,0 @@ -contract C { - fixed constant L = 10.5; - uint[L] ids; -} -// ---- -// TypeError: (51-52): Array with fractional length specified. diff --git a/test/libsolidity/syntaxTests/arrayLength/constant_var.sol b/test/libsolidity/syntaxTests/arrayLength/constant_var.sol deleted file mode 100644 index 41750250..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/constant_var.sol +++ /dev/null @@ -1,5 +0,0 @@ -contract C { - uint constant LEN = 10; - uint[LEN] ids; -} -// ---- \ No newline at end of file diff --git a/test/libsolidity/syntaxTests/arrayLength/cyclic_constant.sol b/test/libsolidity/syntaxTests/arrayLength/cyclic_constant.sol deleted file mode 100644 index 91ba9045..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/cyclic_constant.sol +++ /dev/null @@ -1,8 +0,0 @@ -contract C { - uint constant LEN = LEN; - function f() { - uint[LEN] a; - } -} -// ---- -// TypeError: (37-40): Cyclic constant definition (or maximum recursion depth exhausted). diff --git a/test/libsolidity/syntaxTests/arrayLength/inline_array.sol b/test/libsolidity/syntaxTests/arrayLength/inline_array.sol deleted file mode 100644 index a30745d3..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/inline_array.sol +++ /dev/null @@ -1,5 +0,0 @@ -contract C { - uint[[2]] a15; -} -// ---- -// TypeError: (22-25): Invalid array length, expected integer literal or constant expression. diff --git a/test/libsolidity/syntaxTests/arrayLength/invalid_expression_1.sol b/test/libsolidity/syntaxTests/arrayLength/invalid_expression_1.sol deleted file mode 100644 index c92861eb..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/invalid_expression_1.sol +++ /dev/null @@ -1,5 +0,0 @@ -contract C { - uint[-true] ids; -} -// ---- -// TypeError: (22-27): Invalid array length, expected integer literal or constant expression. diff --git a/test/libsolidity/syntaxTests/arrayLength/invalid_expression_2.sol b/test/libsolidity/syntaxTests/arrayLength/invalid_expression_2.sol deleted file mode 100644 index 92e3c3cf..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/invalid_expression_2.sol +++ /dev/null @@ -1,5 +0,0 @@ -contract C { - uint[true/1] ids; -} -// ---- -// TypeError: (22-28): Invalid array length, expected integer literal or constant expression. diff --git a/test/libsolidity/syntaxTests/arrayLength/invalid_expression_3.sol b/test/libsolidity/syntaxTests/arrayLength/invalid_expression_3.sol deleted file mode 100644 index 26add45c..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/invalid_expression_3.sol +++ /dev/null @@ -1,5 +0,0 @@ -contract C { - uint[1/true] ids; -} -// ---- -// TypeError: (22-28): Invalid array length, expected integer literal or constant expression. diff --git a/test/libsolidity/syntaxTests/arrayLength/invalid_expression_4.sol b/test/libsolidity/syntaxTests/arrayLength/invalid_expression_4.sol deleted file mode 100644 index a0d58f4a..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/invalid_expression_4.sol +++ /dev/null @@ -1,5 +0,0 @@ -contract C { - uint[1.111111E1111111111111] ids; -} -// ---- -// TypeError: (22-44): Invalid array length, expected integer literal or constant expression. diff --git a/test/libsolidity/syntaxTests/arrayLength/invalid_expression_5.sol b/test/libsolidity/syntaxTests/arrayLength/invalid_expression_5.sol deleted file mode 100644 index 38a80867..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/invalid_expression_5.sol +++ /dev/null @@ -1,5 +0,0 @@ -contract C { - uint[3/0] ids; -} -// ---- -// TypeError: (22-25): Operator / not compatible with types int_const 3 and int_const 0 diff --git a/test/libsolidity/syntaxTests/arrayLength/non_integer_constant_var.sol b/test/libsolidity/syntaxTests/arrayLength/non_integer_constant_var.sol deleted file mode 100644 index 7a853a34..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/non_integer_constant_var.sol +++ /dev/null @@ -1,6 +0,0 @@ -contract C { - bool constant LEN = true; - uint[LEN] ids; -} -// ---- -// TypeError: (52-55): Invalid array length, expected integer literal or constant expression. diff --git a/test/libsolidity/syntaxTests/arrayLength/not_convertible_to_integer.sol b/test/libsolidity/syntaxTests/arrayLength/not_convertible_to_integer.sol deleted file mode 100644 index b44ccfe9..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/not_convertible_to_integer.sol +++ /dev/null @@ -1,5 +0,0 @@ -contract C { - uint[true] ids; -} -// ---- -// TypeError: (22-26): Invalid array length, expected integer literal or constant expression. diff --git a/test/libsolidity/syntaxTests/arrayLength/parentheses.sol b/test/libsolidity/syntaxTests/arrayLength/parentheses.sol deleted file mode 100644 index 40f55ad6..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/parentheses.sol +++ /dev/null @@ -1,25 +0,0 @@ -contract C { - uint constant L1 = (2); - uint constant L2 = ((2)); - uint constant L3 = ((((2)))); - uint constant L4 = (2 + 1); - uint constant L5 = ((2 + 1)); - uint constant L6 = (((2) + ((1)))); - uint constant L7 = (2 + 1) / 1; - uint constant L8 = (2 + ((1))) / (1); - uint[L1] a1; - uint[L2] a2; - uint[L3] a3; - uint[L4] a4; - uint[L5] a5; - uint[L6] a6; - uint[L7] a7; - uint[L8] a8; - uint[(2)] a9; - uint[(2 + 1)] a10; - uint[(2 + 1) + 1] a11; - uint[((2) + 1) + 1] a12; - uint[(2 + 1) + ((1))] a13; - uint[(((2) + 1)) + (((1)))] a14; - uint[((((2) + 1)) + (((1))))%1] a15; -} diff --git a/test/libsolidity/syntaxTests/arrayLength/pure_functions.sol b/test/libsolidity/syntaxTests/arrayLength/pure_functions.sol deleted file mode 100644 index b620db76..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/pure_functions.sol +++ /dev/null @@ -1,6 +0,0 @@ -contract C { - uint constant LEN = keccak256(ripemd160(33)); - uint[LEN] ids; -} -// ---- -// TypeError: (72-75): Invalid array length, expected integer literal or constant expression. diff --git a/test/libsolidity/syntaxTests/arrayLength/too_large.sol b/test/libsolidity/syntaxTests/arrayLength/too_large.sol deleted file mode 100644 index c90a7494..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/too_large.sol +++ /dev/null @@ -1,5 +0,0 @@ -contract C { - uint[8**90] ids; -} -// ---- -// TypeError: (22-27): Invalid array length, expected integer literal or constant expression. diff --git a/test/libsolidity/syntaxTests/arrayLength/tuples.sol b/test/libsolidity/syntaxTests/arrayLength/tuples.sol deleted file mode 100644 index bc10b3b5..00000000 --- a/test/libsolidity/syntaxTests/arrayLength/tuples.sol +++ /dev/null @@ -1,5 +0,0 @@ -contract C { - uint[(1,2)] a15; -} -// ---- -// TypeError: (22-27): Invalid array length, expected integer literal or constant expression. -- cgit v1.2.3