Commit Graph

195 Commits

Author SHA1 Message Date
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
chriseth
936c67415a Simplify hex prefix. 2018-12-05 22:51:49 +01:00
chriseth
bc6ddbdd09 Remove w parameter for toHex. 2018-12-05 22:51:49 +01:00
chriseth
e8455c2a6d Move toHex implementation to cpp file. 2018-12-05 22:37:05 +01:00
chriseth
3a378eae1a Restrict toHex to bytes. 2018-12-05 22:37:05 +01:00
Kevin Kelley
fb6fd1b3c2 add a 'readable' format for large hex values 2018-12-05 22:15:02 +01:00
Erik Kundt
c38fb53439 Cleans up Result<T> and adds additional documentation. 2018-12-05 10:33:34 +01:00
Erik Kundt
e3accc6aa6 Simplifies Result<T> and prevents undefined behaviour. 2018-12-05 10:33:34 +01:00
Erik Kundt
05e74d096e Introduces Result<T> for operator and implicit conversion type checks. 2018-12-05 10:33:34 +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
Leonardo Alt
0ff4cbe51b Add SMTChecker tests for standard JSON 2018-11-23 10:51:06 +00:00
chriseth
6bbedab383
Merge pull request #5265 from ethereum/cleanupsha3
Simplify sha3.
2018-11-09 15:39:57 +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
chriseth
19be6cd818 Some well-formedness checks for the Yul AST. 2018-10-22 15:52:26 +02:00
chriseth
e78b95d9d4 Renamed SHA3.{h,cpp} files. 2018-10-18 14:31:36 +02:00
chriseth
d9e6469811 Simplify sha3. 2018-10-18 14:31:32 +02:00
chriseth
0690aae09d Remove mostly unused writeFile implementation. 2018-10-18 12:50:06 +02:00
Christian Parpart
04612936c2
Yul: Introduces a block flattening pass + tests 2018-10-15 18:21:34 +02:00
chriseth
914668c622 Fix checksum check. 2018-10-12 15:15:02 +02:00
chriseth
56bbfce6d3 Fix directory creation. 2018-10-12 15:15:01 +02:00
chriseth
b5399a7aa0
Merge pull request #5132 from ethereum/genericVisitor
Generic visitor.
2018-10-10 16:01:20 +02:00
chriseth
06200b4b64
Merge pull request #5180 from ethereum/cpp-cleanup
Some C++ cleanup
2018-10-10 11:43:42 +02:00
Alex Beregszaszi
6c3d12d85b Do not require ctype/stdio if not needed 2018-10-09 19:06:22 +01:00
chriseth
4d9184ef04 Expression breaker. 2018-10-09 15:48:27 +02:00
chriseth
3f216bac5e Generic visitor. 2018-10-09 14:27:21 +02:00
liangdzou
6f7ff2dcd4 fix format issue for source files 2018-09-20 17:41:59 +08:00
Daniel Kirchner
a102f3b783 Remove trailing whitespace for all files in the repository. 2018-09-04 11:30:30 +02:00
bakaoh
3fa8829845 Fixes #4718: High CPU usage when using large variable names 2018-08-15 10:23:08 +02:00
chriseth
14e116c1d5 Make joinHumanReadable work for input iterators. 2018-08-14 18:53:06 +02:00
chriseth
7d9692c31d Explicitly use std::next to avoid boost version. 2018-08-09 01:12:55 +02: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
Matías Aereal Aeón
7dae58cbcc Replace boost:lexical_cast<std::string> for std::to_string. 2018-08-08 03:55:43 -03:00
Alex Beregszaszi
3de0b8b7f0 Move absolutePath/sanitizePath helpers from CompilerStack to libdevcore 2018-08-06 12:54:22 +01: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
Evgeniy Filatov
3705bcc9bc added helper function that joins vectors of strings, refactored suggestions formattingi function to use it 2018-08-03 14:07:03 +03:00
Christian Parpart
38f9667e09 Guard CycleDetector against recursion exhaustion.
fixes #3935.
2018-08-01 12:02:59 +01:00
Alexander Arlt
0b49fd3493 CMake: Update jsoncpp to v1.8.4 2018-04-23 11:10:39 +01:00
Alex Beregszaszi
0bf3db3fcf Add static_assert for the correct jsoncpp version 2018-04-17 11:03:19 +01:00
Paweł Bylica
1ca8aebf8e
CMake: Clean up devcore dependencies 2018-04-16 12:16:04 +02:00
Daniel Kirchner
c15cb6cc7a Prevent information about file existence outside the allowed paths to leak by mimicing boost::filesystem::weakly_canonical. 2018-04-11 18:52:22 +02:00
chriseth
eb5b18e814 Generalize cycle detection. 2018-04-03 16:29:18 +02:00
Daniel Kirchner
7fa892eca9 Add interactive test tool isoltest. 2018-03-15 16:23:49 +01:00
Alexander Arlt
0f29ac4e56 Add new JSON API for better abstraction and for supporting strict JSON parsing 2018-02-20 21:58:26 +01:00
chriseth
5747985e6a Use one-dimensional vector. 2018-02-13 15:04:10 +00:00
chriseth
12c3eb8880 Suggestion to improve readability. 2018-02-13 15:04:10 +00:00
chriseth
dc0a25f1cd Minor changes. 2018-02-13 15:04:03 +00:00
Balajiganapathi S
8a491c77ba Restructure code for alternative identifier suggestions 2018-02-13 15:00:15 +00:00
Balajiganapathi S
b1417b318f Move string distance function to utils and format error message 2018-02-13 14:59:33 +00:00
chriseth
d84c9e148b Generic pretty-printed numbers.. 2018-02-09 19:00:40 +01:00
chriseth
3760284e1c Move-append for vector. 2017-12-11 14:24:04 +01:00
Alex Beregszaszi
6ebc094474 Ensure that non-hex characters are caught in address checksumming 2017-11-17 00:46:45 +00:00
wadeAlexC
8a6692b2cf Improves address literal checksum error message 2017-11-17 00:46:44 +00:00
Alex Beregszaszi
6f2865228c Add readStandardInput helper 2017-10-18 12:56:11 +01:00
Alex Beregszaszi
7186e142b8 Rename contentsString to readFileAsString 2017-10-18 12:55:12 +01:00
Paweł Bylica
931c0bcce3 Refactor Exception::what() 2017-10-02 16:49:45 +02:00
Alex Beregszaszi
71aca8c86d Always return a valid pointer in Exception::what() 2017-10-02 11:41:47 +01:00
chriseth
f28d40ef0b Provide template for whiskers error. 2017-09-22 15:19:50 +02:00
Alex Beregszaszi
6cec0789b5 Limit of scope of variables in SHA3 2017-09-20 01:23:21 +01:00
Alex Beregszaszi
aad829948a Ensure parameter names match between headers and implementation 2017-09-20 01:23:21 +01:00
chriseth
cd22da1d9e Remove escape function. 2017-08-29 15:50:28 +01:00
Alex Beregszaszi
7fb4a64136 Move all file specific globals to anonymous namespace 2017-08-29 11:09:18 +01:00
chriseth
6951a371ec Cleanup of vector_ref.h 2017-08-25 19:36:48 +02:00
chriseth
82e4f6f604 Cleanup of FixedHash.h 2017-08-25 16:05:28 +02:00
chriseth
4b0e30d259 Cleanup of Common.h 2017-08-25 14:54:23 +02:00
chriseth
1437521df0 Merge pull request #2807 from ethereum/removeABIh
Cleanup: Remove ABI.h
2017-08-25 14:53:30 +02:00
chriseth
157b5f1ae9 Cleanup of SHA3.h 2017-08-25 12:13:26 +02:00
chriseth
bfc7d71f51 Cleanup: Remove ABI.h 2017-08-25 11:57:33 +02:00
Alex Beregszaszi
957f23a9f4 Merge pull request #2538 from ethereum/z3Conditions
z3 conditions
2017-08-24 00:27:09 +01:00
Paweł Bylica
ee09a06647
CMake: Add back compatibility with CMake 3.0 2017-08-23 17:54:53 +02:00
chriseth
5bfd5d98c1 Format numbers more nicely. 2017-08-23 17:37:35 +02: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
Paweł Bylica
15fd43f035
CMake: Fix linking with pthread 2017-08-22 16:45:57 +02:00
Alex Beregszaszi
f38429fef8 Switch stream properties back after temporary modification 2017-08-22 13:55:01 +01:00
Alex Beregszaszi
2a5772cff7 Mark appropriate constructors explicit 2017-08-22 10:51:46 +01:00
Alex Beregszaszi
3cf2426e1a Make vector+vector template more readable 2017-08-22 10:51:46 +01:00
Alex Beregszaszi
b3986f1d07 Remove some unused includes 2017-08-21 14:08:58 +01:00
Paweł Bylica
0712e6302e
Boost: Use static libs 2017-08-18 13:32:36 +02:00
Paweł Bylica
2a1b6b2e92
CMake: Simplify libdevcore config 2017-08-17 13:48:34 +02:00
chriseth
bda410bb07 Helpers. 2017-08-14 12:44:25 +02:00
Alex Beregszaszi
d5188fb671 Introduce IndentedWriter 2017-08-10 22:47:09 +01:00
Alex Beregszaszi
f3e591eedd Add template for merging sets 2017-07-19 14:56:40 +01:00
chriseth
09e821619e Refactor exceptions and provide comment function. 2017-07-13 11:34:03 +02:00
Alex Beregszaszi
b615b01449 Move UndefMacros from libdevcore to libsolidity/parsing 2017-07-02 00:09:46 +01:00
Alex Beregszaszi
aea5f90ad3 Rewrite validateUTF8 using if/else 2017-06-26 12:59:17 +01:00
Alex Beregszaszi
c45dbab00c Rewrite validateUTF8 to use char 2017-06-26 12:59:14 +01:00
Alex Beregszaszi
6488f7e079 Validate first byte properly for UTF8 2017-06-26 12:58:22 +01:00
Alex Beregszaszi
569e0c53f2 Implement strict UTF-8 validation 2017-06-26 12:58:21 +01:00
chriseth
cb7021881a Whiskers template system 2017-06-22 16:56:57 +02:00
Alex Beregszaszi
09c548ec69 Remove unused errinfo types 2017-06-22 11:25:07 +01:00
Alex Beregszaszi
a3bd670154 Remove obscure DEV_IGNORE_EXCEPTIONS macro 2017-06-22 11:25:06 +01:00
Alex Beregszaszi
becea47ac3 Use assertThrow where possible 2017-06-22 11:25:06 +01:00
chriseth
57f79ebfa6 Remove debugbreak. 2017-06-20 19:21:29 +02:00
Alex Beregszaszi
d7e63f23de Fix UTF-8 validation for high codepoints (>10000) 2017-06-16 16:41:29 +02:00
ethers
9e62e9b1b7 Comment update SHA3-256 to Keccak-256 (title) 2017-05-12 22:30:14 -04:00
ethers
cd1d112816 Comment update SHA3-256 to Keccak-256
Could have been part of aefb6e5fcf
2017-05-08 21:30:16 -07:00
chriseth
7a24a5764e Add line info to serious exceptions. 2017-02-24 19:32:41 +01:00
Alex Beregszaszi
902f69640b Replace cpp-ethereum with solidity in the license headers 2017-02-02 10:06:28 +00:00