chriseth
d1c71b7826
Also provide value and format slightly differently.
2016-12-06 23:52:39 +01:00
chriseth
86953ca3e4
Option to show messages in tests.
2016-12-06 22:31:20 +01:00
Yoichi Hirai
94536ccec8
test: check error messages in parser tests
2016-12-06 17:28:49 +01:00
Daniel Ellison
e23ef9db02
Added tests for LLL constructors. Fixed a few tab issues.
2016-12-06 11:16:56 -05:00
Daniel Ellison
20a098e205
Removed enclosed_panic test until assembler bug is fixed.
2016-12-06 11:16:56 -05:00
Daniel Ellison
1152d2d2d4
Simplified exp_operator_on_range test and changed to tedting a range.
2016-12-06 11:16:56 -05:00
Daniel Ellison
a91b712ab8
Added tests for exponent operator.
2016-12-06 11:16:56 -05:00
Daniel Ellison
1b6861e6c9
Added 'panic' tests.
2016-12-06 11:16:56 -05:00
Yoichi Hirai
1f345e527d
test: either fix tests to raise just one error, or mark them as raising multiple errors
2016-12-05 15:41:37 +01:00
Yoichi Hirai
01215694f6
test: disallow more than one errors in name and type tests
2016-12-05 15:41:37 +01:00
Federico Bond
70d246c834
Migrate remaining source code in tests to R literals
2016-12-03 17:52:51 -03:00
chriseth
5098e1eb15
Count instructions without metadata hash.
2016-12-01 16:04:47 +01:00
Alex Beregszaszi
4c15c465ef
Submit library addresses to the compiler in tests (and not link afterwards)
2016-12-01 16:04:00 +01:00
Alex Beregszaszi
c88f34c781
Remove unneeded optimised test from EndToEndTest
2016-12-01 16:04:00 +01:00
Alex Beregszaszi
1ad9640fa3
Optimizer tests to not interfere with the optimiser flag
2016-12-01 16:03:59 +01:00
Alex Beregszaszi
f869792eec
Fix type of optimizeRuns
2016-12-01 16:03:59 +01:00
chriseth
f91ae3f06b
Fix tests
2016-12-01 16:03:59 +01:00
chriseth
6a7ff039df
Use CBOR encoding.
2016-12-01 16:03:59 +01:00
chriseth
1e35526eb6
Fix tests.
2016-12-01 16:03:59 +01:00
chriseth
aa1fd6a879
Add test.
2016-12-01 16:03:59 +01:00
chriseth
5789eaa78d
Metadata stamp.
2016-12-01 16:03:59 +01:00
chriseth
55a719a79c
Merge pull request #1462 from ethereum/fix-incorrect-assertion
...
codegen: assertion did not assert non-nullness
2016-12-01 15:14:31 +01:00
chriseth
1367aef83b
Merge pull request #1461 from ethereum/reference-not-pointer
...
test: replace a pointer argument by a reference
2016-12-01 15:13:32 +01:00
chriseth
9db14ce673
Merge pull request #1458 from federicobond/r-literals
...
Use more R string literals in tests
2016-12-01 15:03:27 +01:00
chriseth
83a0ad73ce
Merge pull request #1313 from ethereum/lll-strict-parser
...
LLL: stricter parser
2016-12-01 12:41:43 +01:00
chriseth
5d1d81d270
Merge pull request #1454 from ethereum/end-of-comment
...
parser: recognize an end of comment of the form `**/`
2016-12-01 12:40:52 +01:00
Yoichi Hirai
422140f603
test: more precise expectation about the error for assigning into storage in inline assembly
2016-12-01 12:27:27 +01:00
Yoichi Hirai
dd0bd57d67
test: change retrieveFunctionBySignature to take a constant reference rather than a pointer
...
The function `retrieveFunctionBySignature` expected the argument to be a non-null pointer.
This commit makes this assumption more explicit.
2016-12-01 11:53:06 +01:00
Federico Bond
29e304d3bc
Fix typos (existant -> existent)
2016-12-01 01:29:30 -03:00
Federico Bond
6ce41b566d
Use more R string literals in tests
2016-12-01 00:50:15 -03:00
Alex Beregszaszi
610027cd26
Test that contracts separated by comments are compiled
2016-11-30 23:54:02 +00:00
Yoichi Hirai
547deec4be
codegen: clean any data from the input
2016-11-30 17:42:03 +01:00
Yoichi Hirai
b16cdbb57e
test: add a test that witnesses #1318
2016-11-30 17:40:34 +01:00
Yoichi Hirai
eaab712944
parser: recognize an end of comment of the form **/
at the end of a multi-line doc comment
...
This fixes #1433
2016-11-30 17:28:07 +01:00
Alex Beregszaszi
4cecedcb49
LLL: update tests with the strict parser
2016-11-30 16:17:58 +00:00
Alex Beregszaszi
ac357d1225
Merge pull request #1442 from ethereum/lll-testing
...
LLL: introduce testing framework
2016-11-30 15:46:20 +00:00
Alex Beregszaszi
9a6a5f219b
Fix sub-0 optimiser test
2016-11-30 11:51:00 +00:00
chriseth
4ff89dda1d
Update SolidityOptimizer.cpp
2016-11-30 11:16:43 +00:00
Alex Beregszaszi
8d0b80f944
Add test for SUB with 0 optimisation
2016-11-30 11:16:43 +00:00
Alex Beregszaszi
25c5dd48de
Rename testSolidityAgainstCpp* to testContractAgainstCpp*
2016-11-29 21:54:28 +00:00
Alex Beregszaszi
0f1d0304ee
LLLExecutionFramework doesn't support contractName/libraryAddresses
2016-11-29 21:54:28 +00:00
Alex Beregszaszi
94cae63390
Add callFallback to ExectionFramework
2016-11-29 21:54:28 +00:00
Alex Beregszaszi
85ebe4e5c4
LLL: check for return value in LLL smoke test
2016-11-29 21:54:27 +00:00
Alex Beregszaszi
e26466b729
LLL: add end-to-end tests
2016-11-29 21:54:27 +00:00
Alex Beregszaszi
d83dd59178
Move ExecutionFramework to the dev::test namespace
2016-11-29 21:54:27 +00:00
Alex Beregszaszi
a226db7338
Split out Solidity-specific part of ExecutionFramework
2016-11-29 21:54:27 +00:00
Alex Beregszaszi
4af30cc518
Add test/liblll to cmake
2016-11-29 21:54:27 +00:00
Alex Beregszaszi
69eb0ab5e3
LLL: add parser tests
2016-11-29 21:42:22 +00:00
chriseth
0933a4ff1a
Merge pull request #1429 from ethereum/unreachablepeephole
...
Some dead code elimination
2016-11-25 16:57:59 +01:00
chriseth
3a8a0708ff
Merge pull request #1381 from ethereum/overflown_enum_compared
...
Enum overflow checking before writing to storage
2016-11-25 16:22:12 +01:00
chriseth
f2872bfa99
Peephole optimizer for unreacheable code.
2016-11-25 16:10:02 +01:00
Yoichi Hirai
df5d5edd1b
test: add a test about explicitly converting a string literal to string
2016-11-25 13:54:13 +01:00
Yoichi Hirai
e136ec8704
ast: string literals that are not valid UTF are not convertible to strings
2016-11-25 13:36:06 +01:00
Yoichi Hirai
aaf58a8c4e
test: add a test case converting an invalid UTF-8 into a string
2016-11-25 13:13:47 +01:00
chriseth
9e7b608e78
Merge pull request #1392 from ethereum/check_warning_contents
...
Check warning text in tests
2016-11-24 21:22:17 +01:00
Yoichi Hirai
a81f556302
test: various fixes
2016-11-24 19:22:26 +01:00
Yoichi Hirai
384c4546f1
interface: move searchForSubstring out of Error class into a separate file
2016-11-24 16:45:17 +01:00
Yoichi Hirai
feb10d015f
test: add a test that stores an invalid enum value
2016-11-24 11:31:45 +01:00
Yoichi Hirai
d4173cd54a
test: add a test about trying to log an event with too big enum values
2016-11-24 11:31:45 +01:00
Yoichi Hirai
d49904c92a
test: add a test that compares overflown enums
2016-11-24 11:31:45 +01:00
Yoichi Hirai
2faaddca05
interface: fix the substring search
2016-11-23 17:38:41 +01:00
Yoichi Hirai
cace51fc47
test: wrapping the error message checking in a macro
2016-11-23 17:38:41 +01:00
Yoichi Hirai
ab3db782ae
test: check the error texts
...
by changing parseAnalyseAndReturnError to return the whole Error, not just the type
2016-11-23 17:38:41 +01:00
chriseth
c9293f2f23
Enable the optimizer for test runs.
2016-11-23 16:48:13 +01:00
chriseth
0c874bbf27
Merge pull request #1425 from ethereum/fixLicensing
...
Fix licensing headers
2016-11-23 12:45:57 +01:00
VoR0220
3f9f725737
Fix licensing headers
...
Signed-off-by: VoR0220 <rj@erisindustries.com>
2016-11-23 12:22:33 +01:00
Yoichi Hirai
75686e3d75
test: add a test case about returning a struct in memory from a library
...
This fixes #1378
2016-11-22 17:09:22 +01:00
chriseth
7fb7d5ae39
Optimizer: Clear state for JUMPDESTs.
2016-11-22 14:58:24 +01:00
Alex Beregszaszi
a35ca910c7
Rename test contract names to capitalised
2016-11-17 17:23:35 +00:00
Alex Beregszaszi
d97eb7cc75
Add payable keyword to the multisig wallet
2016-11-17 17:23:35 +00:00
Alex Beregszaszi
1d6fe5c4e4
Add payable to constructor ABI tests
2016-11-17 17:23:35 +00:00
Alex Beregszaszi
7af360882e
Add missing payable constructors
2016-11-17 17:23:35 +00:00
chriseth
2c14a96820
Some more assertions and style changes.
2016-11-16 15:09:01 +01:00
chriseth
b3eeb5fcf9
Some more tests.
2016-11-16 14:37:19 +01:00
chriseth
e1fec9b287
JSON tests.
2016-11-16 14:37:19 +01:00
chriseth
ec31d08775
Change encoding to address-funid and add "function" as ABI type.
2016-11-16 14:37:19 +01:00
chriseth
a8e7ed37a1
Disable broken tests that are not useful.
2016-11-16 14:37:19 +01:00
chriseth
739dabff8b
Fix tests.
2016-11-16 14:37:19 +01:00
chriseth
7a292c9a05
Fix parser for function type disambiguity.
2016-11-16 14:37:19 +01:00
Yoichi Hirai
f3d0433ec3
test: add a test about external function type taking/returning internal functions
2016-11-16 14:37:18 +01:00
chriseth
e51f852504
Converted sub assembly to smart pointer.
2016-11-16 14:37:18 +01:00
chriseth
e543bd34c0
Stored combined creation and runtime tags.
...
Includes a change to Assembly to allow tags from sub-assemblies to be
used.
Sorry, this get a bit bigger than I thought.
2016-11-16 14:37:18 +01:00
chriseth
ee3efa67a8
Fix tests.
2016-11-16 14:37:18 +01:00
chriseth
08763a206d
Test passing functions as arrays to other contracts.
2016-11-16 14:37:18 +01:00
chriseth
925d674146
Disallow payable internal functions.
2016-11-16 14:37:18 +01:00
chriseth
e1df3bd77f
Fix tests.
2016-11-16 14:37:18 +01:00
chriseth
f21f794f3c
delete for function types
2016-11-16 14:37:18 +01:00
Yoichi Hirai
c9f9b2ab4d
codegen: add a compilation mode and a runtime context to CompilerContext
2016-11-16 14:37:18 +01:00
chriseth
47794c1da4
Implement uninitialized storage functions.
2016-11-16 14:37:18 +01:00
chriseth
b6992d740a
Tests for uninitialized storage functions.
2016-11-16 14:37:18 +01:00
Yoichi Hirai
3158a8ea7b
test: add a test for storing an internal function in the constructor and then using the stored function in runtime
2016-11-16 14:37:18 +01:00
chriseth
87b148494b
Tests.
2016-11-16 14:37:18 +01:00
Yoichi Hirai
6172590b87
Add a test around storing functions in an array
2016-11-16 14:37:17 +01:00
Yoichi Hirai
708b7b35ad
Add a parser test for arrays containing functions
2016-11-16 14:37:17 +01:00
Yoichi Hirai
ab3d1b024d
Add tests around calling functions returning functions returning functions
2016-11-16 14:37:17 +01:00
chriseth
95d7555e3c
External functions in storage.
2016-11-16 14:37:17 +01:00
chriseth
6f19559de0
Fix some type checks and tests for internal / external function parameters.
2016-11-16 14:37:17 +01:00
chriseth
97a3588701
Function type state variables.
2016-11-16 14:37:17 +01:00
chriseth
dd173f83e3
Code generator for function types.
2016-11-16 14:37:17 +01:00
chriseth
cc8583ec7d
Function types.
2016-11-16 14:37:17 +01:00
chriseth
c811691861
Merge pull request #1379 from ethereum/swarmHashCorrection
...
Correct implementation of swarm hash.
2016-11-16 12:25:20 +01:00
Alex Beregszaszi
227f6aab4f
Change natspec/abi JSON expected message to be the same
2016-11-15 17:58:55 +00:00
Alex Beregszaszi
81c50143f2
Move JSON helpers to libdevcore/json
2016-11-15 17:38:18 +00:00
Alex Beregszaszi
9205662de9
Update tests to use JSON
2016-11-15 17:20:30 +00:00
chriseth
518fe2aab7
Correct implementation of swarm hash.
2016-11-15 14:55:51 +01:00
Alex Beregszaszi
0072160d77
Merge pull request #1327 from ethereum/inline-assembly-errortag
...
ErrorTag in inline assembly
2016-11-15 11:17:33 +00:00
Alex Beregszaszi
ae8403ed08
Rename ErrorTag to invalidJumpLabel in inline assembly
2016-11-15 10:30:33 +00:00
Alex Beregszaszi
bee926bf3f
Add tests for the ErrorTag
2016-11-15 10:30:33 +00:00
chriseth
1208279914
Merge pull request #1366 from ethereum/swarmhash
...
Swarm hash.
2016-11-15 11:28:23 +01:00
chriseth
dce80911e1
Add tests
2016-11-15 09:16:33 +01:00
chriseth
2ecf348a9d
Move swarmHash to its own file.
2016-11-14 23:25:12 +01:00
chriseth
8944b092f8
Multi-level swarm hash.
2016-11-14 23:14:10 +01:00
Yoichi Hirai
e6247195dd
test: add a testcase about using an invalid enum value as an external call argument
2016-11-14 20:46:30 +01:00
Yoichi Hirai
454e7618c8
test: add tests about returning invalid enum values from interface functions
2016-11-14 16:44:04 +01:00
Yoichi Hirai
4b6e7e0677
test: add a test conerting an enum into another enum, which should fail
2016-11-11 17:48:03 +01:00
Yoichi Hirai
eee629652e
parsing: ban empty enum definition.
2016-11-11 17:48:03 +01:00
Yoichi Hirai
457daecba1
test: add a test converting -1 as a literal into an enum
...
This shows #1334 fixes #1344
2016-11-11 17:48:03 +01:00
Yoichi Hirai
08a889a908
test: add a test case for #1343
...
The test witnesses that #1334 fixes #1343 .
2016-11-11 17:48:03 +01:00
Yoichi Hirai
8856adce8f
test: add tests that witness issue #1311
2016-11-11 17:47:48 +01:00
Yoichi Hirai
33590d513e
test: add a test for #621
2016-11-11 15:51:54 +01:00
chriseth
a40dcfef12
Merge pull request #768 from roadriverrail/do_while_loops
...
Add support for do/while loops
2016-11-10 17:13:45 +01:00
Rhett Aultman
4524ad0870
Add support for do/while loops
...
This commit adds support for a standard do <statement> while <expr>;
form of statement. While loops were already being supported; supporting
a do/while loop mostly involves reusing code from while loops but putting
the conditional checking last.
2016-11-10 07:07:25 -08:00
chriseth
81118de512
Merge pull request #1339 from ethereum/typo
...
test: fix a typo in calling_payable test
2016-11-09 11:29:41 +01:00
chriseth
63bde109a1
Fail if parsing fails in type checker tests.
2016-11-09 10:48:45 +01:00
Yoichi Hirai
88547a1c66
test: fix a typo in calling_payable test
2016-11-08 17:09:24 +01:00
Yoichi Hirai
2e92966684
libevmasm: fix comparison of SourceLocations
2016-11-08 11:11:08 +01:00
Yoichi Hirai
b78d4d67f5
test: add a test case about SourceLocation
2016-11-07 14:56:42 +01:00
chriseth
681b130dc8
Test case for overflow in storage.
2016-10-31 16:40:19 +01:00
Yoichi Hirai
578b02bb37
Add tests for #1246
2016-10-25 16:48:26 +02:00
chriseth
e00a4b47c0
Merge pull request #1264 from ethereum/988
...
State variable under contract's name
2016-10-25 12:50:24 +02:00
Yoichi Hirai
58477c233d
test: add more tests about state variable access under base contract names
2016-10-24 19:31:51 +02:00
chriseth
6b028701a0
Test.
2016-10-24 16:43:08 +02:00
Yoichi Hirai
922e4b3ce7
test: add tests from #988
2016-10-24 16:34:52 +02:00
Yoichi Hirai
47b11ef2b8
test: add a test case for accessing a state variable under the contract's name
...
The test comes from the description of #988
2016-10-24 16:28:14 +02:00
Yoichi Hirai
df900c5583
test: add a test about using an inherited enum definition as an expression,
...
with an explicit mention of the base contract. The test is about #1131 .
2016-10-24 15:28:23 +02:00
chriseth
2b00804d1d
Fix crash in throw.
2016-10-24 14:32:49 +02:00
chriseth
cb1fcaf6f6
Merge pull request #1240 from ethereum/1151
...
ast: super contract type does not contain native members
2016-10-24 11:45:54 +02:00
Yoichi Hirai
4b7fdaa0bd
test: add a test about accessing an enum member without the name of the enum
2016-10-21 13:01:45 +02:00
Yoichi Hirai
f967623a5b
test: add tests for #1131
...
The tests are about enum inheritance.
2016-10-21 13:01:45 +02:00
Alex Beregszaszi
13b2101ea7
Add tests for inline assembly in modifiers
2016-10-20 23:57:14 +01:00
Yoichi Hirai
6781ec105f
Add a test for #1151
2016-10-20 16:09:52 +02:00
Alex Beregszaszi
6cb2770344
Add two test cases for unbalanced inline assembly
2016-10-20 13:25:28 +01:00
Alex Beregszaszi
0e33b63468
Allow warnings for inline assembly block
2016-10-20 13:25:28 +01:00
Alex Beregszaszi
59603f7b8e
Add tests for constant shifts
2016-10-20 00:03:09 +01:00
Alex Beregszaszi
0a3faf48d4
Add tests for magic variables in inline assembly
2016-10-19 20:44:15 +01:00
Alex Beregszaszi
8317eb0383
Add test case for bound types without self
2016-10-19 10:40:45 +01:00
Yoichi Hirai
0542df25df
Add a test for #1242
...
This is about `super` as an expression.
2016-10-18 13:25:00 +02:00
RJ
d9af51be51
Merge pull request #1079 from VoR0220/fixedTypeTestFramework
...
Solidity helper function for testing fixed points
2016-10-13 15:18:45 -05:00
chriseth
5fb0bcce45
Replace fixed
by standard encode
function.
...
This way, we can use
```
BOOST_CHECK(callContractFunction("t(fixed8x128)", make_pair(rational(2, 3), 128)) == encodeArgs(u256(9)));
```
which is a bit more self-explanatory, I would say.
2016-10-12 17:28:47 +02:00
Alex Beregszaszi
d0791fb365
Fix assignment after tags in inline assembly
2016-10-11 12:28:49 +01:00
chriseth
c4f4d6b971
Fix build error.
2016-10-10 22:14:46 +02:00
chriseth
0b1d449057
Merge pull request #1168 from ethereum/rename-dev-sha3
...
Rename dev::sha3 to dev::keccak256
2016-10-10 21:23:27 +02:00
Alex Beregszaszi
9f61ae924e
Add test for address in inline assembly
2016-10-06 22:05:01 +01:00
Alex Beregszaszi
34df80c502
Add alias keccak256() for sha3()
2016-10-06 16:34:41 +02:00
Alex Beregszaszi
aefb6e5fcf
Rename dev::sha3 to dev::keccak256
2016-10-06 14:53:40 +01:00
Alex Beregszaszi
c7508942fe
Add test for suicide/selfdestruct
2016-10-06 12:44:33 +01:00
chriseth
212e016091
Merge pull request #1104 from ethereum/fixmemcosts
...
Fix memory resize costs during call
2016-09-17 12:30:41 +02:00
chriseth
5a45990458
Access output memory area so that we do not pay for resize during call.
2016-09-17 11:29:54 +02:00
chriseth
dd2f878e59
Test case.
2016-09-17 11:29:54 +02:00
chriseth
727c6fac85
Allow value transfer to library functions.
2016-09-17 11:29:27 +02:00
chriseth
031fd568cc
Fix crash for TypeName[k].
2016-09-15 18:16:34 +02:00
VoR0220
cbd933ceed
Solidity helper function for testing fixed points
...
Signed-off-by: VoR0220 <rj@erisindustries.com>
2016-09-09 21:03:23 -05:00
chriseth
6a55405160
Fix problem with release version string.
2016-09-08 17:56:28 +02:00
chriseth
c1b39b8538
Fix version pragma in tests.
2016-09-08 17:27:14 +02:00
Alex Beregszaszi
65c4e65cb3
Tests for constructor visibility
2016-09-06 17:53:13 +02:00
Alex Beregszaszi
05ae5e4f5a
Tests for constant constructors
2016-09-06 17:31:39 +02:00
chriseth
3588125692
Merge pull request #1014 from ethereum/strict-fallback
...
Reject constant modifier on the fallback function
2016-09-06 15:51:45 +02:00
Alex Beregszaszi
6ec40b3cde
Reject constant modifier on the fallback function
2016-09-06 11:40:00 +01:00
chriseth
9ca7472089
Provide gas stipend manually for send(0).
2016-09-06 12:37:01 +02:00
chriseth
f687635e47
Merge pull request #665 from axic/feature/accept-ether
...
BREAKING: Add payable modifier
2016-09-06 12:25:19 +02:00
chriseth
171c74843b
Merge pull request #995 from chriseth/fixutf8astjson
...
Do not emit non-utf8 strings for ast json.
2016-09-06 12:25:04 +02:00
chriseth
43c28c1ede
Test case for non-utf8 characters in string literal.
2016-09-06 11:07:56 +02:00
chriseth
dff9633084
Test and fixes for payable fallback in ABI.
2016-09-06 10:59:13 +02:00
chriseth
384f189a6a
Tests for payable / private combination.
2016-09-06 10:58:56 +02:00
chriseth
ff11aa1927
Change placeholder style.
2016-09-05 21:32:27 +02:00
chriseth
1eb7ddbb09
Make constant and payable mutually exclusive.
2016-09-05 21:28:28 +02:00
chriseth
9c64edf110
Change function type to include and propagate payable and constant modifier.
2016-09-05 21:28:28 +02:00
Alex Beregszaszi
962531af96
Merged in changes from chriseth/payable
2016-09-05 21:28:28 +02:00
Alex Beregszaszi
680b83b2a4
Mark every other test payable where neccesary in EndToEndTest
2016-09-05 21:28:28 +02:00
Alex Beregszaszi
34a6afbd77
Include EndToEnd test for payable keyword
2016-09-05 21:28:18 +02:00
Alex Beregszaszi
a7794b1a68
Include ABI JSON test for payable keyword
2016-09-05 21:28:18 +02:00
chriseth
02984b8de1
Require ";" after "_"
2016-09-05 14:54:50 +02:00
chriseth
459d2dd7cd
Fix version pragmas in tests.
2016-09-01 00:03:01 +02:00
chriseth
3c412ed2f6
Version pragma.
2016-09-01 00:02:51 +02:00
chriseth
18abafe029
Merge pull request #960 from Denton-L/change-else-style
...
Change else style
2016-08-31 22:34:44 +02:00
Denton Liu
a8c5d2bbde
Fix syntax error
2016-08-31 11:17:11 -04:00
Dimitry
fa5b55a211
soltest on windows
2016-08-31 18:29:10 +04:00
winsvega
3ccd19868a
Merge pull request #947 from winsvega/soltest
...
rename --ipc to --ipcpath
2016-08-31 12:45:36 +03:00
chriseth
546aca2a3e
Test cases.
2016-08-30 15:31:50 +02:00
chriseth
4bfe09897e
Make fallback function throw by default.
2016-08-30 15:31:50 +02:00
Dimitry
f892d1b9a3
rename --ipc to --ipcpath
2016-08-29 16:21:49 +04:00
Alex Beregszaszi
4019c832ca
Add test for fallback function in JSON ABI
2016-08-26 19:03:46 +01:00
Denton Liu
ff756bc94d
Make tests more consistent in style
2016-08-26 13:33:42 -04:00
chriseth
fb7836d87b
Merge pull request #897 from Denton-L/remove-standard
...
BREAKING: Remove standard contracts
2016-08-26 19:32:18 +02:00
chriseth
ce42114c41
Fix tests.
2016-08-26 01:00:39 +02:00
chriseth
21b6aa92ff
Disallow fallback function to return values.
2016-08-26 00:07:50 +02:00
chriseth
d5e4b7492e
Merge pull request #928 from winsvega/solremove
...
remove sha256 and rmd160 hash
2016-08-24 19:41:12 +02:00
Dimitry
23acb383d5
remove sha256 and rmd160 hash
2016-08-24 19:52:49 +04:00
Denton Liu
e00f802f72
Remove standard contracts
2016-08-19 10:34:50 -04:00
Alex Sinyagin
4b9eb299d0
Rename root AST JSON node to SourceUnit
2016-08-18 15:38:20 +00:00
Alex Sinyagin
9139d763d3
Use the full names for JSON AST nodes
2016-08-18 13:12:15 +00:00
Alex Sinyagin
406f3a4b5d
Add ast json converter for PlaceholderStatement
2016-08-18 12:30:00 +00:00
Alex Sinyagin
e9c894c9f8
Add ast json converter for ArrayTypeName
2016-08-18 12:30:00 +00:00
Alex Sinyagin
bdc2436ae3
Add ast json converter for ModifierInvocation and EventDefinition
2016-08-18 12:30:00 +00:00
Alex Sinyagin
a5d15e6895
Add ast json converter for ModifierDefinition
2016-08-18 12:29:59 +00:00
Alex Sinyagin
95832da16e
Add ast json converter for EnumValue
2016-08-18 12:29:59 +00:00
Alex Sinyagin
a9e04217a4
Add ast json converter for EnumDefinition
2016-08-18 12:29:59 +00:00
Alex Sinyagin
af64219e17
Check source loctaion in the InhertanceSpecifier test
2016-08-18 12:29:59 +00:00
Alex Sinyagin
40ca2c9e97
Add ast json converter for UsingForDirective
2016-08-18 12:29:59 +00:00
Alex Sinyagin
9e7fc12463
Add a ast json converter for InheritanceSpecifier
2016-08-18 12:29:59 +00:00
chriseth
c282ab379a
Merge pull request #918 from winsvega/solremove4
...
remove solidity --interface
2016-08-17 17:55:40 +02:00
chriseth
b2507e9f10
Merge pull request #839 from chriseth/checkcode
...
BREAKING: Make function calls throw if target does not have code.
2016-08-17 16:44:15 +02:00
chriseth
d6579a0a5f
Merge pull request #888 from chriseth/throwOnDivZero
...
Throw on division by zero.
2016-08-17 16:43:13 +02:00
Dimitry
e5e2597702
remove solidity --interface
2016-08-17 12:39:10 +03:00
chriseth
774bb8ab3b
Make function calls throw if target does not have code.
...
Low-level calls still just execute and will actually report "success".
This allows `x.call.value(y)()` for x being a non-contract account.
2016-08-17 11:30:40 +02:00
chriseth
9c83109549
BREAKING: return only exits current function/modifier
2016-08-17 11:29:31 +02:00
chriseth
e7683f4722
Merge pull request #836 from chriseth/unusedunderscore
...
BREAKING: Require modifiers to contain "_".
2016-08-17 11:28:02 +02:00
chriseth
34f9a59f18
Fix tests.
2016-08-17 11:27:15 +02:00
chriseth
e7084d9e16
Throw on division by zero.
2016-08-17 11:27:15 +02:00
chriseth
d5505e21eb
Merge pull request #838 from chriseth/ecrecover
...
Make ecrecover return zero for malformed input.
2016-08-17 11:05:20 +02:00
chriseth
15b85e2ea8
Fix tests.
2016-08-16 19:04:11 +02:00
Alex Beregszaszi
ec3298535e
Introduce hex literals ( #832 )
...
* Introduce hex keyword token
* Support hex literals
* Include tests for hex literals
* Document hex literals
2016-08-16 16:31:23 +02:00
chriseth
d731225d02
Actually better to return zero on error.
2016-08-16 14:53:01 +02:00
chriseth
034d436933
Make ecrecover throw for malformed input.
2016-08-16 14:53:01 +02:00
chriseth
6df6728165
Require modifiers to contain "_".
2016-08-16 14:52:47 +02:00
chriseth
2a560b798b
Throw if contract creation fails.
2016-08-16 14:49:44 +02:00
chriseth
61e94940bc
Show compilation errors in tests.
2016-08-12 15:11:31 +02:00
chriseth
b9f5b675a6
Auto-calibrate mining sleep time.
2016-08-12 15:11:31 +02:00
chriseth
53f68a155f
Exponential sleep increase on mining failure.
2016-08-12 15:11:31 +02:00
chriseth
1bc0320811
Cleanup of test suite init.
2016-08-12 15:11:30 +02:00
Denton Liu
58d37f24ae
Remove After test case
2016-08-11 10:15:59 -04:00
Alex Beregszaszi
c54e99a3f5
Include Unicode tests in the scanner
2016-08-04 17:28:48 +01:00
Bob Summerwill
3fd8004d08
Fixed up broken ifdefs in new sockets code.
2016-08-02 23:13:48 -07:00
Bob Summerwill
fe4180a85e
Fix build break in new TestHelper code.
2016-08-02 23:03:40 -07:00
Dmitry K
5925ae0c6a
Windows pipe for soltest
2016-08-02 19:32:03 +03:00
Dmitry K
a10b6f92f9
Merge branch 'develop' of https://github.com/ethereum/solidity into develop
2016-08-02 11:11:09 +03:00
Dmitry K
d1c7444509
windowspipe
2016-08-02 11:11:04 +03:00
chriseth
c0afb4549e
Further fixes to the optimizer.
2016-08-01 23:41:11 +02:00
chriseth
ac0d138800
Test case.
2016-08-01 15:30:19 +02:00
chriseth
8b68d476c2
Fix optimizer tests.
2016-08-01 12:17:04 +02:00
Bob Summerwill
4ee2114127
Make the Solidity repository standalone.
...
This commit is the culmination of several months of work to decouple Solidity from the webthree-umbrella so that it can be developed in parallel with cpp-ethereum (the Ethereum C++ runtime) and so that even for the Solidity unit-tests there is no hard-dependency onto the C++ runtime.
The Tests-over-IPC refactoring was a major step in the same process which was already committed.
This commit contains the following changes:
- A subset of the CMake functionality in webthree-helpers was extracted and tailored for Solidity into ./cmake. Further cleanup is certainly possible.
- A subset of the libdevcore functionality in libweb3core was extracted and tailored for Solidity into ./libdevcore. Further cleanup is certainly possible
- The gas price constants in EVMSchedule were orphaned into libevmasm.
- Some other refactorings and cleanups were made to sever unnecessary EVM dependencies in the Solidity unit-tests.
- TravisCI and Appveyor support was added, covering builds and running of the unit-tests (Linux and macOS only for now)
- A bug-fix was made to get the Tests-over-IPC running on macOS.
- There are still reliability issues in the unit-tests, which need immediate attention. The Travis build has been flipped to run the unit-tests 5 times, to try to flush these out.
- The Emscripten automation which was previously in webthree-umbrella was merged into the TravisCI automation here.
- The development ZIP deployment step has been commented out, but we will want to read that ONLY for release branch.
Further iteration on these changes will definitely be needed, but I feel these have got to sufficient maturity than holding them back further isn't winning us anything. It is go time :-)
2016-08-01 01:45:11 -07:00
chriseth
58cc6cbb37
Bugfix: Allocate empty array.
2016-07-28 17:24:18 +02:00
chriseth
c55584d3e2
Source location as part of AST.
2016-07-20 19:45:43 +02:00
chriseth
a15b533323
Do not link to libethereum for tests.
2016-07-01 10:20:13 +02:00
chriseth
9216a4d991
Fix jsoncpp includes for macos.
2016-07-01 10:16:06 +02:00
chriseth
ccba763845
Fix test contracts.
2016-06-29 00:14:50 +02:00
chriseth
272a9d94d2
Re-enable registrar tests.
2016-06-29 00:14:50 +02:00
chriseth
67d1e4783a
Rename IPCSocket and removed unused code in TestHelper.
2016-06-29 00:14:50 +02:00
chriseth
05e5bdf780
Fixes for gas tests.
2016-06-28 23:18:55 +02:00
chriseth
c0bbd1cfe5
Some more test fixes.
2016-06-28 23:18:55 +02:00
chriseth
e5db096da9
Fix some more tests.
2016-06-28 23:18:55 +02:00
chriseth
007132a78e
Fix empty storage check.
2016-06-28 23:18:55 +02:00
chriseth
93c8fc094e
Parse arguments in free function.
2016-06-28 23:18:55 +02:00
Dimitry
27df4b7e71
parse command line arguments
...
ipcPath
2016-06-28 23:18:55 +02:00
Dimitry
763faf7b0e
replace BalanceAt
...
add addressHasCode
remove m_state and sealengine
2016-06-28 23:18:55 +02:00
chriseth
ce2258b71e
Balance and storage.
2016-06-28 23:18:54 +02:00
chriseth
966709b7d7
logs
2016-06-28 23:18:54 +02:00
Dimitry
603bad34f9
style
2016-06-28 23:18:54 +02:00
Dimitry
874a16bed4
fix rpc mining
2016-06-28 23:18:54 +02:00
chriseth
d6e39054e0
Refactor testing via IPC.
2016-06-28 23:18:54 +02:00
chriseth
ad36fc3c58
Style
2016-06-28 23:18:54 +02:00
Dimitry
55cfba6514
test framework
...
IPC socket and RPC communication with node
2016-06-28 23:18:54 +02:00
chriseth
5aca97af0d
Initial poc to test via ipc.
2016-06-28 23:18:54 +02:00
chriseth
25a64c7f8f
Only warn about unused return in low-level functions.
2016-06-26 13:53:32 +02:00
chriseth
cc6314cd01
Warn about unused return values.
2016-06-26 13:53:32 +02:00
chriseth
3150ab2bcf
Allow remappings to change depending on the context.
2016-06-08 18:16:46 +02:00
chriseth
a1aee031d1
Tests for implementation by constructor.
2016-06-06 19:38:22 +02:00
chriseth
0a0fc04641
Merge pull request #624 from chriseth/inaccessibleDynType
...
Inaccessible dynamic types
2016-06-05 19:37:16 +02:00
chriseth
1c3a64026b
Add a test for a struct accessor.
2016-06-04 21:51:48 +02:00
chriseth
e54bd615bb
Include nested headers.
2016-06-03 11:40:11 +02:00
chriseth
754a992500
Inaccessible dynamic types
2016-06-02 12:52:25 +02:00
chriseth
708129abd5
Fixes for invalid cleanups for small types.
2016-05-20 16:52:40 +02:00
chriseth
a09583a2a4
Tests for invalid cleanup and missing bool conversion code.
2016-05-20 16:52:38 +02:00
VoR0220
6289410152
explicit conversion and loosening of binary operations on integer and fixed point types...still other problems
...
fixed some spaces and deleted lines from failing test
2016-05-18 15:52:09 -05:00
VoR0220
3ba308fb2e
current debugging info
2016-05-18 15:52:09 -05:00
chriseth
775b757d0e
Merge pull request #545 from chriseth/accessFunLabels
...
Allow access to functions in inline assembly.
2016-05-17 23:59:13 +02:00
chriseth
4b445b898e
Merge pull request #546 from chriseth/fixiszero
...
Correctly use not/bnot/iszero.
2016-05-14 00:58:55 +02:00
chriseth
67ca3bb4b9
Allow access to functions in inline assembly.
2016-05-12 12:30:48 +02:00
chriseth
d4206b7cd0
Remove unused tests and add asserts for not implemented parts in code generation.
...
quick fix on christian's rational
change so that ubuntu will stop yelling
be more specific with rational declaration for Windows sake
rational in namespace correction for windows
2016-05-10 16:03:33 -05:00
chriseth
af354d7555
Correctly handle unexpected exceptions during tests.
2016-05-10 19:33:30 +02:00
VoR0220
a6fc3c8f30
reorganized tests and fixed mobile types and implicit conversions of rationals and fixed point types
...
one final tweak
check for null types
2016-05-09 11:41:03 -05:00
VoR0220
bfc238c8d1
updated algorithm for bit finding...now to figure out literal value
...
tiny fixups
changed location of the check
got rid of extra space and fixed a couple of things
added binary results bits
change back literal value
2016-05-09 11:41:03 -05:00
VoR0220
82039b732e
added bytes conversion tests, resolved that, converted to binary scaling, refactored the find algo to prevent large numbers and take into account integer bytes
...
think we're good on solidity type name resolution now
removed couts
updates to documentation and more removed couts along with literal value implementation
forgot semicolons
2016-05-09 11:41:03 -05:00
VoR0220
f0ea817580
fixing modulus and Solidity Name and Type Resolution
...
minor fixes
current attempts at binary fixup
2016-05-09 11:41:03 -05:00
VoR0220
4d283b2b30
currently what we have
2016-05-09 11:41:02 -05:00
RJ Catalano
93295ae8f8
got exponents up and working with their inverse, changed a few of the tests....something is working that likely shouldn't be
...
slight changes to how to flip the rational negative around...still trying to figure it out
tests added
updated tests
odd differences in trying soltest from solc binary, let me know if you can replicate
test not working for odd reason
fixed test problem with fixed literals...still need a way to log this error
broken up the tests, added some, changed some things in types and began compiler work
moar tests and prepping for rebuilding much of the types.cpp file
further fixing
infinite loop still happening but it's somewhere in the fixedPoint methodd
fractional bits needed algo improved! Eliminated 2 errors
Corrected problems with the previous commit. No infinite loops. Actually appear to have corrected an error
2016-05-09 11:41:02 -05:00
RJ Catalano
91fda50922
fixed problem with var...probably a conversion problem for fixed in size capabilities
...
adding fixed type tests
Removing bitshift and regrouping fixed type tests together
2016-05-09 11:41:02 -05:00
RJ Catalano
dff1a26f55
fix for token bug, also quick fix for the wei and seconds
2016-05-09 11:41:02 -05:00
RJ Catalano
6fa5e0fac9
Rational implemented...trying to figure out exponential
2016-05-09 11:41:02 -05:00
RJ Catalano
9a075458ad
initial work for fixed types...potentially needing a constant literal type for this
...
notation
Rational implemented...trying to figure out exponential
fix for token bug, also quick fix for the wei and seconds
fixed problem with var...probably a conversion problem for fixed in size capabilities
adding fixed type tests
Removing bitshift and regrouping fixed type tests together
size capabilities functioning properly for fixed types
got exponents up and working with their inverse, changed a few of the tests....something is working that likely shouldn't be
slight changes to how to flip the rational negative around...still trying to figure it out
tests added
updated tests
odd differences in trying soltest from solc binary, let me know if you can replicate
test not working for odd reason
fixed test problem with fixed literals...still need a way to log this error
broken up the tests, added some, changed some things in types and began compiler work
moar tests and prepping for rebuilding much of the types.cpp file
further fixing
initial work for fixed types...potentially needing a constant literal type for this
2016-05-09 11:41:02 -05:00
chriseth
a927efb151
Correctly use not/bnot/iszero.
...
A long time ago, some opcodes were renamed. Now we should only have
not (bitwise negation) and iszero (logical negation).
2016-05-09 10:52:23 +02:00
chriseth
e79797f348
Modify failing test: Accessor functions are not available anymore in libraries.
2016-05-04 09:14:44 +02:00
chriseth
e6b6e27bd7
Some more tests.
2016-05-03 22:48:53 +02:00
chriseth
7ea3d950d7
Allow calling internal functions of libraries.
...
Internal functions of libraries can be called as if the library were a
base contract of the calling contract. As the calling convention for
internal functions is to not create a new call context, the code of
these functions will be pulled into the context of the caller,
duplicating their code. This might pull in code of further internal or
even private functions.
The use case for such functions is to allow libraries which can operate
on memory types such that these types can also be modified in place.
2016-05-03 22:41:18 +02:00
rainbeam
1940c9a362
wrap soltest add_executable
...
Allows static linking.
2016-05-01 01:29:38 +01:00
Bob Summerwill
7ba6c98e5f
Merge pull request #507 from chriseth/sealEngine
...
Explicitly init seal engine.
2016-04-15 15:06:32 -04:00
chriseth
d77a13878a
Explicitly init seal engine.
2016-04-15 20:16:07 +02:00
chriseth
c126ec84a3
Test for bug in static array constructor argument decoder.
2016-04-15 18:42:44 +02:00
chriseth
82175fbd2b
Test for bug when deleting dynamic array of structs.
2016-04-15 16:49:26 +02:00
Bob Summerwill
3ad5e821f2
Merge pull request #491 from winsvega/sealengines
...
sealengines throught init function
2016-04-12 10:33:59 -07:00
Bob Summerwill
539b392a6d
Merge pull request #496 from chriseth/removelog
...
Remove log.h from solidity.
2016-04-11 21:50:05 -07:00
chriseth
6f54b13d7a
Remove log.h from solidity.
2016-04-12 01:03:46 +02:00
Dimitry
24120a726c
sealengines throught init function
2016-04-11 14:24:11 +04:00
chriseth
f227050c20
Make solidity independent from ethcore.
2016-04-06 20:56:00 +02:00
chriseth
193b1c940c
Merge pull request #475 from chriseth/byteasm
...
Allow "byte" in inline assembly.
2016-04-06 16:40:20 +02:00
chriseth
26a91109a7
Allow "byte" in inline assembly.
2016-04-06 12:31:31 +02:00
Dimitry
d2cee6f9c6
reduce unnecessary solidity:: namespace
2016-04-04 15:41:35 +04:00
Dimitry
9816510065
enable solidity test
2016-04-04 15:18:24 +04:00
Bob Summerwill
c492d9be00
Merge pull request #470 from chriseth/redundancy
...
Remove code duplication in source references formatter.
2016-03-31 20:31:15 -03:00
chriseth
285fdf3b0a
Merge pull request #457 from VoR0220/tokenNameAndStringFix
...
Fix for Token::name and token::toString
2016-04-01 01:08:59 +02:00
chriseth
ea7325d2d2
Remove code duplication in source references formatter.
2016-04-01 00:54:12 +02:00
chriseth
98b686c672
Test to check we correctly clean higher order bits for index access.
2016-03-31 01:25:45 +02:00
VoR0220
427b9557d6
added solidity invalid fixed type test
2016-03-30 11:54:00 -05:00
chriseth
f049430723
Code generation (missing external access and source locations).
2016-03-30 02:37:00 +02:00
chriseth
949b00ed59
Parsing for inline assembly.
2016-03-30 02:37:00 +02:00
Bob Summerwill
79ef51a778
Fix Windows warning for boost in solidity tests.
...
We need this fixed before we can enable warnings-as-errors.
2016-03-21 16:05:30 -07:00
Bob Summerwill
a1ce66b304
Fixed Windows warnings
2016-03-18 01:22:15 -07:00
chriseth
1bf87c6c2b
Set version to 0.3.0
2016-03-11 17:52:24 +01:00
RJ Catalano
d0054a8d29
added keyword type and some tests, changes in lexical cast
2016-03-11 17:50:09 +01:00
chriseth
e5514becb8
BREAKING: Implement delegatecall and make default for library calls.
2016-03-11 17:49:32 +01:00
chriseth
3b9969baaa
Test for optimizer bug caused by not incrementing the sequence counter.
2016-03-11 16:14:48 +01:00
RJ Catalano
9b67969fd6
further optimization, splitting function into pieces
...
generating strings on the fly, changed name, and added two tests
2016-02-18 11:23:00 -06:00
RJ Catalano
84f2eb461b
added two functions in Token to handle long identifiers, redid fromIdentifierOrKeyword, and made complementary changes in scanner and parser
2016-02-18 11:22:58 -06:00
RJ Catalano
f4da126018
tests added and changes made
...
fixed some silly problems in Token.cpp
windows error fix
2016-02-18 11:22:56 -06:00
RJ Catalano
7b918a7bc7
changes to redefine the token list, the scanner, and the parser and how they pass around variable types of different sizes
...
not ready for change to FixedPoint just yet
made this more const correct and added a switch statement for easier reading
2016-02-18 11:22:52 -06:00
chriseth
23074150f4
Test for segfault when using wrong number of constructor arguments.
2016-02-11 17:12:28 +01:00
chriseth
29faf1b298
Index access for bytesXX.
2016-02-09 17:07:04 +01:00
Lu Guanqun
51caa04238
add more test cases for cond-expr
2016-01-22 17:14:01 +00:00
Lu Guanqun
5840a3513f
cond-expr: add more unit tests
2016-01-22 17:14:01 +00:00
Lu Guanqun
d36537e737
cond-expr: use the mobile type instead of the original type
2016-01-22 17:14:01 +00:00
Lu Guanqun
c8b0533933
[cond-expr] change the end to end test
2016-01-22 17:14:01 +00:00
Lu Guanqun
ac3019298a
[cond-expr] add a test for different types
2016-01-22 17:14:01 +00:00
Lu Guanqun
1cd3288311
[cond-expr] add a test to assign memory to storage
2016-01-22 17:14:01 +00:00
Lu Guanqun
bf7daf0814
[cond-expr] don't allow conditional as left value for the first stage
2016-01-22 17:14:00 +00:00
Lu Guanqun
b003290638
[cond-expr] fixup according to code review
2016-01-22 17:14:00 +00:00
Lu Guanqun
db6ce6d8a1
comment out one un-supported test case
2016-01-22 17:14:00 +00:00
Lu Guanqun
08493589c1
fixup end to end test
2016-01-22 17:14:00 +00:00
Lu Guanqun
985744545a
[cond-expr] add another parser expression
2016-01-22 17:14:00 +00:00
Lu Guanqun
4471a2ce3b
[cond-expr] add test cases for type resolution
2016-01-22 17:14:00 +00:00
Lu Guanqun
0a45fe04f3
[cond-expr] add end to end test
2016-01-22 17:14:00 +00:00
Lu Guanqun
f1d21552fc
[cond-expr] add parser test cases
2016-01-22 17:14:00 +00:00
chriseth
67c855c583
Merge pull request #356 from guanqun/break-not-in-loop
...
check whether break/continue is in the loop
2016-01-20 19:23:23 +01:00
Lu Guanqun
df728581ce
add another test case for continue not in loop
2016-01-19 03:24:58 +00:00
chriseth
02340e8464
Merge pull request #358 from chriseth/fix_storage
...
Test for incorrect storage access.
2016-01-18 14:16:44 +01:00
chriseth
0099513cd4
Merge pull request #347 from chriseth/libraryNameClashes
...
Detect library name clashes
2016-01-18 09:24:11 +01:00
Liana Husikyan
7e511f93af
Update SolidityNameAndTypeResolution.cpp
2016-01-15 18:03:51 +01:00
Liana Husikyan
738b254001
Update SolidityNameAndTypeResolution.cpp
2016-01-15 17:41:56 +01:00
LianaHus
b2daa5a9d8
fixed assert on EI creation for structs containing only mapping or arrays
2016-01-15 17:36:06 +01:00
chriseth
a88835bbce
Test for incorrect storage access.
2016-01-15 17:02:37 +01:00
Lu Guanqun
e130bc7e7c
check whether break/continue is in the loop
2016-01-15 15:12:23 +08:00
chriseth
1cf6acca90
Tests for library name clashes.
2016-01-14 11:36:11 +01:00
chriseth
d2f18c73f7
Merge pull request #346 from chriseth/importAliases
...
Allow aliases during import.
2016-01-13 17:29:34 +01:00
RJ Catalano
c45593a444
clarification on dynamic arrays, switcheroo on typepointer, and a documentation test added
2016-01-11 23:41:20 -06:00
RJ Catalano
9c29cf79cf
added documentation and one last test for struct creation inline
2016-01-11 15:36:30 -06:00
RJ Catalano
ac664e7f86
final changes to typechecker, the expression compiler, and a couple more tests for good measure
2016-01-11 14:25:59 -06:00
chriseth
f20a604c5a
Allow aliases during import.
2016-01-11 13:56:02 +01:00
RJ Catalano
c7df6d0310
one last test for long strings
2016-01-11 00:48:02 -06:00
RJ
c348791fa1
Update SolidityNameAndTypeResolution.cpp
2016-01-10 21:55:30 -06:00
RJ
5a3b40f802
Update SolidityEndToEndTest.cpp
2016-01-10 21:36:47 -06:00
RJ
d751b9085c
Update SolidityEndToEndTest.cpp
2016-01-10 01:12:52 -06:00
RJ
10a1c352b9
Update with type resolution tests for arrays
2016-01-10 01:07:02 -06:00
chriseth
b158e48c1a
Merge pull request #338 from guanqun/add_paren
...
support syntax "(x) = 3"
2016-01-05 13:15:29 +01:00
chriseth
e27bfa023d
Merge pull request #317 from chriseth/pathsEverywhere
...
Use paths instead of simple identifiers wherever possible.
2016-01-04 11:47:11 +01:00
Lu Guanqun
208429644d
add a test case for decayed tuple expression as left value
2016-01-04 16:11:43 +08:00
chriseth
0e2fa39fad
Use paths instead of simple identifiers wherever possible.
2015-12-21 18:44:21 +01:00
chriseth
2466fb68a0
Merge pull request #308 from chriseth/fixoverloadbug
...
Fix bug preventing overloads of different array types.
2015-12-21 15:37:51 +01:00
chriseth
54e3637d23
Add structs and enums to contract types.
2015-12-18 16:50:14 +01:00
chriseth
79c5d032fe
Fix bug preventing overloads of different array types.
2015-12-18 13:56:37 +01:00
chriseth
603dc58040
Simple aliasing during import.
2015-12-18 12:46:56 +01:00
chriseth
d3c459b5a9
Parse complex import directives.
2015-12-18 12:46:54 +01:00
RJ Catalano
905d55e34f
updated tests and much simpler algorithm for parsing errors
2015-12-16 16:47:37 -06:00
RJ Catalano
fe04d7f7f7
added one more test and realized that there was one last change before the parser is perfect
2015-12-16 14:50:40 -06:00
RJ Catalano
f7a1860abd
forgot about this one...again making this purely about parsing...typechecking will come another day
2015-12-16 13:35:28 -06:00
RJ Catalano
df41812442
making this purely about parsing...type checking will go in a different PR
2015-12-16 13:23:05 -06:00
RJ Catalano
0ba24a5289
changed a couple of small nuances, made an attempt at fixing the parsing in the inline arrays case (fails), and added test for inline arrays per Chriseth request
2015-12-16 12:55:52 -06:00
RJ Catalano
9ab066de8c
new tests
2015-12-15 14:47:09 -06:00
RJ Catalano
42c4339404
updated attempt, a couple of more things to sort through and change
2015-12-15 10:57:57 -06:00
chriseth
f8228e8ab1
Relative paths in import directives.
2015-12-09 19:21:02 +01:00
chriseth
7cb7818cea
Source units are independent scopes.
2015-12-09 19:09:24 +01:00
Bob Summerwill
942666bce9
Fix a "Solidity::solidity" dependency edge in the CMake file for soltest, which got missed in the previous PR.
...
This change resolves an inconsistency which was discovered in the automated dependency graph generation.
softest was being declared as dependent on the Solidity module, not on just libsolidity, as it should be.
2015-12-05 19:15:53 -08:00
chriseth
8342424815
Increment version to 0.2.0 (includes breaking changes).
2015-12-01 16:06:14 +01:00
chriseth
7f415da886
Code generation for calling bound methods.
2015-12-01 12:35:34 +01:00
chriseth
e9c7837c15
Merge pull request #251 from chriseth/bind2
...
Bind library functions to types.
2015-11-30 16:06:44 +01:00
chriseth
a8736b7b27
Merge pull request #256 from chriseth/selfdestruct
...
Introduce selfdestruct alias for suicide.
2015-11-30 16:06:18 +01:00
chriseth
6796afc2f8
Bugfix for constructor unpacking with fixed-size arrays.
2015-11-29 01:03:39 +01:00
chriseth
f9e52c9db1
Also check the object type for bound functions.
2015-11-29 00:16:07 +01:00
chriseth
93b3237c6a
Add bound functions to types.
2015-11-29 00:16:07 +01:00
chriseth
b97bb086de
Introduce selfdestruct alias for suicide.
2015-11-29 00:10:07 +01:00
chriseth
d71cd3aa2b
Added the using x for y
directive.
2015-11-26 17:49:39 +01:00
chriseth
2e4f4e3363
Fix smart pointer lifetime issue in tests.
2015-11-26 15:37:55 +01:00
chriseth
b47d593252
Do not store elements of a contract by AST node type.
2015-11-26 15:37:55 +01:00
chriseth
879844dd0a
Code generation for creating arrays.
2015-11-26 13:10:12 +01:00
chriseth
bf55aa6ae2
Type checking for creating new arrays.
2015-11-26 13:10:12 +01:00
chriseth
30b325fdc1
Allow "new expressions" also for general type names.
...
Breaking change: If you want to send value with a contract creation, you
have to use parentheses now:
`(new ContractName).value(2 ether)(arg1, arg2)`
2015-11-26 13:10:12 +01:00
chriseth
588e4232eb
Test for allocation bug.
2015-11-24 14:54:18 +01:00
Gav Wood
2554d6104a
Merge pull request #236 from ethereum/hot_gav
...
Fix up for new API from EIP-1.1.
2015-11-23 12:42:28 +01:00
Gav Wood
bff172cf65
Fix up for new API from EIP-1.1.
2015-11-21 14:34:21 +01:00
Gav Wood
58110b27c1
Merge remote-tracking branch 'origin/hot_gav' into develop
2015-11-20 00:06:58 +01:00
Gav Wood
9997aac163
Fix solidity tests.
2015-11-20 00:06:02 +01:00
chriseth
8dfc964e7d
Merge pull request #227 from chriseth/addmod
...
Addmod and mulmod.
2015-11-19 13:16:13 +01:00
Gav Wood
3be0ae6e2c
Merge pull request #204 from ethereum/hot_gav
...
The Big Refactor
2015-11-19 12:20:46 +01:00
chriseth
0cf8d022ae
Addmod and mulmod.
2015-11-18 17:12:39 +01:00
chriseth
f4de369bad
Merge pull request #218 from chriseth/fix_overwriteMemory
...
Fix memory overwrite problem for arrays.
2015-11-17 14:46:19 +01:00
chriseth
28c3f1839b
Merge pull request #216 from chriseth/dynamic_indexed_event_args
...
Fix dynamic indexed event arguments - applies sha3.
2015-11-17 14:46:00 +01:00
chriseth
6411bf0026
Merge pull request #214 from chriseth/fix_optimizerTest
...
Test fix: Do not increment iterator past end.
2015-11-17 10:57:18 +01:00
Gav Wood
ad249e5787
Fix tests for new API.
2015-11-16 21:00:05 +01:00
chriseth
0c900f9b8a
Fix memory overwrite problem for arrays.
2015-11-16 18:32:21 +01:00
chriseth
a35f91816b
Fix dynamic indexed event arguments - applies sha3.
2015-11-16 17:09:09 +01:00
chriseth
8bd34ee2e9
Test fix: Do not increment iterator past end.
2015-11-16 16:39:47 +01:00
chriseth
9ef67bc756
Fix segfault during test.
2015-11-16 16:32:09 +01:00
chriseth
1bdc7eed31
Work around bug in MSVC/Boost for u256->unsigned conversion.
2015-11-16 11:47:19 +01:00
LianaHus
da47f9df7b
style fixes
2015-11-06 20:56:14 +01:00
LianaHus
63060fc1f0
fixed test framework
2015-11-06 18:45:06 +01:00
Gav Wood
2f85153dcc
Fixups for new API.
2015-11-06 14:23:18 +01:00
Gav Wood
a89fa99994
New vocab.
2015-11-06 13:26:20 +01:00
chriseth
a5c227778d
Bugfix: Returning literal strings in tuples.
2015-10-31 23:13:45 +01:00
chriseth
b4f561680a
Store docstrings in AST annotations.
2015-10-26 15:24:36 +01:00
Lefteris Karapetsas
a5a41e1f22
Allow building with new boost version 1.59
2015-10-24 23:11:01 +02:00
chriseth
e3dffb611f
File reorganisation.
2015-10-21 00:46:01 +02:00
chriseth
87079bd3fd
Correctly parse ambiguities like A.B[10] x
and x.y[10] = 3
.
2015-10-16 16:12:25 +02:00
chriseth
ead0478f26
Fix errors when struct array type is used on its own.
2015-10-16 14:36:30 +02:00
chriseth
1d4219d43d
Some fixes taking other pull requests into account.
2015-10-15 18:14:14 +02:00
chriseth
029b819489
Wildcards.
2015-10-15 17:38:42 +02:00
chriseth
039b2a764f
Destructuring assignments.
2015-10-15 17:38:42 +02:00
chriseth
7ebd536e79
Tuple expressions.
2015-10-15 17:38:42 +02:00
chriseth
7ba42f4707
Merge pull request #130 from LefterisJP/dynamic_array_push
...
Dynamic array push
2015-10-15 17:37:15 +02:00
LianaHus
292fb473bf
renaming in test framework
2015-10-15 16:46:02 +02:00
LianaHus
162d021c3f
some more style fixes
2015-10-15 16:27:26 +02:00
Lefteris Karapetsas
a823de2d58
push() for byte arrays also properly implemented
2015-10-15 14:37:11 +02:00
LianaHus
771f20b595
mainly style fixes/renaming
2015-10-15 14:36:23 +02:00
Lefteris Karapetsas
9224c1f712
Working implementation of arraypush
...
ByteArrayPush() gets a test but is ignored for now, since there are
still some issues with its implementation
2015-10-15 13:54:59 +02:00
LianaHus
0d0fd31fbf
fix
2015-10-15 12:16:10 +02:00
LianaHus
675aed1edf
fixed new tests
2015-10-15 11:50:25 +02:00
Lefteris Karapetsas
a521843f6b
Implement Dynamic array push and fix test
...
Still a work in progress. There is a disturbance in the stack at the
moment and that's why there are some cout statements left for debugging.
2015-10-15 10:52:30 +02:00
Lefteris Karapetsas
763b544822
Add a dynamic array push() test
2015-10-15 10:52:30 +02:00
LianaHus
c3491e4469
errors instead of exceptions
...
Conflicts:
libsolidity/CompilerStack.cpp
libsolidity/NameAndTypeResolver.cpp
libsolidity/NameAndTypeResolver.h
libsolidity/TypeChecker.cpp
test/libsolidity/SolidityNameAndTypeResolution.cpp
2015-10-14 20:37:41 +02:00
LianaHus
742e5b259a
added Error class for all kind of errors
...
Conflicts:
libsolidity/Exceptions.h
2015-10-14 20:27:41 +02:00
chriseth
72f7792f8e
Some further test fixes.
2015-10-13 14:31:24 +02:00
chriseth
13d7bc4ee8
Some more tests and typos fixed.
2015-10-13 12:22:57 +02:00
chriseth
deebc7e860
Multi-variable declarations.
2015-10-13 12:16:23 +02:00
chriseth
a5d12b8761
Introduced tuple type and added multi variable declarations to type
...
checker.
2015-10-09 19:35:41 +02:00
chriseth
c54a033bf0
Tests for multi variable declaration.
2015-10-09 16:26:27 +02:00
chriseth
35de03626f
Check invalid integer constants for functions accepting arbitrary arguments.
2015-10-07 18:13:20 +02:00
chriseth
24d04087d2
Resolve binary dependencies properly.
2015-10-07 17:35:07 +02:00
chriseth
68bf6e60c5
Merge pull request #122 from chriseth/anonymousEventsWithFourIndexedParams
...
Allow four indexed arguments for anynomous events.
2015-10-07 17:01:37 +02:00
chriseth
b6ddde9372
Allow four indexed arguments for anynomous events.
2015-10-07 16:40:54 +02:00
chriseth
0297a213fe
Reject ether sent to library.
2015-10-06 22:55:45 +02:00
chriseth
d35a4b849d
Merge pull request #117 from chriseth/internalTypesForLibrary
...
Internal types for library
2015-10-06 18:29:05 +02:00
chriseth
c6e637677b
Merge pull request #115 from chriseth/testLongConstructorArguments
...
Test long constructor arguments.
2015-10-06 15:40:52 +02:00
chriseth
99351aebe0
Compiler version stamp.
2015-10-06 14:20:06 +02:00
chriseth
44e42bf52e
Add structs to library interface.
2015-10-06 14:20:06 +02:00
chriseth
bf5b387954
Provide access to scoped structs.
2015-10-06 14:20:06 +02:00
chriseth
bc609c55c0
Compute canonical names of types for function signatures.
2015-10-06 14:20:06 +02:00
chriseth
ce25ddfa6a
Encode storage items correctly for library calls.
2015-10-06 14:20:06 +02:00
chriseth
d2332769d3
Test for internal types.
2015-10-06 14:19:30 +02:00
chriseth
0950aa99a0
Test long constructor arguments.
2015-10-05 11:09:33 +02:00
chriseth
5e4166acb8
Report warning in tests if requested.
2015-10-02 23:18:54 +02:00
chriseth
da408640ca
Store small byte arrays and strings in storage in one slot with their
...
length.
2015-10-02 13:12:23 +02:00
LianaHus
53d0684cb4
-fixed the warning printing
...
-style fixes
2015-10-02 12:38:48 +02:00
LianaHus
fe2b9a3b3c
added warning for noninitialized references in storage.
2015-10-02 12:38:48 +02:00
LianaHus
db9cc9c6ef
added test
2015-10-02 12:38:48 +02:00
chriseth
6161ec96ff
Bugfix in calldata unpacker.
...
The offset was not specified correctly if memory activity preceded the
unpacker.
2015-10-01 16:50:11 +02:00
LianaHus
50827306a3
used throw statement instead of __throw()
2015-09-29 18:24:28 +02:00
chriseth
52f7e35843
Merge pull request #91 from chriseth/literalStringsToStoragePointer
...
Literal strings to storage pointer
2015-09-24 10:23:35 +02:00
chriseth
c4b7916c14
Test that literal strings cannot be assigned to storage pointers.
2015-09-23 17:34:03 +02:00
LianaHus
c096c3c349
improved the test
2015-09-23 17:31:47 +02:00
LianaHus
9547c4563c
fixed-sized arrays as return type
...
Conflicts:
test/libsolidity/SolidityEndToEndTest.cpp
2015-09-23 17:31:37 +02:00
chriseth
efdea76d5e
Merge pull request #85 from chriseth/warnings
...
Support mulitple errors and warnings.
2015-09-23 14:42:54 +02:00
LianaHus
ed76798406
fixed the test
2015-09-22 14:03:09 +02:00
chriseth
34a81fd60e
Refactoring: Check types outside of AST and recover from some errors.
2015-09-21 20:03:05 +02:00
LianaHus
e50400082b
fixed using string as a type for struct member
2015-09-17 15:15:46 +02:00
LianaHus
e89b8d516b
test
...
Conflicts:
test/libsolidity/SolidityEndToEndTest.cpp
2015-09-17 15:15:36 +02:00
LianaHus
279a36b6f8
throw statement implementation
2015-09-16 13:25:32 +02:00
LianaHus
152bc642a6
style fix
2015-09-15 12:10:23 +02:00
LianaHus
dbb36a7a7b
fixed rebase
2015-09-15 11:44:04 +02:00
LianaHus
9d44e65932
moved the test
...
Conflicts:
test/libsolidity/SolidityEndToEndTest.cpp
test/libsolidity/SolidityNameAndTypeResolution.cpp
2015-09-15 11:41:40 +02:00
LianaHus
466f5a4b88
returned test for exceptions in constructor
2015-09-15 11:40:20 +02:00
LianaHus
bc91464131
- changed implementation
...
- style fixes
2015-09-15 11:40:19 +02:00
LianaHus
7dbff2489f
some fixes in tests
2015-09-15 11:40:19 +02:00
LianaHus
e21632555c
added compile time check for out of bounds access for ordinary arrays
...
todo: check for dynamicaly sized arrays
Conflicts:
test/libsolidity/SolidityEndToEndTest.cpp
2015-09-15 11:40:14 +02:00
LianaHus
626a57826c
test
2015-09-15 11:37:56 +02:00
chriseth
4360e04596
Merge pull request #66 from chriseth/sol_libraries
...
Calling libraries.
2015-09-11 19:35:31 +02:00
chriseth
3c25420b84
Merge pull request #69 from LianaHus/sol_enum_too_many_indexed_args
...
too many indexed arguments for event
2015-09-11 15:48:43 +02:00
LianaHus
1d1386a58c
add call for EventDefinition::checkTypeRequirements()
2015-09-11 15:24:11 +02:00
chriseth
976c380b61
Possibility to call library functions.
2015-09-11 15:21:37 +02:00
chriseth
a9edc7b1a6
Transition from bytecode to more general linker objects.
2015-09-11 15:21:37 +02:00
chriseth
337fde9d11
Parsing and type checking of libraries without inheritance.
2015-09-11 15:21:37 +02:00
chriseth
c5b6d9d2a9
Merge pull request #65 from LianaHus/sol_Creating_a_contract_from_within_itself
...
Added error when creating a contract from within itself
2015-09-11 15:19:58 +02:00
LianaHus
f5fc119dc8
added test
...
Conflicts:
test/libsolidity/SolidityEndToEndTest.cpp
2015-09-11 14:59:54 +02:00
LianaHus
d570ab44c8
style fixes
2015-09-11 14:31:00 +02:00
LianaHus
47e42430f2
added type check if the type of the var decl is one of base contract type
2015-09-10 17:17:13 +02:00
LianaHus
30e89b3d9a
added test
...
Conflicts:
test/libsolidity/SolidityEndToEndTest.cpp
2015-09-10 15:05:10 +02:00
LianaHus
845bcf8db0
- added tests to test empty comment
...
- fixed skipSingleLineComment
- some style fixes
2015-09-10 14:26:34 +02:00
chriseth
3fc2561223
Merge pull request #51 from ethereum/revert-25-sol_strings_as_mapping_keys
...
Revert "added check for string as mapping key for local var."
2015-09-09 16:30:54 +02:00
chriseth
9967ae4038
Stylistic corrections.
2015-09-09 16:15:35 +02:00
chriseth
985eb80695
Fix for constant strings.
2015-09-08 16:51:14 +02:00
LianaHus
df8c82bc60
- renamed AST to ast and ABI to abi
...
- style fixes
2015-09-08 14:30:21 +02:00
LianaHus
02d4198242
removed get prefix
...
style fixes
2015-09-08 13:12:00 +02:00
LianaHus
1b5e6fc9e7
renamed getter functions
2015-09-08 13:12:00 +02:00
chriseth
9fc775269b
Revert "added check for string as mapping key for local var."
2015-09-07 22:43:23 +02:00
Gav Wood
714223f552
Merge pull request #25 from LianaHus/sol_strings_as_mapping_keys
...
added check for string as mapping key for local var.
2015-08-27 22:36:35 +02:00
debris
1741e89c09
client refactor
2015-08-27 14:28:31 +02:00
Paweł Bylica
e4858023be
Fix "add_sources" cmake macro.
2015-08-25 15:38:41 +02:00
Marek Kotewicz
40e65295ff
Merge pull request #26 from arkpar/cmake
...
Refactored CMakeLists for new module system
2015-08-24 15:57:48 +02:00
arkpar
3ea1a62fa9
Refactoreed CMakeLists for new module system
2015-08-24 15:51:52 +02:00
LianaHus
4c7777128b
added check for string as mapping key for local var.
2015-08-24 14:24:10 +02:00
LianaHus
ffcf18406b
added test to check string as mapping key
2015-08-24 13:48:20 +02:00
LianaHus
1af8ff0121
add tests for state variables accessors. normal and constant
...
fixed the issue with accessors for constant state variables
2015-08-21 17:57:57 +02:00
chriseth
8d9eb68307
Modularise CMakeLists files and integrate tests.
2015-08-20 00:55:41 +02:00
chriseth
e985b285be
Move Solidity tests.
2015-08-19 21:54:09 +02:00