Grant Wuerker
69b4ce36de
Some move semantics improvements.
2019-04-17 14:19:48 +02:00
chriseth
30da62aa2c
Merge pull request #6408 from ethereum/includeCleanup
...
Include cleanup
2019-03-28 15:31:07 +01:00
chriseth
f2cee9ec0c
Include cleanup.
2019-03-28 14:32:48 +01:00
chriseth
2308904f68
Remove "using namespace" from header and move Instruction to dev::eth.
2019-03-28 13:48:11 +01:00
chriseth
851dd635eb
Remove defaults in constructor arguments.
2019-03-04 11:41:52 +01:00
chriseth
35f0654f1c
Fix usage of EVMVersion in LLL.
2019-02-25 17:27:10 +01:00
Daniel Kirchner
809b9a95f9
Even more style checks.
2019-02-14 11:53:00 +01:00
chriseth
1a823f0bf8
Fix tabs/spaces.
2019-02-13 17:05:48 +01:00
Christian Parpart
62fe57479e
make use of C++ = default
constructor declarations as well as more non-static member initialization syntax.
2018-12-19 11:26:42 +01:00
Daniel Kirchner
2353f73c39
Add headers to targets in CMakeLists.txt.
2018-12-17 15:01:02 +01:00
Mathias Baumann
2f6dc2e773
Replace push_back with emplace_back where it makes sense
2018-12-10 19:02:39 +01:00
Christian Parpart
cdd8c72c9d
CMake: Explicitly state which files to compile instead of relying on globbing.
...
Also remove header file lists, as there is no need to add them to
add_library() or add_executable(), which should lower maintenance of the cmake files.
2018-11-26 14:39:24 +01:00
Christian Parpart
87821c53c3
Isolating files shared between Yul- and Solidity language frontend.
2018-11-21 18:58:12 +00:00
Alex Beregszaszi
7c051f1e32
LLL: implement WITH keyword
2018-11-21 15:50:45 +00:00
Alex Beregszaszi
dcfa5f4ea0
LLL: add UNSET to remove a variable
2018-11-21 15:37:11 +00:00
Alex Beregszaszi
e82917d4e6
Add LLL error when assembly instruction causes stack underflow
2018-11-13 13:47:29 +01:00
Alex Beregszaszi
c320a650f9
LLL: terminate sequences with a STOP
2018-11-13 13:47:29 +01: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
liangdzou
24e5dcc352
fix code format problems
2018-09-19 00:18:49 +08: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
Augusto F. Hack
6c3b48ddfc
Added guards for unknown pragmas
...
Removed push/pop if there was no change to the warnings *in the same
file* for a given compiler. This assumes the imported boost headers use
a warning stack themselves.
The pragmas don't seem to be required anymore, but were not removed to
mantain compatibility with older versions of the boost library.
Compiled with
- clang version 6.0.1 (tags/RELEASE_601/final)
- gcc (GCC) 8.1.1 20180531
against:
- libboost 1.67.0-5
2018-08-05 19:21:33 -03:00
Alex Beregszaszi
7c509137cf
Replace dev::eth namespace with dev::lll in LLL
2018-07-28 12:00:36 +01:00
chriseth
6ec4517929
Use EVM version in gas meter and optimizer.
2018-03-05 11:36:33 +01:00
Alex Beregszaszi
15517b571d
lll: disallow useless PUSHn in assembly
2017-10-13 02:04:36 +01:00
Alex Beregszaszi
ab206b8113
LLL: do not crash if import callback is null
2017-10-03 10:22:30 +01:00
Alex Beregszaszi
26f3ea8cf7
LLL: change (include) to use a callback
2017-10-02 21:19:36 +01:00
Alex Beregszaszi
cbd4465a7f
lll: do not expose push/dup/swap/jumpdest as functions
2017-10-02 16:21:21 +01:00
Alex Beregszaszi
6cbb726fb8
Merge pull request #2622 from benjaminion/lll-switch
...
LLL: Implement a "switch" expression
2017-10-02 13:38:21 +01:00
benjaminion
326c7887a4
LLL: Implement a switch expression.
2017-10-02 12:01:15 +01:00
Alex Beregszaszi
cddfec27ee
lll: better error reporting in some cases
2017-10-02 11:48:26 +01:00
Alex Beregszaszi
bbfb16cf5c
Introduce assemblyString
2017-09-11 15:53:20 +01:00
Alex Beregszaszi
a535a8b06e
Split out the JSON functionality from assembly.stream()
2017-09-11 15:48:52 +01:00
Alex Beregszaszi
3b07c4d38e
Merge pull request #2757 from ethereum/cmake
...
Static linking
2017-08-23 12:36:24 +01:00
Paweł Bylica
388fc983fa
CMake: Cleanup "local" include path
2017-08-22 22:50:25 +02:00
Alex Beregszaszi
9897c56b2c
Mark a lot of functions static (where possible)
2017-08-22 10:51:46 +01:00
Alex Beregszaszi
e2cfc9ee92
Mark a lot of functions const (where possible)
2017-08-22 10:51:46 +01:00
Paweł Bylica
99d198ffb0
CMake: Make libs dependencies explicit
2017-08-21 12:27:06 +02:00
Paweł Bylica
7337054d8e
CMake: Simplify liblll config
2017-08-18 13:32:35 +02:00
Paweł Bylica
d1f4d110fb
CMake: Build static libs by default
2017-08-18 13:32:35 +02:00
Alex Beregszaszi
d70974ea7c
Merge pull request #2573 from benjaminion/lll-error-report-symbol
...
LLL: Improve error reporting in certain cases.
2017-07-20 11:02:31 +01:00
Yoichi Hirai
3ad326beba
Merge pull request #2592 from ethereum/lll-simplify
...
LLL: remove useless code
2017-07-19 11:47:21 +02:00
Alex Beregszaszi
fa2781d6da
LLL: remove useless code
2017-07-18 21:12:43 +01:00
Alex Beregszaszi
c880550fbc
LLL: disable optimiser entirely if requested
2017-07-18 21:09:05 +01:00
benjaminion
4c0953385e
LLL: Improve error reporting in certain cases.
2017-07-15 22:17:20 +01:00
benjaminion
3bc935d932
LLL: rewrite alloc to avoid issues with edge cases.
2017-07-11 21:22:38 +01:00
Alex Beregszaszi
dbbdcc66e6
LLL: fix redefinitions on some compilers
2017-06-24 12:59:30 +01:00
Alex Beregszaszi
b46bb70b96
LLL: remove obsolete header
2017-06-23 02:52:44 +01:00
Alex Beregszaszi
af57c083f2
LLL: fix the set keyword (create symbol if not present)
2017-06-23 02:52:44 +01:00
Alex Beregszaszi
1ffe286a81
LLL: report correct name if a symbol was not found
2017-06-22 23:00:22 +01:00