chriseth
ab99893396
Merge pull request #4440 from ethereum/hex_denomination_enforce_error
...
[BREAKING] Enforce error on hex combined with denomination
2018-07-09 17:57:16 +02:00
chriseth
e950fd434a
Merge pull request #4403 from ethereum/syntaxTestsVisibility
...
Specify default visibility in syntax tests (pt. 2)
2018-07-09 17:53:23 +02:00
Leonardo Alt
c1b67a845b
Enforce error on hex number combined with unit denomination
2018-07-09 17:19:41 +02:00
Erik Kundt
19f6b5ad05
Updates interface constructor and function type test.
2018-07-06 19:42:44 +02:00
chriseth
f3e0bf1dd8
Merge pull request #4418 from ethereum/initialConstants
...
Only allow compile-time constants for constant state variables.
2018-07-05 17:07:32 +02:00
Erik Kundt
3f53db402f
Fixes wrong visibility specifier in interface constructor test.
2018-07-04 15:15:30 +02:00
chriseth
4a332ab324
Merge pull request #4409 from ethereum/viewPureChecker
...
Enforce state mutability in view pure checker.
2018-07-04 14:09:46 +02:00
Erik Kundt
0dd3e6052c
Fixes broken syntax tests.
2018-07-04 11:47:35 +02:00
Leonardo Alt
8202d512e0
Enforcing error on msg.gas and block.blockhash()
2018-07-04 11:42:05 +02:00
Daniel Kirchner
f5be38bff1
Extend view pure test suite.
2018-07-04 11:25:45 +02:00
Erik Kundt
2e0d019ef0
Adds default visibility specifier to syntax tests.
2018-07-04 10:45:59 +02:00
Daniel Kirchner
0a738b4ac4
Adjust tests wrt strict view pure checker.
2018-07-04 10:14:58 +02:00
chriseth
8ed3da1d5f
Only allow compile-time constants for constant state variables.
2018-07-03 23:03:26 +02:00
chriseth
2211739fc4
Update tests.
2018-07-03 22:51:55 +02:00
chriseth
533d5d4b1c
Merge pull request #4379 from ethereum/constructorArgsTwice
...
Disallow constructor arguments given multiple times.
2018-07-03 22:49:02 +02:00
Daniel Kirchner
717c70a88f
Update test suite.
2018-07-03 15:31:34 +02:00
chriseth
f7a9c4203e
Disallow packed encoding of literals.
2018-07-03 01:02:00 +02:00
Daniel Kirchner
9aefe2f118
Remove trailing whitespace in missing visibility warning.
2018-07-02 13:14:58 +02:00
Erik Kundt
1b008c62a1
Adds review suggestions.
2018-07-02 11:44:16 +02:00
Erik Kundt
f3ca0685fe
Updates syntax tests to specify default visibility.
2018-06-29 16:26:18 +02:00
chriseth
f69e24c85e
Disallow constructor arguments given multiple times.
2018-06-29 16:11:21 +02:00
chriseth
e289c36158
Merge pull request #4354 from ethereum/constructorSyntaxTests
...
Updates tests to new constructor syntax
2018-06-29 15:45:26 +02:00
Erik Kundt
e6d250772d
Updates invalid syntax test.
2018-06-29 13:22:59 +02:00
chriseth
d469df45d8
Merge pull request #4352 from D-Nice/develop
...
Fixes storage ref var typo error from 'prefix' to 'suffix'
2018-06-29 12:27:29 +02:00
Erik Kundt
1346b4407f
Updates syntax tests to new constructor syntax.
2018-06-29 11:27:01 +02:00
chriseth
eeef82b2d7
Fallback function has to be external: backwards-compatible changes.
2018-06-29 00:23:52 +02:00
D-Nice
3cad417710
Add passing test case
2018-06-28 16:45:53 -04:00
D-Nice
d62476fb1f
Adds storage_reference.sol syntax test
2018-06-27 19:42:46 -04:00
chriseth
4a842ecc82
Merge pull request #4097 from ethereum/noPackedExceptForPacked
...
[BREAKING] call only takes a single argument and does not pad
2018-06-27 18:29:01 +02:00
chriseth
92cb4acd8a
Also mention regular abi.encode in error message.
2018-06-27 15:00:34 +02:00
chriseth
4e8883b63d
Add emit keyword to tests.
2018-06-27 10:49:16 +02:00
Alex Beregszaszi
80b7d36187
Remove non-0.5.0 warning for emit keyword (make it mandatory)
2018-06-26 20:00:54 +02:00
Christian Parpart
e38139c800
test: Adapted to the change of the var-keyword elimination.
2018-06-26 10:40:26 +02:00
Christian Parpart
a083ccd457
test: drop obsoleted syntaxTest(s)
2018-06-26 10:40:25 +02:00
chriseth
4154e1480b
Update tests and add new tests.
2018-06-25 17:17:48 +02:00
chriseth
86a720b96a
Adjust tests.
2018-06-25 17:17:18 +02:00
Alex Beregszaszi
6d9a091a8e
Keep the 'if it not used as an address' helper message for all cases of address related warnings
2018-06-25 16:25:21 +02:00
Jason Cobb
98c9ca2575
Update tests for strict address literals
2018-06-25 16:17:50 +02:00
Alex Beregszaszi
72e87423db
Disallow the years unit denomination properly
2018-06-21 20:21:02 +02:00
chriseth
0d1047181d
Merge pull request #4306 from ethereum/remove_050_workaround_scoping
...
[BREAKING] C99 scoping rules by default (remove 050 workaround)
2018-06-21 13:57:59 +02:00
Alex Beregszaszi
7e4bd3e346
Merge pull request #4219 from ethereum/functionTypeNamedArguments
...
Turn named return parameters in function types into an error.
2018-06-20 23:51:19 +02:00
Leonardo Alt
8862b3092b
C99 scoping rules by default
2018-06-20 12:53:38 +02:00
Alex Beregszaszi
a17059573f
Disallow raw callcode (was deprecated in 0.4.12)
2018-06-19 19:31:07 +02:00
Daniel Kirchner
dbfee87860
Return parameters in function types may not be named.
2018-06-18 00:05:06 +02:00
Christian Parpart
a211b89118
Enforce disallowing empty structs
...
This patch enfoces an error when it encounters an empty struct,
effectively eliminating the deprecation warning.
Also adjust 419_interface_structs to explicitely test for (non-empty) structs,
as this behaviour "may" change in the future.
2018-06-14 00:24:43 +01:00
Alex Beregszaszi
9de45383d8
Disallow sha3/suicide aliases
2018-06-12 18:16:18 +01:00
Alex Beregszaszi
24ca596c66
Merge pull request #4241 from ethereum/show-named-arg
...
Show named argument name in error
2018-06-06 16:32:08 +01:00
Alex Beregszaszi
0f572159ec
Show named argument name in error
2018-06-06 15:59:27 +01:00
Alex Beregszaszi
b2a3e165cb
Extract test cases from ViewPureChecker
2018-06-06 15:41:41 +01:00
chriseth
1ce40f4089
Move "create2_as_variable" back to non-isoltest tests.
2018-06-04 19:14:25 +02:00
Alex Beregszaszi
6e23006937
Split out SolidityNameAndTypeResolution tests into SyntaxTests
2018-05-30 19:50:06 +01:00
chriseth
0a1a8bfb09
Merge pull request #4172 from ethereum/trailing_dot
...
[BREAKING] Disallow trailing dot not followed by number
2018-05-30 18:51:52 +02:00
chriseth
5a73044fa7
Merge pull request #3743 from ethereum/popStorageArray
...
pop() for storage arrays
2018-05-30 18:32:08 +02:00
Erik Kundt
98d52beba3
Adds syntax tests, documentation and changelog entry.
...
Refines comment for array utility function.
2018-05-30 17:43:20 +02:00
Leonardo Alt
ac68710789
Disallow trailing dots that are not followed by a number
2018-05-30 15:14:53 +01:00
mingchuan
b7cafcbdf9
Allow using calldata
keyword to specify data location
2018-05-30 18:05:55 +08:00
chriseth
5ee2ce353e
Merge pull request #4067 from ethereum/050
...
[BREAKING] Version 0.5.0
2018-05-23 18:11:20 +02:00
Alex Beregszaszi
31fa6a24df
Move more parser tests to syntax tests
2018-05-22 13:25:04 +02:00
Daniel Kirchner
1cbc037a45
Update control flow graph.
2018-05-16 18:32:48 +02:00
Daniel Kirchner
5c59d56335
Disallow conversions between bytesX and uintY of different size.
2018-05-16 18:32:47 +02:00
Leonardo Alt
a19b516b2b
Add syntax tests and Changelog entry
2018-05-16 18:32:47 +02:00
Alex Beregszaszi
221a4d1f1f
Split warning for multi arguments for hash functions
2018-05-16 11:12:25 +02:00
chriseth
03f60410c9
Add test for single non-bytes argument.
2018-05-16 09:48:03 +02:00
chriseth
203475ef02
Adjust tests.
2018-05-16 09:48:03 +02:00
chriseth
03c2484407
Merge pull request #4145 from ethereum/more-parser-test-moves
...
Move couple of parser tests to syntax tests.
2018-05-16 09:44:47 +02:00
chriseth
c781baf733
Add tests for multi variable declaration statement.
2018-05-16 03:52:24 +02:00
Alex Beregszaszi
7fb43fe854
Move couple of parser tests to syntax tests.
2018-05-16 03:48:37 +02:00
chriseth
dac0029d16
ABI encoding functions are pure and should be usable in constants.
2018-05-15 14:45:54 +02:00
Daniel Kirchner
56238ab1ec
Add test for default location.
2018-05-14 20:23:40 +02:00
Daniel Kirchner
16e966dea0
Add control flow analyzer and test for uninitialized storage returns.
2018-05-14 20:23:40 +02:00
Daniel Kirchner
bc47265b3f
Replace constant with view in the tests.
2018-05-09 15:07:47 +02:00
Daniel Kirchner
305fc0626b
Update test expectations.
2018-05-09 14:08:25 +02:00
chriseth
54aa10ce36
Merge pull request #4054 from ethereum/token-names
...
Improve parser error messages
2018-05-09 11:06:23 +02:00
chriseth
8ee5d3b274
New tests for wildcard assignments.
2018-05-08 15:32:36 +01:00
chriseth
07e862a145
Extract tests.
2018-05-08 15:13:32 +01:00
chriseth
150d226603
Merge pull request #4063 from ethereum/emit-non-event
...
Show proper error when trying to emit a non-event
2018-05-04 15:02:04 +02:00
Alex Beregszaszi
840ed1e88a
Update parser test expectations
2018-05-04 13:31:56 +01:00
Alex Beregszaszi
ffe7f224a6
Show proper error when trying to emit a non-event
2018-05-04 12:47:01 +02:00
Alex Beregszaszi
ed9f80690b
Simplify expectIdentifierToken by using expectToken
2018-05-03 22:10:51 +01:00
Alex Beregszaszi
07e765a2f1
Move some parser tests to syntax tests
2018-05-02 21:21:11 +01:00
Alex Beregszaszi
c44294d02d
Add syntax tests for bytesM
2018-04-30 13:02:02 +01:00
chriseth
d1e1293fbd
Merge pull request #3981 from ethereum/years-suffix
...
The "year" denomination is deprecated
2018-04-24 12:12:03 +02:00
Alex Beregszaszi
258ae8927e
Merge pull request #3970 from elopio/test/docstring-tag-end
...
docstring: add missing space
2018-04-24 02:16:27 +01:00
Leo Arias
b74566e4ea
docstring: add missing space
2018-04-23 21:47:53 +00:00
chriseth
e685f9f59e
Merge pull request #3976 from ethereum/emptyTupleComponent
...
Empty tuple components should not be possible
2018-04-23 17:35:00 +02:00
Alex Beregszaszi
1ac0090f31
The "year" denomination is deprecated
2018-04-23 16:19:51 +01:00
Alex Beregszaszi
75faed7c55
Add more denomination tests
2018-04-23 16:14:39 +01:00
Erik Kundt
896018c8a3
Treats inline array as an error.
2018-04-23 17:11:41 +02:00
Alex Beregszaszi
6d26ad1e61
Extract subdenomination tests
2018-04-23 16:10:10 +01:00
Erik Kundt
b2ff9bc88d
Turns it into warning (error for 0.5.0) and adds Changelog entry.
2018-04-23 17:09:42 +02:00
Erik Kundt
f2b58de92c
Prevents null type from being used in tuple.
2018-04-22 16:54:33 +02:00
Alex Beregszaszi
0493e3b053
Turn deprecated warnings for sha3/suicide into errors (experimental 0.5.0)
2018-04-20 17:40:48 +01:00
Alex Beregszaszi
edd20ebefb
Extract syntax tests
2018-04-20 17:38:16 +01:00
Alex Beregszaszi
65345162b4
Update tight packing test cases
2018-04-20 12:01:51 +01:00
Alex Beregszaszi
069ea38916
Make literals an error for tight packing (experimental 0.5.0)
2018-04-20 11:58:16 +01:00
chriseth
2546a274ca
Merge pull request #3941 from ethereum/bytes-contract
...
Disallow explicit conversion of bytesXX to contract
2018-04-19 16:10:15 +02:00
Alex Beregszaszi
754d79edfa
Disallow explicit conversion of bytesXX to contract
2018-04-19 15:58:14 +02:00
chriseth
a94945dfe4
Improve error message for failed member lookup.
2018-04-18 22:56:45 +01:00
chriseth
17beac1e07
Extract tests.
2018-04-18 22:52:29 +01:00
chriseth
4895864302
Warn about functions named "constructor".
2018-04-18 21:23:09 +02:00
chriseth
29a97f1641
Fix name clashes between constructor and fallback function.
2018-04-18 14:24:35 +02:00
chriseth
f510348ff1
Extract tests.
2018-04-18 14:24:35 +02:00
chriseth
533d08517f
Merge pull request #3793 from ethereum/rationalNumberLimit
...
Rational number limit
2018-04-16 13:10:50 +02:00
Erik Kundt
33fbf88707
Limits rational numbers to 4096 bits.
2018-04-16 11:45:55 +02:00
chriseth
95c49b367e
Merge pull request #3875 from ethereum/constructorSelfRef
...
Stricter check for "this" in constructor.
2018-04-13 18:39:31 +02:00
Daniel Kirchner
be37e3a912
Stricter check for member access to "this" in constructor.
2018-04-13 15:57:13 +02:00
chriseth
44416d1ac6
Merge pull request #2980 from ethereum/abi-api
...
Add abi.encode and abi.encodePacked
2018-04-12 20:55:03 +02:00
Daniel Kirchner
db40bd46af
Add additional test for `var
` for storage variables.
2018-04-12 16:46:35 +02:00
chriseth
75b8828666
Allow struct encoding with new encoder.
2018-04-12 16:37:16 +02:00
Daniel Kirchner
6862f22943
Fix internal compiler error when parsing `var
` declaration without identifier.
2018-04-12 14:57:14 +02:00
chriseth
c3dc67d0e0
Merge pull request #3848 from ethereum/constantDivisionByZero
...
Error on invalid arithmetic with constant expressions.
2018-04-12 11:49:08 +02:00
Daniel Kirchner
d42476e241
Add test to check ConstantEvaluator for pure non-rational functions.
2018-04-12 11:33:54 +02:00
chriseth
7343c40283
Check partial function parameters if rest is arbitrary.
2018-04-12 00:10:25 +02:00
chriseth
c4a6a63f36
Tests for view and pure.
2018-04-12 00:10:25 +02:00
chriseth
44c0d7ca5e
Tests.
2018-04-12 00:10:25 +02:00
Daniel Kirchner
932915633b
Add tests for literal operations as well.
2018-04-11 23:20:40 +02:00
chriseth
b5a696ad48
Properly cope with constructor headers.
2018-04-11 22:00:21 +02:00
chriseth
52f68d3b63
Update expectations.
2018-04-11 22:00:21 +02:00
chriseth
4e1ea0866d
Extract modifier tests.
2018-04-11 22:00:21 +02:00
chriseth
2ad1acaf72
Warn if modifiers are applied to functions without implementation.
2018-04-11 22:00:21 +02:00
chriseth
42b90ad4c3
New tests for function state variables.
2018-04-11 22:00:04 +02:00
chriseth
08e807aea0
Add expectations.
2018-04-11 22:00:04 +02:00
chriseth
bd27ce0e25
Extract function type tests.
2018-04-11 22:00:04 +02:00
Daniel Kirchner
daa69df447
Error on invalid arithmetic with constant expressions.
2018-04-11 21:17:10 +02:00
Daniel Kirchner
cb548f6f53
Fix ConstantEvaluator to correctly handle single element tuples.
2018-04-11 18:30:34 +02:00
Daniel Kirchner
fdcbf1337a
Syntax Tests: extract array_length_* tests.
2018-04-11 18:01:24 +02:00
chriseth
05781c955b
Fix line numbers for errors.
2018-04-11 16:37:49 +02:00
chriseth
c9bdbcf470
Merge pull request #3309 from ethereum/limit-errors
...
Limit the number of errors output in a single run to 256
2018-04-11 16:13:41 +02:00
Jason Cobb
3b7b962b66
Fix bug in typechecking when comparing rational literals
2018-04-11 12:03:08 +02:00
Daniel Kirchner
f03695731b
Add source locations to syntax test expectations.
2018-04-10 14:08:22 +02:00
Daniel Kirchner
3eedbc6a9c
Error when using no parentheses in modifier-style constructor calls.
2018-04-10 12:09:34 +02:00
Daniel Kirchner
b918a105a4
Move constructor argument override check to TypeChecker and reuse annotations in ContractCompiler.
2018-04-09 15:26:08 +02:00
Daniel Kirchner
b8fdb666e2
Allow duplicated constructor calls, if no arguments; support for multiple inheritance; backwards compatibility.
...
# tmp
2018-04-09 15:26:05 +02:00
Federico Bond
4e037281ac
Error on duplicated super constructor calls
2018-04-09 11:22:35 +02:00
Alex Beregszaszi
d5f40c141b
Limit the number of errors output in a single run to 256
2018-04-06 13:52:19 +02:00
Daniel Kirchner
037eba20fc
Merge pull request #3824 from ethereum/baseArgumentsEmptyParenthesis
...
Error when using empty parentheses for base class constructors that r…
2018-04-05 14:43:28 +02:00
Alex Beregszaszi
36d6c27e68
Merge pull request #3745 from ethereum/fixRecursion
...
Fix invalid recursion errors for structs
2018-04-05 12:04:54 +02:00
Daniel Kirchner
96eff0ff6a
Error when using empty parenthesis for base class constructors that require arguments.
2018-04-05 11:52:22 +02:00
chriseth
016f562348
Merge pull request #3808 from ethereum/parserTests
...
SyntaxTests: extend syntax tests and isoltest to support parser error…
2018-04-04 14:52:01 +02:00
Daniel Kirchner
87ad337ae0
Adds parsing sub-directory in syntaxTests and moves two example tests from SolidityParser.cpp to test contracts.
2018-04-03 19:54:46 +02:00
Daniel Kirchner
d664a599e6
Constructors are defined using the `constructor
` keyword.
2018-04-03 18:21:55 +02:00
chriseth
8fdbd19a05
Extract constant cycle tests.
2018-04-03 16:29:18 +02:00
chriseth
5bdadff0d8
Fix detection of recursive structs.
2018-04-03 16:27:28 +02:00
chriseth
c42caedec2
Extract recursive struct tests.
2018-04-03 16:27:28 +02:00
Alex Beregszaszi
7753249f64
Merge pull request #3699 from ethereum/interfaceExternalVisibility
...
Defaults to external visibility for interfaces.
2018-04-03 15:15:36 +01:00
chriseth
a54fdc495f
Fix: Treat empty base constructor argument list as not provided.
2018-04-03 14:53:48 +02:00
Erik Kundt
f9efa41749
Makes visibility warning more concise.
2018-04-03 11:16:50 +02:00
Erik Kundt
601659c384
Moves all interface function visibility related tests.
2018-04-03 11:16:50 +02:00
bitshift
8fe1cfb12e
Defaults to external visibility for interfaces.
2018-04-03 11:16:44 +02:00
Alex Beregszaszi
076c0754ea
Update tests for empty structs
2018-03-31 00:27:01 +01:00
chriseth
326d656a55
Merge pull request #3790 from ethereum/empty-structs
...
Disallow empty structs
2018-03-30 13:58:35 +02:00
chriseth
5c8a6aac69
Prevent encoding of weird types and support packed encoding of external function types.
2018-03-29 09:57:11 +01:00
Alex Beregszaszi
ebb12756ad
Still allow empty structs for non-0.5.0 mode
2018-03-27 15:49:41 +01:00
Alex Beregszaszi
b540ba527a
Disallow empty structs
2018-03-27 15:49:41 +01:00
chriseth
c9db105ad7
Extract scoping tests.
2018-03-16 00:47:32 +01:00
chriseth
78abe81f08
Merge branch 'develop' into externalFunctionsInLibraries
2018-03-14 18:07:55 +01:00
Alex Beregszaszi
59658afa30
Merge pull request #3722 from ethereum/fixMods
...
Fix modifier lookup in libraries.
2018-03-14 17:20:51 +01:00
Daniel Kirchner
9d079fd126
DocStringParser: Add Changelog entry and test case for empty descriptions.
2018-03-14 10:34:16 +01:00
chriseth
eecc26deec
Make external library functions accessible.
2018-03-13 17:18:46 +01:00
chriseth
58af150c3d
Changelog entry.
2018-03-13 16:55:41 +01:00
Daniel Kirchner
49eaf7c3fd
Infrastructure for extracting syntax tests in separate test files.
2018-03-13 11:20:11 +01:00