Commit Graph

491 Commits

Author SHA1 Message Date
chriseth
5490a5cd37
Merge pull request #6115 from ethereum/fixUnavailableOpcodes
Make unavailable opcodes errors.
2019-03-04 12:26:22 +01:00
chriseth
8f5e12c192 Make unavailable opcodes errors. 2019-02-28 22:20:01 +01:00
Alex Beregszaszi
c3ab43dca7 Remove blockhash workaround in tests
This is now obsolete as final constantinople doesn't contain the blockhash EIP.

Revert 3e55aa3fa2.
2019-02-28 21:17:58 +00:00
Mathias Baumann
e4a52aa2f6 Allow dynamic types in public mappings 2019-02-26 15:48:54 +01:00
Alex Beregszaszi
d2f493268b Provide access to the name of contracts. 2019-02-26 14:07:03 +00:00
chriseth
7a2645f7d2
Merge pull request #6079 from ethereum/shift-tests
Add more test cases for shifts with constants
2019-02-25 16:28:06 +01:00
Alex Beregszaszi
7d52884247 Add more test cases for shifts with constants 2019-02-25 14:44:30 +00:00
Leonardo Alt
2405b2151a EVMVersion in langutil namespace instead of solidity 2019-02-25 15:29:57 +01:00
chriseth
8ace2c5b11 Special treatment for differences between ABI encoders. 2019-02-21 11:11:29 +00:00
chriseth
b14d22d11e Tests for events with structs in libraries. 2019-02-20 14:35:02 +01:00
chriseth
05541e5adb Fixed internal error related to ecrecover and ABIEncoderV2. 2019-02-19 14:17:03 +01:00
chriseth
d5791fef41 Fix combination of delegatecall and ABIEncoderV2.
We can set the flag to false for bare delegatecall, because we always
send a memory string and never a storage reference.
2019-02-19 13:57:03 +01:00
chriseth
c690f679cb Allow cleanup for mappings (do nothing). 2019-02-18 18:50:22 +01:00
chriseth
9ab72f0188
Merge pull request #5971 from ethereum/overloadedEvents
More tests for overloaded events.
2019-02-12 12:00:02 +01:00
chriseth
091bbdb459 More tests for overloaded events. 2019-02-12 10:54:58 +01:00
Daniel Kirchner
9e32aa7510 Disallow calldata arrays with dynamically encoded base types in TypeChecker. 2019-02-11 17:13:12 +01:00
Daniel Kirchner
0e4912a203 ABIEncoderV2: Implement calldata structs without dynamically encoded members. 2019-02-11 15:46:58 +01:00
Mathias Baumann
fe2429de9f Packed Encoding: Disallow types in v2 that aren't allowed in v1 2019-02-11 11:37:48 +01:00
chriseth
7684d886ae Semantic tests. 2019-02-11 11:37:47 +01:00
chriseth
35483422f3 Pad code to multiple of 32 bytes. 2019-01-30 11:31:28 +01:00
chriseth
2a0d4f358c Add test for content of creationCode and runtimeCode. 2019-01-17 20:36:48 +01:00
chriseth
44237211d1 Tests. 2019-01-17 20:36:48 +01:00
chriseth
17bf164afe
Merge pull request #4951 from ethereum/alethUpdates
Use current aleth release for testing.
2018-12-12 18:41:35 +01:00
Daniel Kirchner
6d82ad1338 Test updates for recent versions of aleth. 2018-12-11 04:47:05 +01:00
chriseth
d80d324de7 Tests for gas costs. 2018-12-10 18:06:07 +01:00
chriseth
73a64da041 Fix bug related to state variables of function type accessed via base contract. 2018-11-29 19:30:27 +01:00
chriseth
240ad0e34e
Merge pull request #5382 from ethereum/libraryMappingPublic
Allow mapping arguments for public and external library functions.
2018-11-26 19:47:32 +01:00
Daniel Kirchner
30e6f8d3fb Allow mapping arguments for public and external library functions. 2018-11-26 16:31:46 +01:00
Daniel Kirchner
597174119a Tests. 2018-11-26 14:30:32 +01:00
chriseth
ac5803bf3e Changelog entry and tests. 2018-11-26 12:41:26 +01:00
Leonardo Alt
06189ae57f Add assert and tests for bound functions 2018-11-22 14:41:39 +01:00
Christian Parpart
87821c53c3 Isolating files shared between Yul- and Solidity language frontend. 2018-11-21 18:58:12 +00:00
Christian Parpart
ab0de38f16
Eliminate byte-typedef and use uint8_t in all their places instead.
This change is made to (easily) be forward compatible with future C++
standards, in order to allow compiling the code with newer standards at
some point in the future.

* Removed the `using byte = uint8_t;` line from Common.h
* Mechanically change all uses of `byte` to `uint8_t`.

Tested with GCC 7.3 in C++11/14/17 modes :-)
2018-11-07 12:17:57 +01:00
chriseth
c13b5280c1
Merge pull request #5256 from ethereum/lvalueCleanup
Lvalue cleanup
2018-10-19 11:20:12 +02:00
chriseth
56425bb2b1 Add a test for delete x.length 2018-10-17 22:07:05 +02:00
mordax
134f5cb798 Added test for flipping signs on signed type edge case 2018-10-15 16:08:43 -04:00
Erik Kundt
4beabf6686 Documents library view functions and adds unit test. 2018-10-10 12:28:24 +02:00
Daniel Kirchner
3e55aa3fa2 Disable blockhash test for constantinople due to changes between aleth versions. 2018-09-13 17:18:42 +02:00
Daniel Kirchner
879251a78b Update test suite to use address payable. 2018-09-12 16:21:43 +02:00
chriseth
7118f53974 Tests. 2018-09-10 12:47:46 +02:00
chriseth
a996ea266c
Merge pull request #4590 from ethereum/msgValueModifier
Warn if modifier uses msg.value in non-payable function
2018-09-05 10:32:10 +02:00
Daniel Kirchner
e3097b30da Add another end-to-end test. 2018-09-04 15:34:21 +02:00
Daniel Kirchner
82f512a7d4 Add return data to bare calls. 2018-09-04 13:31:10 +02:00
Leonardo Alt
b7c6e53d3d Fix endToEnd test 2018-09-03 18:35:57 +02:00
chriseth
cc6fa6d61f
Merge pull request #4822 from ethereum/addressStaticCall
Add ``staticcall`` to ``address``.
2018-08-16 00:13:21 +02:00
Leonardo Alt
c3d3ae80fa Add end to end tests 2018-08-15 17:11:18 +02:00
Daniel Kirchner
7ca0aaaf6f Add `staticcall to address`. 2018-08-15 16:06:48 +02:00
chriseth
9328ea4c3c Add abi.decode(bytes data, (...)) 2018-08-15 10:45:16 +02:00
Chase McDermott
b000a022f2 Update tests 2018-08-14 18:53:06 +02:00
Christian Parpart
81faafe7f2
Adds support for structs in interfaces.
Closes #4733.
2018-08-14 15:36:03 +02:00