chriseth
0e08fb7469
Use "in" tag for jumps from unpacker to function.
2018-11-26 11:02:58 +01:00
Christian Parpart
ec47c8946b
Isolating libyul library API into its own namespace yul
.
2018-11-23 14:29:00 +01:00
Christian Parpart
713d94476e
Reorder some include files and group <libyul/>'s together (as much as possible)
2018-11-23 12:37:19 +01:00
Christian Parpart
0f4ed52a71
Rewrite header paths to adapt to recent git mv
of libsolidity/inlineasm to libyul
2018-11-23 11:18:57 +01:00
Christian Parpart
d67322a186
Introduce namespace langutil
in liblangutil directory.
...
Also:
- Use {}-style list initialisation for SourceLocation construction
- Introduce new system includes
- Changes the API of the Scanner to take source as value (with move) as opposed to as a reference
2018-11-21 19:13:44 +00:00
Christian Parpart
87821c53c3
Isolating files shared between Yul- and Solidity language frontend.
2018-11-21 18:58:12 +00:00
chriseth
5e01d767d0
Prevent externally used functions from being removed.
2018-10-17 14:12:10 +02:00
Christian Parpart
1304361b9c
Renaming namespace dev::julia to dev::yul.
2018-10-15 11:58:51 +02:00
Alex Beregszaszi
fa0ce6a7e7
Use empty() instead of size() == 0
2018-10-09 04:29:37 +01:00
Alex Beregszaszi
a9819aa8bc
Remove code generation for Throw statement
...
It is disallowed in the type system.
2018-08-08 17:02:25 +01:00
Alex Beregszaszi
9062704054
Merge pull request #4753 from mattaereal/boost-to-string-patch
...
Replace boost:lexical_cast<std::string> for std::to_string.
2018-08-08 16:07:25 +01:00
Matías Aereal Aeón
e902ce1aa0
Removing std:: from std::to_string and include for boost/lexical_cast
2018-08-08 11:26:30 -03:00
chriseth
71e26f6adb
Remove clone feature.
2018-08-07 11:10:50 +01:00
Alex Beregszaszi
f74cff622d
Properly explain all the analsys steps in CompilerStack
2018-07-31 00:39:18 +01:00
Daniel Kirchner
fc370591f0
Disallow multi variable declarations with mismatching number of values.
2018-07-12 20:33:51 +02:00
Leonardo Alt
0c5e0e0d59
Added assertion and tests suggestions
2018-07-10 18:39:38 +02:00
Leonardo Alt
b750ca9741
Add more tests and assertions
2018-07-10 18:39:38 +02:00
Leonardo Alt
9d895e002d
Added tests and review suggestions
2018-07-10 18:39:38 +02:00
Leonardo Alt
1f77deada1
[050] Reserving and popping local vars in their scope
2018-07-10 18:39:38 +02:00
Alex Beregszaszi
1d57d74e82
Fail if break/continue statements are used outside for/while loops in ContractCompiler
2018-06-12 00:46:23 +01:00
Daniel Kirchner
f627dc77d0
Fix continue inside do-while.
2018-05-16 18:32:48 +02:00
chriseth
7a9ee69e98
Bubble up error messages.
2018-04-12 13:09:38 +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
96eff0ff6a
Error when using empty parenthesis for base class constructors that require arguments.
2018-04-05 11:52:22 +02:00
chriseth
a54fdc495f
Fix: Treat empty base constructor argument list as not provided.
2018-04-03 14:53:48 +02:00
chriseth
32c94f5059
Simple size check for old ABI decoder.
2018-03-21 14:53:25 +00:00
chriseth
2cdf44f65c
Move the old ABI decoder code.
2018-03-20 15:20:43 +00:00
chriseth
069b150e42
Bugfix in virtual lookup for modifiers in libraries.
2018-03-13 16:55:41 +01:00
chriseth
6ec4517929
Use EVM version in gas meter and optimizer.
2018-03-05 11:36:33 +01:00
chriseth
388718b59f
Introduce emit statement.
2018-02-22 15:17:30 +01:00
chriseth
6807010dc7
Prevent libraries from being called.
2018-01-19 16:27:44 +01:00
chriseth
5a3dbb0269
Cleanup and overflow checks for data pointers.
2017-11-29 17:08:44 +01:00
chriseth
bdc1ff8ec7
ABI decoder.
2017-11-29 17:08:44 +01:00
chriseth
a3db1fc197
Do not accept truncated function selectors.
2017-10-17 23:17:36 +02:00
Alex Beregszaszi
204214f070
Split encodeToMemory to packedEncode and abiEncode
2017-09-27 11:32:19 +01:00
chriseth
22f85d5af3
Update tests and error messages.
2017-09-16 12:12:43 +01:00
chriseth
80ce3ca66f
Move ABI encoder into its own function.
2017-09-15 20:46:32 +01:00
Alex Beregszaszi
7fb4a64136
Move all file specific globals to anonymous namespace
2017-08-29 11:09:18 +01:00
Alex Beregszaszi
2a5772cff7
Mark appropriate constructors explicit
2017-08-22 10:51:46 +01:00
chriseth
d1ad62fccc
Experimental feature switch for ABI encoder.
2017-08-14 13:11:41 +01:00
Alex Beregszaszi
7d37eba4ba
Remove the need of jumping out of the fallback
2017-07-27 21:52:58 +01:00
chriseth
d58e439094
Fix internal "variable already present" error.
2017-07-04 19:33:55 +02:00
chriseth
71d866cd7a
Abort early if there is nothing to encode or decode.
2017-06-30 14:16:16 +02:00
Alex Beregszaszi
6a708b0cfe
Document appendFunctionSelector
2017-06-28 18:00:40 +02:00
chriseth
ef9a7b2144
Stack adjustment and code generation for fallback function.
...
This assumes that the fallback function does not have return parameters.
2017-06-28 18:00:31 +02:00
chriseth
168f64f4cb
Fix negative stack size checks.
2017-06-28 16:55:49 +01:00
Alex Beregszaszi
a0b0df2d98
Merge pull request #2460 from ethereum/disallowMultiModifier
...
Disallow invoking the same modifier multiple times.
2017-06-26 11:51:12 +01:00
chriseth
5a75581f66
Disallow invoking the same modifier multiple times.
2017-06-23 20:12:22 +02:00
chriseth
831ed08387
Change invalid opcode to revert for input validation.
2017-06-23 19:29:11 +02:00