aboutsummaryrefslogtreecommitdiffstats
path: root/libdevcore
Commit message (Collapse)AuthorAgeFilesLines
* Add equivalent function combiner as Yul optimizer step.Daniel Kirchner2019-01-161-0/+6
|
* Warn about unreachable code.Daniel Kirchner2019-01-101-0/+43
|
* make use of C++ `= default` constructor declarations as well as more ↵Christian Parpart2018-12-191-3/+1
| | | | non-static member initialization syntax.
* Merge pull request #5664 from ethereum/cmakeUpdateschriseth2018-12-191-1/+1
|\ | | | | Use imported CMake targets.
| * Use imported CMake targets.Daniel Kirchner2018-12-171-1/+1
| |
* | Add headers to targets in CMakeLists.txt.Daniel Kirchner2018-12-171-0/+18
|/
* Replace push_back with emplace_back where it makes senseMathias Baumann2018-12-112-2/+2
|
* Simplify hex prefix.chriseth2018-12-061-1/+4
|
* Remove `w` parameter for toHex.chriseth2018-12-063-9/+8
|
* Move toHex implementation to cpp file.chriseth2018-12-062-19/+21
|
* Restrict toHex to `bytes`.chriseth2018-12-062-5/+4
|
* add a 'readable' format for large hex valuesKevin Kelley2018-12-062-4/+105
|
* Cleans up Result<T> and adds additional documentation.Erik Kundt2018-12-051-8/+8
|
* Simplifies Result<T> and prevents undefined behaviour.Erik Kundt2018-12-051-26/+9
|
* Introduces Result<T> for operator and implicit conversion type checks.Erik Kundt2018-12-051-0/+83
|
* CMake: Explicitly state which files to compile instead of relying on globbing.Christian Parpart2018-11-261-3/+13
| | | | | 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.
* Add SMTChecker tests for standard JSONLeonardo Alt2018-11-232-0/+15
|
* Merge pull request #5265 from ethereum/cleanupsha3chriseth2018-11-094-85/+23
|\ | | | | Simplify sha3.
| * Renamed SHA3.{h,cpp} files.chriseth2018-10-184-3/+4
| |
| * Simplify sha3.chriseth2018-10-182-82/+19
| |
* | Eliminate `byte`-typedef and use `uint8_t` in all their places instead.Christian Parpart2018-11-074-17/+15
| | | | | | | | | | | | | | | | | | | | | | 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 :-)
* | Some well-formedness checks for the Yul AST.chriseth2018-10-222-0/+26
| |
* | Remove mostly unused writeFile implementation.chriseth2018-10-182-47/+0
|/
* Yul: Introduces a block flattening pass + testsChristian Parpart2018-10-161-2/+3
|
* Fix checksum check.chriseth2018-10-121-5/+5
|
* Fix directory creation.chriseth2018-10-121-1/+1
|
* Merge pull request #5132 from ethereum/genericVisitorchriseth2018-10-101-0/+128
|\ | | | | Generic visitor.
| * Generic visitor.chriseth2018-10-091-0/+128
| |
* | Merge pull request #5180 from ethereum/cpp-cleanupchriseth2018-10-101-1/+0
|\ \ | | | | | | Some C++ cleanup
| * | Do not require ctype/stdio if not neededAlex Beregszaszi2018-10-101-1/+0
| |/
* / Expression breaker.chriseth2018-10-091-0/+33
|/
* fix format issue for source filesliangdzou2018-09-201-58/+60
|
* Remove trailing whitespace for all files in the repository.Daniel Kirchner2018-09-042-35/+35
|
* Fixes #4718: High CPU usage when using large variable namesbakaoh2018-08-152-2/+6
|
* Make joinHumanReadable work for input iterators.chriseth2018-08-151-16/+12
|
* Explicitly use std::next to avoid boost version.chriseth2018-08-091-1/+1
|
* Merge pull request #4753 from mattaereal/boost-to-string-patchAlex Beregszaszi2018-08-081-3/+1
|\ | | | | Replace boost:lexical_cast<std::string> for std::to_string.
| * Removing std:: from std::to_string and include for boost/lexical_castMatías Aereal Aeón2018-08-081-3/+1
| |
| * Replace boost:lexical_cast<std::string> for std::to_string.Matías Aereal Aeón2018-08-081-1/+1
| |
* | Move absolutePath/sanitizePath helpers from CompilerStack to libdevcoreAlex Beregszaszi2018-08-062-0/+26
| |
* | Added guards for unknown pragmasAugusto F. Hack2018-08-061-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | added helper function that joins vectors of strings, refactored suggestions ↵Evgeniy Filatov2018-08-032-10/+43
|/ | | | formattingi function to use it
* Guard CycleDetector against recursion exhaustion.Christian Parpart2018-08-011-3/+5
| | | | fixes #3935.
* CMake: Update jsoncpp to v1.8.4Alexander Arlt2018-04-231-2/+2
|
* Add static_assert for the correct jsoncpp versionAlex Beregszaszi2018-04-171-0/+5
|
* CMake: Clean up devcore dependenciesPaweł Bylica2018-04-161-4/+2
|
* Prevent information about file existence outside the allowed paths to leak ↵Daniel Kirchner2018-04-122-0/+25
| | | | by mimicing boost::filesystem::weakly_canonical.
* Generalize cycle detection.chriseth2018-04-031-0/+76
|
* Add interactive test tool isoltest.Daniel Kirchner2018-03-152-0/+52
|
* Add new JSON API for better abstraction and for supporting strict JSON parsingAlexander Arlt2018-02-213-13/+131
|
* Use one-dimensional vector.chriseth2018-02-131-7/+8
|
* Suggestion to improve readability.chriseth2018-02-131-14/+21
|
* Minor changes.chriseth2018-02-131-4/+7
|
* Restructure code for alternative identifier suggestionsBalajiganapathi S2018-02-132-31/+48
|
* Move string distance function to utils and format error messageBalajiganapathi S2018-02-132-0/+112
|
* Generic pretty-printed numbers..chriseth2018-02-101-0/+8
|
* Move-append for vector.chriseth2017-12-111-0/+17
|
* Ensure that non-hex characters are caught in address checksummingAlex Beregszaszi2017-11-172-2/+7
|
* Improves address literal checksum error messagewadeAlexC2017-11-172-11/+18
|
* Add readStandardInput helperAlex Beregszaszi2017-10-182-0/+17
|
* Rename contentsString to readFileAsStringAlex Beregszaszi2017-10-182-4/+4
|
* Refactor Exception::what()Paweł Bylica2017-10-021-5/+7
|
* Always return a valid pointer in Exception::what()Alex Beregszaszi2017-10-021-1/+3
|
* Provide template for whiskers error.chriseth2017-09-221-1/+7
|
* Limit of scope of variables in SHA3Alex Beregszaszi2017-09-201-3/+2
|
* Ensure parameter names match between headers and implementationAlex Beregszaszi2017-09-201-2/+2
|
* Remove escape function.chriseth2017-08-291-28/+0
|
* Move all file specific globals to anonymous namespaceAlex Beregszaszi2017-08-292-0/+9
|
* Cleanup of vector_ref.hchriseth2017-08-261-31/+8
|
* Cleanup of FixedHash.hchriseth2017-08-251-138/+4
|
* Cleanup of Common.hchriseth2017-08-253-55/+16
|
* Merge pull request #2807 from ethereum/removeABIhchriseth2017-08-251-100/+0
|\ | | | | Cleanup: Remove ABI.h
| * Cleanup: Remove ABI.hchriseth2017-08-251-100/+0
| |
* | Cleanup of SHA3.hchriseth2017-08-251-7/+2
|/
* Merge pull request #2538 from ethereum/z3ConditionsAlex Beregszaszi2017-08-241-0/+11
|\ | | | | z3 conditions
| * Format numbers more nicely.chriseth2017-08-231-0/+11
| |
* | CMake: Add back compatibility with CMake 3.0Paweł Bylica2017-08-231-1/+1
|/
* Merge pull request #2757 from ethereum/cmakeAlex Beregszaszi2017-08-231-14/+8
|\ | | | | Static linking
| * CMake: Cleanup "local" include pathPaweł Bylica2017-08-231-1/+1
| |
| * CMake: Fix linking with pthreadPaweł Bylica2017-08-221-1/+1
| |
| * Boost: Use static libsPaweł Bylica2017-08-181-1/+1
| |
| * CMake: Simplify libdevcore configPaweł Bylica2017-08-171-14/+8
| |
* | Switch stream properties back after temporary modificationAlex Beregszaszi2017-08-221-0/+2
| |
* | Mark appropriate constructors explicitAlex Beregszaszi2017-08-222-2/+2
| |
* | Make vector+vector template more readableAlex Beregszaszi2017-08-221-1/+2
| |
* | Remove some unused includesAlex Beregszaszi2017-08-211-1/+0
|/
* Helpers.chriseth2017-08-142-1/+8
|
* Introduce IndentedWriterAlex Beregszaszi2017-08-112-0/+132
|
* Add template for merging setsAlex Beregszaszi2017-07-191-0/+6
|
* Refactor exceptions and provide comment function.chriseth2017-07-133-14/+58
|
* Move UndefMacros from libdevcore to libsolidity/parsingAlex Beregszaszi2017-07-021-46/+0
|
* Rewrite validateUTF8 using if/elseAlex Beregszaszi2017-06-261-39/+38
|
* Rewrite validateUTF8 to use charAlex Beregszaszi2017-06-261-7/+11
|
* Validate first byte properly for UTF8Alex Beregszaszi2017-06-261-5/+13
|
* Implement strict UTF-8 validationAlex Beregszaszi2017-06-261-1/+52
|
* Whiskers template systemchriseth2017-06-222-0/+214
|
* Remove unused errinfo typesAlex Beregszaszi2017-06-222-6/+0
|
* Remove obscure DEV_IGNORE_EXCEPTIONS macroAlex Beregszaszi2017-06-222-4/+14
|
* Use assertThrow where possibleAlex Beregszaszi2017-06-221-4/+3
|
* Remove debugbreak.chriseth2017-06-212-160/+0
|
* Fix UTF-8 validation for high codepoints (>10000)Alex Beregszaszi2017-06-161-1/+1
|
* Comment update SHA3-256 to Keccak-256 (title)ethers2017-05-131-1/+1
|
* Comment update SHA3-256 to Keccak-256ethers2017-05-091-7/+7
| | | Could have been part of https://github.com/ethereum/solidity/commit/aefb6e5fcf9adc7c58da9ec0454707305f7e9ac9
* Add line info to serious exceptions.chriseth2017-02-251-0/+3
|
* Replace cpp-ethereum with solidity in the license headersAlex Beregszaszi2017-02-0217-68/+68
|
* Also check library addresses.chriseth2017-01-252-2/+43
|
* Do not evaluate strings if assertion succeeds.chriseth2017-01-131-20/+12
|
* Fix typos in commentsFederico Bond2016-12-111-2/+2
|
* Fix emscripten build.chriseth2016-12-011-2/+2
|
* Metadata stamp.chriseth2016-12-012-7/+10
|
* Rename dev::validate to dev::validateUTF8Alex Beregszaszi2016-11-292-4/+4
|
* Make position optional in dev::validateAlex Beregszaszi2016-11-291-0/+6
|
* ast: string literals that are not valid UTF are not convertible to stringsYoichi Hirai2016-11-251-1/+1
|
* convert individual numbers to hexVoR02202016-11-221-0/+1
| | | | Signed-off-by: VoR0220 <rj@erisindustries.com>
* add ostream to bytes for ease of developmentVoR02202016-11-181-0/+10
| | | | | | | | Signed-off-by: VoR0220 <rj@erisindustries.com> fix up Signed-off-by: VoR0220 <rj@erisindustries.com>
* Merge pull request #1379 from ethereum/swarmHashCorrectionchriseth2016-11-161-22/+16
|\ | | | | Correct implementation of swarm hash.
| * Correct implementation of swarm hash.chriseth2016-11-151-22/+16
| |
* | Move JSON helpers to libdevcore/jsonAlex Beregszaszi2016-11-161-0/+44
|/
* Move swarmHash to its own file.chriseth2016-11-154-44/+100
|
* Multi-level swarm hash.chriseth2016-11-152-8/+44
|
* Swarm hash.chriseth2016-11-151-0/+8
|
* Windows build fix.chriseth2016-11-091-3/+0
| | | Thanks for the find, @slothbag
* Merge pull request #1252 from ethereum/jsoncpp-from-sourcechriseth2016-11-081-1/+0
|\ | | | | Build jsoncpp from source using jsoncpp.cmake script
| * Drop CryptoPP leftoversPaweł Bylica2016-11-081-1/+0
| | | | | | | | Especially, do not compile CryptoPP for Emscripten.
* | Remove non-solidity exceptionsThanabodee Charoenpiriyakij2016-10-231-26/+0
|/ | | | | | Most exceptions and some errorinfos in 'libdevcore' are not be used. Close #781
* Removed 'vector_ref::cleanse'Thanabodee Charoenpiriyakij2016-10-161-20/+0
| | | | Close #785
* Merge pull request #1231 from ethereum/debugbreakchriseth2016-10-161-4/+7
|\ | | | | Properly define trap_instruction
| * Properly define trap_instructionAlex Beregszaszi2016-10-151-4/+7
| |
* | Merge pull request #1232 from ethereum/devcore-unused-includeschriseth2016-10-164-369/+1
|\ \ | | | | | | Remove unused libdevcore includes
| * | Remove unused picosha2Alex Beregszaszi2016-10-151-360/+0
| | |
| * | Don't include random in CommonDataAlex Beregszaszi2016-10-151-7/+0
| | |
| * | Remove unused SHA2 include in SHA3Alex Beregszaszi2016-10-152-2/+1
| |/
* / Removed 'secure_vector'Thanabodee Charoenpiriyakij2016-10-151-41/+0
|/ | | | Close #780
* sha3: actually support both FIPS SHA3 and KeccakAlex Beregszaszi2016-10-061-1/+22
|
* sha3: remove unused counterAlex Beregszaszi2016-10-062-5/+0
|
* Rename dev::sha3 to dev::keccak256Alex Beregszaszi2016-10-063-12/+12
|
* Explicitly convert the assert condition using bool()Yoichi Hirai2016-09-101-13/+1
| | | | This allows a shared pointer as a condition because bool(std::shared_ptr<T>) is defined.
* Fix a typo and whitespacesYoichi Hirai2016-09-072-2/+2
|
* remove sha256 and rmd160 hashDimitry2016-08-242-478/+0
|
* Remove dev::utf8 namespaceAlex Beregszaszi2016-08-092-10/+0
|
* Use size_t in dev::utf8::validate()Alex Beregszaszi2016-08-092-6/+6
|
* Use consts in dev::utf8::validate()Alex Beregszaszi2016-08-092-7/+7
|
* Include UTF8 helpers in libdevcoreAlex Beregszaszi2016-08-092-0/+126
|
* Merge pull request #834 from chriseth/devcorecleanupchriseth2016-08-087-286/+1
|\ | | | | Some cleanup regarding libdevcore. Also rename to avoid conflicts.
| * Some cleanup regarding libdevcore. Also rename to avoid conflicts.chriseth2016-08-067-287/+2
| |
* | Merge pull request #800 from winsvega/fixbuildchriseth2016-08-081-1/+1
|\ \ | | | | | | fix build on windows
| * | fix build on windowsDmitry K2016-08-031-1/+1
| | |
* | | Do not install headers.chriseth2016-08-051-2/+0
| |/ |/|
* | Add boost workaround for specific version.chriseth2016-08-041-0/+520
|/
* Make the Solidity repository standalone.Bob Summerwill2016-08-0122-0/+2939
This commit is the culmination of several months of work to decouple Solidity from the webthree-umbrella so that it can be developed in parallel with cpp-ethereum (the Ethereum C++ runtime) and so that even for the Solidity unit-tests there is no hard-dependency onto the C++ runtime. The Tests-over-IPC refactoring was a major step in the same process which was already committed. This commit contains the following changes: - A subset of the CMake functionality in webthree-helpers was extracted and tailored for Solidity into ./cmake. Further cleanup is certainly possible. - A subset of the libdevcore functionality in libweb3core was extracted and tailored for Solidity into ./libdevcore. Further cleanup is certainly possible - The gas price constants in EVMSchedule were orphaned into libevmasm. - Some other refactorings and cleanups were made to sever unnecessary EVM dependencies in the Solidity unit-tests. - TravisCI and Appveyor support was added, covering builds and running of the unit-tests (Linux and macOS only for now) - A bug-fix was made to get the Tests-over-IPC running on macOS. - There are still reliability issues in the unit-tests, which need immediate attention. The Travis build has been flipped to run the unit-tests 5 times, to try to flush these out. - The Emscripten automation which was previously in webthree-umbrella was merged into the TravisCI automation here. - The development ZIP deployment step has been commented out, but we will want to read that ONLY for release branch. Further iteration on these changes will definitely be needed, but I feel these have got to sufficient maturity than holding them back further isn't winning us anything. It is go time :-)