Commit Graph
100 Commits
Author SHA1 Message Date
Alex Beregszaszi e8be0e61b3 Catch FatalError in CompilerStack::analysis to cover all the analysis tests 2018-04-06 13:52:19 +02:00
Alex Beregszaszi d5f40c141b Limit the number of errors output in a single run to 256 2018-04-06 13:52:19 +02:00
Alex Beregszaszi e0f8657074 Merge pull request #3826 from ethereum/document_afl
Document use of AFL.
2018-04-05 14:47:21 +02:00
Alex Beregszaszi ac6a30442f Support constantinople in soltest 2018-04-05 12:11:24 +02:00
Alex Beregszaszi 36d6c27e68 Merge pull request #3745 from ethereum/fixRecursion
Fix invalid recursion errors for structs
2018-04-05 12:04:54 +02:00
Alex Beregszaszi 7f232358bb Show JSON error if jsonParseStrict failed in soltest 2018-04-05 11:59:31 +02:00
Alex Beregszaszi 8dc9113e37 Add end-to-end test for SwapComparison and CommutativeSwap peephole optimisers 2018-04-05 10:54:39 +02:00
Alex Beregszaszi c6adad9368 Merge pull request #3690 from ethereum/incrementArraySize
More specific push implementation.
2018-04-05 10:50:25 +02:00
Alex Beregszaszi 02ea0e547f Replace comparison operators with opposites if preceded by SWAP1 2018-04-04 17:47:58 +02:00
Alex Beregszaszi c5c5b23ff4 Merge pull request #3817 from ethereum/eth_docker
Add scripts to build the eth binary via docker.
2018-04-04 12:39:54 +02:00
Alex Beregszaszi c63efebd45 Merge pull request #3814 from FrolovR/patch-2
hash256 -> bytes32 fix in misleading note
2018-04-04 08:16:38 +02:00
Alex Beregszaszi 920de496ab Merge pull request #3798 from ethereum/commutative-swap
Remove useless SWAP1 in front of commutative operations
2018-04-04 08:15:24 +02:00
Alex Beregszaszi 0695ffe51d Merge pull request #3635 from ethereum/constructor-modifier
Constructors are defined using the ``constructor`` keyword.
2018-04-04 00:15:18 +02:00
Alex Beregszaszi be6051bead Test multiple instructions with the (non)commutative peephole optimiser 2018-04-03 18:57:28 +02:00
Alex Beregszaszi 17bcabb6cf Remove useless SWAP1 in front of commutative operations 2018-04-03 18:57:07 +02:00
Alex Beregszaszi 104a9736b3 Merge pull request #3809 from ethereum/build_on_tags
Build on tag in Circle.
2018-04-03 17:44:38 +01:00
Alex Beregszaszi 0edce4b570 Merge pull request #3693 from ethereum/optimizeMLOAD
Optimize across MLOAD if MSIZE is not used.
2018-04-03 15:58:11 +01:00
Alex Beregszaszi 7753249f64 Merge pull request #3699 from ethereum/interfaceExternalVisibility
Defaults to external visibility for interfaces.
2018-04-03 15:15:36 +01:00
Alex Beregszaszi 19f2887741 Merge pull request #3757 from ethereum/fixEmptyBaseArguments
Fix: Treat empty base constructor argument list as not provided.
2018-04-03 15:10:19 +01:00
Alex Beregszaszi 29df18d4d7 Remove brew linkapps from the installation instructions 2018-03-31 01:11:56 +01:00
Alex Beregszaszi be261ed519 Merge pull request #3802 from ethereum/empty-structs
Update tests for empty structs
2018-03-31 00:55:47 +01:00
Alex Beregszaszi 076c0754ea Update tests for empty structs 2018-03-31 00:27:01 +01:00
Alex Beregszaszi acd6ec0d03 Merge pull request #3800 from wbt/patch-2
Fix small formatting issue
2018-03-30 21:10:02 +01:00
Alex Beregszaszi 58c57e446b Merge pull request #3753 from ethereum/whoSupportsPackedEncoding
Prevent encoding of weird types and support packed encoding of extenal function types.
2018-03-29 11:24:51 +01:00
Alex Beregszaszi c2ae33f806 Merge pull request #3754 from AnthonyBroadCrawford/error-on-missing-file
Error on non existing or irregular files
2018-03-29 01:53:56 +01:00
Alex Beregszaszi ebb12756ad Still allow empty structs for non-0.5.0 mode 2018-03-27 15:49:41 +01:00
Alex Beregszaszi b540ba527a Disallow empty structs 2018-03-27 15:49:41 +01:00
Alex Beregszaszi 8c1352ca75 Merge pull request #3772 from ethereum/docsTestingGuide
Add syntax testing guide to docs
2018-03-27 14:28:16 +01:00
Alex Beregszaszi 32f08989db Merge pull request #3646 from ethereum/blockhash-global
Move blockhash from block.blockhash to global level.
2018-03-27 11:40:06 +01:00
Alex Beregszaszi fab527c414 Add runtimeOnly option to pushCombinedFunctionEntryLabel 2018-03-27 04:00:12 +01:00
Alex Beregszaszi 8bae2dba7c Introduce inContractKind helper on FunctionDefinition 2018-03-26 11:37:38 +01:00
Alex Beregszaszi ef3595b000 Allow overriding external functions in interfaces with public in an implementing contract 2018-03-26 11:35:17 +01:00
Alex Beregszaszi 8fd53c1c03 Merge pull request #3744 from ethereum/useUsrBinEditor
Use /usr/bin/editor if exists.
2018-03-21 15:28:21 +00:00
Alex Beregszaszi acb8ea6c94 Merge pull request #3614 from ethereum/notestsOnTravis
Disable tests for travis on non-release and non-tag branches.
2018-03-15 11:37:47 +01:00
Alex Beregszaszi 59658afa30 Merge pull request #3722 from ethereum/fixMods
Fix modifier lookup in libraries.
2018-03-14 17:20:51 +01:00
Alex Beregszaszi a59d6d2e53 Support constantinople in evm-version 2018-03-12 18:13:19 +01:00
Alex Beregszaszi 15a0b97f61 Merge pull request #3706 from ethereum/releaseStepDocs
New release step.
2018-03-12 15:31:28 +01:00
Alex Beregszaszi c6e9dd13bc Merge pull request #3697 from ethereum/fixAvoidStorageClearLoop
Properly skip cleanup if only enlarging storage array.
2018-03-12 14:08:24 +01:00
Alex Beregszaszi bd7bc7c473 Merge pull request #3661 from ethereum/chriseth-patch-1
Update Changelog.md
2018-03-07 14:01:36 +01:00
Alex Beregszaszi ba8819542f Merge pull request #3611 from ethereum/warn-using-address-overload
Warn if using address overloads on contracts
2018-03-06 19:13:55 +01:00
Alex Beregszaszi 250a6bad8c Merge pull request #3527 from ethereum/warnLooseAsm
Warn about using loose assembly.
2018-03-06 18:59:23 +01:00
Alex Beregszaszi 14b12ae745 Merge pull request #2966 from ethereum/useStaticCall
Use STATICCALL for pure function calls.
2018-03-06 17:07:03 +01:00
Alex Beregszaszi 83dacbf669 Merge pull request #3549 from ethereum/fixmultidim
Properly detect which array and struct types are unsupported by the old ABI encoder.
2018-03-06 15:51:17 +01:00
Alex Beregszaszi 0df4c64884 Merge pull request #3658 from ethereum/newcppEthimage
Use new eth binary for trusty.
2018-03-06 15:26:06 +01:00
Alex Beregszaszi a9e02accb9 Merge pull request #3655 from lastperson/patch-3
Revert warning update about `view` modifier
2018-03-06 09:05:56 +01:00
Alex Beregszaszi fd60c1cf86 Warn if using address overloads on contracts 2018-03-05 15:50:27 +01:00
Alex Beregszaszi 5a54cd5c70 Only warn for shift instructions if not using constantinople 2018-03-01 17:19:35 +01:00
Alex Beregszaszi 7171ac0124 Simplify error handling in tests.sh 2018-03-01 17:19:35 +01:00
Alex Beregszaszi 2c82f748bb Merge pull request #3624 from ethereum/jsonio-libraries-hex
Ensure that library addresses supplied are of correct length and hex prefixed
2018-03-01 12:37:14 +01:00
Alex Beregszaszi b6dfd9ef54 Ensure that library addresses supplied are of correct length and hex prefixed in JSONIO 2018-03-01 12:03:56 +01:00
Alex Beregszaszi 7897301b71 Properly validate invalid hex characters in JSONIO libraries 2018-02-28 10:44:48 +01:00
Alex Beregszaszi 83fec0232d Add more comprehensive tests and checks for libraries in JSONIO 2018-02-28 10:36:07 +01:00
Alex Beregszaszi 0346f72342 Use compileContract in contract tests 2018-02-27 20:08:24 +01:00
Alex Beregszaszi 029e19983c Split compileContract off compileAndRunWithoutCheck in SolidityExecutionFramework 2018-02-27 20:08:24 +01:00
Alex Beregszaszi a566825589 Issue error if no visibility is specified (on 0.5.0) 2018-02-27 16:31:53 +01:00
Alex Beregszaszi 2abc5be7e6 Merge pull request #2541 from ethereum/asm-bitshift
Add bit shifting opcodes (EIP145)
2018-02-27 14:47:07 +01:00
Alex Beregszaszi 6512bfbcea Merge pull request #3601 from ethereum/circleParallel
Parallelize tests on circle.
2018-02-27 13:54:45 +01:00
Alex Beregszaszi 73c5d99bfa Add basic test for shift opcodes 2018-02-27 13:43:04 +01:00
Alex Beregszaszi 317e017849 Shift operands were swapped in accepted EIP145 2018-02-27 13:43:02 +01:00
Alex Beregszaszi afa4a48e37 Remove ROL/ROR as they are not part of EIP145 anymore 2018-02-27 13:42:41 +01:00
Alex Beregszaszi 468d0f6199 Warn on using shift instructions 2018-02-27 13:42:31 +01:00
Alex Beregszaszi 9e0446a22c Document bitwise shift operators in assembly 2018-02-27 13:42:28 +01:00
Alex Beregszaszi 59e6ea601b Add bitwise shift operators to libevmasm (EIP145) 2018-02-27 12:03:18 +01:00
Alex Beregszaszi aeb75172d5 Fix builtin function formatting in julia 2018-02-27 11:16:12 +01:00
Alex Beregszaszi 8cebfb168b Introduce VM version ('hard fork') column for assembly opcodes 2018-02-27 11:16:12 +01:00
Alex Beregszaszi e424bd1007 Fix some keyword highlighting in docs 2018-02-27 11:12:10 +01:00
Alex Beregszaszi 5c0d82059f Turn throw into a syntax error for 0.5.0 2018-02-27 02:10:24 +01:00
Alex Beregszaszi 3594f02d51 Fix link to solcjs in the installation section 2018-02-27 00:38:52 +01:00
Alex Beregszaszi 241134a881 Mention that solcjs is not compatible with solc in the using-the-compiler section 2018-02-27 00:36:01 +01:00
Alex Beregszaszi eb3b92f831 Merge pull request #3602 from ethereum/docs-updates
Random documentation updates (assembly, faq)
2018-02-26 23:16:45 +01:00
Alex Beregszaszi b62d43912b Merge pull request #3589 from ethereum/identifiers
Clean up type identifiers
2018-02-26 20:27:26 +01:00
Alex Beregszaszi 64eaff6420 Random documentation updates (assembly, faq) 2018-02-26 20:19:26 +01:00
Alex Beregszaszi 0736d91eaa Add test for escapeIdentifier 2018-02-26 19:09:44 +01:00
Alex Beregszaszi b471983e3c Use new escaping helpers for type identifiers 2018-02-26 19:09:43 +01:00
Alex Beregszaszi 2e7067fbe4 Rename Types::identifier to Types::richIdentifier 2018-02-26 19:09:43 +01:00
Alex Beregszaszi 751705978e Add helpers escapeIdentifier to Types 2018-02-26 19:09:39 +01:00
Alex Beregszaszi 6b3a5e5d87 Merge pull request #3585 from aaroncolaco/develop
Fix example; closes #3582
2018-02-26 10:21:08 +01:00
Alex Beregszaszi 4d1b969543 Use readStandardInput in the fuzzer 2018-02-23 09:05:04 +01:00
Alex Beregszaszi 260eb7ab10 Merge pull request #3573 from ethereum/retryTests
Try external tests twice.
2018-02-22 20:48:11 +01:00
Alex Beregszaszi 68a8e67cc3 Mark functions const 2018-02-22 01:25:16 +01:00
Alex Beregszaszi 42856e0f53 Add assertion for boolean literals in Julia-mode 2018-02-22 01:02:23 +01:00
Alex Beregszaszi ae02bb5aad Raise error on oversized number literals in assembly 2018-02-22 01:02:19 +01:00
Alex Beregszaszi c43953f9fe CMake: abort if linking results in undefined symbols with emscripten 2018-02-20 23:28:43 +01:00
Alex Beregszaszi 70790d4729 Merge pull request #3532 from aarlt/libdevcore_new_json_api
Add new JSON API for better abstraction and for supporting strict JSON parsing
2018-02-20 22:33:14 +01:00
Alex Beregszaszi f5f00b4ee9 Merge pull request #3535 from ethereum/fixShadowing
Fix shadowing detection for aliases
2018-02-20 16:42:02 +01:00
Alex Beregszaszi a6b52fdc34 Merge pull request #3550 from ethereum/offsetconstantsasm
Properly warn when using ``_offset`` and ``_slot`` for constants in inline assembly.
2018-02-20 11:17:58 +01:00
Alex Beregszaszi 5746e2d7d8 Merge pull request #3521 from ethereum/uninitializedStoragePointers
Disallow uninitialized storage pointers as experimental 0.5.0 feature.
2018-02-15 12:05:21 +00:00
Alex Beregszaszi 2de50cb970 Merge pull request #3508 from abbbe/docs-fix-typo-20180214
fix a typo
2018-02-14 11:54:38 +00:00
Alex Beregszaszi fc7d3f1357 Merge pull request #3501 from ethereum/prepareRelease
Prepare 0.4.20 release.
2018-02-13 20:45:10 +00:00
Alex Beregszaszi 8f8ad3840e Merge pull request #3349 from federicobond/number-improv
Avoid output messages size blow-up using huge bignums literals
2018-02-13 12:36:05 +00:00
Alex Beregszaszi 52e55b75a2 Turn off lllc installation by default 2018-02-13 10:21:16 +00:00
Alex Beregszaszi f8810ef9e8 Merge pull request #3497 from ethereum/modandchangelog
Mention mod-and-replacement in changelog.
2018-02-13 10:18:59 +00:00
Alex Beregszaszi 27ef979458 Merge pull request #3374 from ethereum/optim-mod-pow2
Replace MOD with AND if constant is power of 2
2018-02-13 00:39:49 +00:00
Alex Beregszaszi c7ce6db32a Merge pull request #3477 from ethereum/emscripten-exceptions
Disable greedy exception catcher in Emscripten build
2018-02-13 00:13:09 +00:00
Alex Beregszaszi 4876842f69 Replace fixed-version pragmas in Gnosis 2018-02-12 23:26:07 +00:00
Alex Beregszaszi 037b97ef4a Replace MOD with AND if constant is power of 2 2018-02-12 22:47:04 +00:00
Alex Beregszaszi b4f99312e6 Disable greedy exception catcher in Emscripten build 2018-02-12 22:44:51 +00:00
Alex Beregszaszi 954903b505 Merge pull request #3489 from ethereum/fixZepplein
Fix some weird zeppelin tests.
2018-02-12 22:44:13 +00:00
Alex Beregszaszi 573aa01fd2 Adjust tests for multiple errors with the var keyword 2018-02-12 22:39:42 +00:00
Alex Beregszaszi 3ddbf1617f Do not use var where not neccessary in tests 2018-02-12 22:37:35 +00:00