Commit Graph

6808 Commits

Author SHA1 Message Date
chriseth
ae2b59d18a Fix optimizer with regards to INVALID instruction. 2017-01-26 16:39:07 +01:00
chriseth
c2b3d8bcd2 Change code for INVALID opcode to 0xfe. 2017-01-26 16:39:07 +01:00
Valentin Wüstholz
5b7cc018f0 Address feedback from code review. 2017-01-26 16:39:07 +01:00
Valentin Wüstholz
9bcbd93ac5 Change translation of implicit throws (issue #1589).
This adds a new invalid instruction that is used for encoding
implicit throws that are emitted by the compiler. This makes it
possible to distinguish such runtime errors from user-provided,
explicit throws.
2017-01-26 16:39:07 +01:00
Alex Beregszaszi
102fd7ee5d Merge pull request #1604 from ethereum/checksums
Warn about invalid checksums of addresses.
2017-01-26 14:42:34 +00:00
Alex Beregszaszi
024061b828 Merge pull request #1610 from ethereum/assemblyModeError
Proper error reporting for assembly mode.
2017-01-26 14:41:39 +00:00
chriseth
78d70b98f7 Merge pull request #1611 from ethereum/metadata-literal-sources
Add option to keep literal sources in metadata
2017-01-26 15:20:56 +01:00
Alex Beregszaszi
4b321c653c Add literal metadata sources to changelog 2017-01-26 13:26:04 +00:00
Alex Beregszaszi
84bf547f21 Add option to solc to use literal sources in metadta 2017-01-26 13:24:59 +00:00
Alex Beregszaszi
fcf483ee6b Add option to store literal sources in metadata 2017-01-26 13:16:26 +00:00
Alex Beregszaszi
2122d2d728 Merge pull request #1606 from ethereum/inlineasm-instr-shadowing
Avoid shadowing of inline assembly instructions with variables
2017-01-26 13:15:09 +00:00
chriseth
f610ba77a4 Simplify length rule. 2017-01-26 13:58:24 +01:00
chriseth
873f2dddd6 Update error message. 2017-01-26 13:52:02 +01:00
chriseth
8e29d636f7 Header cleanup. 2017-01-26 13:47:57 +01:00
chriseth
1b097fd3c7 Proper error reporting for assembly mode. 2017-01-26 13:45:23 +01:00
chriseth
525758a130 Disallow assignment to non-identifiers. 2017-01-26 13:40:40 +01:00
Lefteris Karapetsas
19833c95eb
Add ethereum-git to archlinux dependencies
It's needed for testing, since we need to have the `eth` client installed
2017-01-26 13:17:05 +01:00
chriseth
f62e269115 Disallow instructions in assignment. 2017-01-25 17:29:06 +01:00
chriseth
946a63c26f Add test for assignment. 2017-01-25 17:27:01 +01:00
chriseth
a5696e1f0a Renamed function. 2017-01-25 17:26:11 +01:00
chriseth
27ba665694 Moved test. 2017-01-25 17:24:43 +01:00
chriseth
8e318181e9 Rewording in changelog. 2017-01-25 17:24:25 +01:00
Alex Beregszaszi
7ff44bec94 Add test for shadowing inline assembly instruction 2017-01-25 11:28:09 +00:00
Alex Beregszaszi
900c56d996 Do not allow shadowing inline assembly instructions with variables 2017-01-25 11:28:09 +00:00
Lefteris Karapetsas
9ca0fde853 Fix and better output for tests 2017-01-25 11:01:52 +01:00
Lefteris Karapetsas
5738e865d5 Accept any kind of whitespace after natspec tags 2017-01-25 11:01:52 +01:00
chriseth
87f744ae5e Add some more tests for the checksum routine. 2017-01-25 10:45:21 +01:00
chriseth
d855eaab13 Documentation. 2017-01-24 23:37:48 +01:00
chriseth
3949624a61 Also check library addresses. 2017-01-24 23:37:48 +01:00
chriseth
605455f96b Tests for library checksums. 2017-01-24 23:37:48 +01:00
chriseth
1316bb7565 Warn about invalid checksums of addresses. 2017-01-24 23:37:48 +01:00
RJ Catalano
ba9a045002 Merge pull request #1595 from ethereum/noDuplicatedContracts
Include bytecode of created contracts only once.
2017-01-24 13:05:51 -06:00
chriseth
ead1a3b33f Include creation code only once. 2017-01-24 17:41:31 +01:00
chriseth
8e5f1c0d50 Test double inclusion of bytecode. 2017-01-24 17:41:31 +01:00
chriseth
3dc83aa34e Merge pull request #1588 from ethereum/fixrecursivestructs
Introduce low-level functions
2017-01-24 17:37:22 +01:00
chriseth
29dab03ec8 Merge pull request #1600 from ethereum/functionalAsmOut
Create functional assembly output, if possible.
2017-01-24 17:35:21 +01:00
chriseth
7e6f1b3f00 Use int arithmetics for stack adjustment. 2017-01-24 12:07:09 +01:00
chriseth
23eca813f5 Change clearStorageLoop to TypePointer. 2017-01-24 12:07:09 +01:00
chriseth
1b87e08e04 Changelog entry. 2017-01-24 12:07:08 +01:00
chriseth
82a00e7dc5 Use shared_ptrs to enable shared_from_this. 2017-01-24 12:06:41 +01:00
chriseth
cea020b89e Convert ArrayUtils routines into low-level functions. 2017-01-24 12:06:40 +01:00
chriseth
b60623521f Move some util functions to low-level functions. 2017-01-24 12:06:40 +01:00
chriseth
d0e8d340a5 Low level named functions for CompilerContext. 2017-01-24 12:06:40 +01:00
chriseth
dea59bfbdc Test for initializing recursive structs. 2017-01-24 12:06:40 +01:00
chriseth
b52a60402d Merge pull request #1245 from ethereum/1215
Allow multiple events of the same name
2017-01-24 11:52:21 +01:00
chriseth
997f5d751a Create functional assembly output, if possible. 2017-01-24 01:09:55 +01:00
Alex Beregszaszi
c5a501addd Merge pull request #1599 from ethereum/fixErrorTagLLL
Fix error tag usage in lll.
2017-01-23 15:26:19 +00:00
Yoichi Hirai
4e1fd68b38
analysis: disallow overloading functions with events 2017-01-23 15:25:13 +01:00
Yoichi Hirai
3d8b56c2a4
test: add tests about functions and events of the same name 2017-01-23 15:25:13 +01:00
Yoichi Hirai
399b7b695a
analysis: fix format 2017-01-23 15:25:13 +01:00