chriseth
|
c6f7f5b2b0
|
Enable EWasm output.
|
2019-06-25 19:07:38 +02:00 |
|
chriseth
|
56db792ad9
|
Merge pull request #6876 from rocky/recoveringParser1-StandardCompiler
Add parser errorRecovery (including StandardCompiler)
|
2019-06-18 22:40:35 +02:00 |
|
rocky
|
1a7e09ab7a
|
Add errorRecovery boolean to StandardCompiler
|
2019-06-18 15:54:05 -04:00 |
|
chriseth
|
05a67c486e
|
Use "what" in exception reports.
|
2019-06-18 17:34:10 +02:00 |
|
rocky
|
ca3afea1d7
|
Add Steve Johnson-style parser recovery rules:
SourceUnit = Error $
Block = '{' Error '}'
ContractDefinition = '{' Error '}'
Statement = Error ';'
Co-Authored-By: chriseth <chris@ethereum.org>
|
2019-06-17 14:47:07 +02:00 |
|
chriseth
|
4ee703e6e5
|
Revert "Add Steve Johnson-style parser recovery rules:"
This reverts commit 97f8ee0d1b .
|
2019-05-28 18:09:24 +02:00 |
|
chriseth
|
f9dca1f282
|
Merge pull request #6681 from rocky/recoveringParser1
Add Steve Johnson-style parser recovery rules:
|
2019-05-28 15:36:45 +02:00 |
|
rocky
|
97f8ee0d1b
|
Add Steve Johnson-style parser recovery rules:
SourceUnit = Error $
Block = '{' Error '}'
ContractDefinition = '{' Error '}'
Statement = Error ';'
Co-Authored-By: chriseth <chris@ethereum.org>
|
2019-05-28 15:06:34 +02:00 |
|
chriseth
|
a3f721bbcc
|
Merge pull request #6583 from ethereum/reset_yulstringrepo
Reset YulStringRepository regularly
|
2019-05-28 14:20:53 +02:00 |
|
Bhargava Shastry
|
dbae0fa939
|
Reset Yul string repository before each compilation.
|
2019-05-28 13:12:39 +02:00 |
|
chriseth
|
df96648b1c
|
Do not allow msize in inline assembly if the Yul optimizer is active.
|
2019-05-28 12:54:33 +02:00 |
|
chriseth
|
9a00729ce7
|
Provide dialect to Parser and InlineAssembly AST nodes.
|
2019-05-23 00:24:58 +02:00 |
|
chriseth
|
ce19e2e4bc
|
Merge pull request #6599 from ethereum/ipfsHash
Add IPFS hash of source files to metadata.
|
2019-05-15 14:21:58 +02:00 |
|
chriseth
|
b01a8c544c
|
Use IPFS url in metadata for source links.
|
2019-05-15 12:40:03 +02:00 |
|
Daniel Kirchner
|
a10501bb7d
|
Merge pull request #6725 from AndreyBronin/develop
GCC 9.1 build fix. error: redundant move in return statement
|
2019-05-15 11:37:20 +02:00 |
|
Andrey Bronin
|
4eb37fe631
|
fix warning in GCC 9.1: redundant move in return statement
|
2019-05-14 17:44:28 +03:00 |
|
chriseth
|
d753fcdb36
|
Tools to compute UnixFS IPFS hash.
|
2019-05-14 11:52:11 +02:00 |
|
Erik Kundt
|
2b021eaa30
|
Allows wildcard as output selector in standard JSON.
|
2019-05-10 18:58:51 +02:00 |
|
Daniel Kirchner
|
a6a28ac475
|
Allow overwriting the release flag for tests and adjust test suite to CBOR metadata.
|
2019-05-08 22:21:50 +02:00 |
|
Alex Beregszaszi
|
e121c8f3c7
|
Store compiler version in CBOR metadata
|
2019-05-08 22:21:50 +02:00 |
|
Mathias Baumann
|
cf35e5ba02
|
Issue warning for variables called super or this
|
2019-05-02 11:30:24 +02:00 |
|
chriseth
|
eef3f95724
|
Move metadata settings into its own object.
|
2019-04-29 14:19:27 +02:00 |
|
chriseth
|
0bfd587363
|
Merge pull request #6527 from rocky/move-SemVerHandler
Move SemVerHandler to analysis to parsing to increase modularity...
|
2019-04-18 13:00:45 +02:00 |
|
rocky
|
b424446c5f
|
Move SemVerHandler to analysis to parsing to increase modularity...
If ever you want to separate building analysis from scanning/parsing/ast, this will help.
|
2019-04-17 10:13:42 -04:00 |
|
chriseth
|
922ab0d72d
|
Merge pull request #6534 from ethereum/reuseLiteralContent-6472
Re-produce the original 'useLiteralContent' setting
|
2019-04-17 15:41:55 +02:00 |
|
Mathias Baumann
|
b24dd42e47
|
Re-produce the original 'useLiteralContent' setting
|
2019-04-17 14:54:51 +02:00 |
|
Grant Wuerker
|
69b4ce36de
|
Some move semantics improvements.
|
2019-04-17 14:19:48 +02:00 |
|
Christian Parpart
|
bf43eebea9
|
libsolidity: Introducing TypeProvider API, for clear type system ownership.
|
2019-04-16 18:26:45 +02:00 |
|
chriseth
|
420a7dc3d6
|
Initial IR generator.
|
2019-04-04 15:02:42 +02:00 |
|
chriseth
|
3264e9abf0
|
Make optimiser settings available to assembly stack.
|
2019-03-28 18:24:13 +01:00 |
|
chriseth
|
2308904f68
|
Remove "using namespace" from header and move Instruction to dev::eth.
|
2019-03-28 13:48:11 +01:00 |
|
Alex Beregszaszi
|
d6dda7279c
|
Change CompilerStack.reset to have keepSettings flag instead of keepSources
|
2019-03-26 14:46:13 +00:00 |
|
Alex Beregszaszi
|
cca73f9354
|
Remove deprecated CompilerStack.addSources
|
2019-03-26 14:46:02 +00:00 |
|
chriseth
|
72c0e44907
|
Merge pull request #6338 from ethereum/compilerstack-setsource
Introduce setSources in CompilerStack
|
2019-03-26 15:31:57 +01:00 |
|
Alex Beregszaszi
|
e211b5b1e1
|
Add warning that Yul is still experimental
|
2019-03-25 20:17:11 +00:00 |
|
Alex Beregszaszi
|
0432401e20
|
Emit warning when using the Yul optimiser
|
2019-03-25 18:38:06 +01:00 |
|
Alex Beregszaszi
|
0d6d0f476c
|
Use setSources
|
2019-03-25 15:11:00 +00:00 |
|
Alex Beregszaszi
|
66a977d999
|
Introduce setSources in CompilerStack
|
2019-03-25 15:11:00 +00:00 |
|
Alex Beregszaszi
|
642d4b9217
|
Abort if parseAndAnalyze failed but no errors are reported in compileYul
|
2019-03-25 13:19:33 +00:00 |
|
Alex Beregszaszi
|
3bc2c35cc4
|
Support compiling Yul within StandardCompiler
|
2019-03-22 01:35:16 +00:00 |
|
chriseth
|
d381e26fc8
|
Rename "enabled" optimizer setting stage to "standard".
|
2019-03-21 11:04:40 +01:00 |
|
Mathias Baumann
|
0fbea8a1a0
|
Change return type for interfaceType() to ResultType
|
2019-03-21 07:25:28 +01:00 |
|
Alex Beregszaszi
|
ea1944bb2d
|
Removed unused isLibrary from flag addSource in CompilerStack
|
2019-03-20 17:41:51 +00:00 |
|
Alex Beregszaszi
|
7babe3dbba
|
Introduce simplfied CBOR encoding for Metadata
|
2019-03-19 16:06:19 +00:00 |
|
chriseth
|
6d1ed93247
|
Use stack optimizations.
|
2019-03-14 15:34:23 +01:00 |
|
Mathias Baumann
|
fbbd03dbd7
|
Exclude internal functions in library ABIs
|
2019-03-11 16:33:44 +01:00 |
|
chriseth
|
8b20ecb558
|
Refactor StandardCompiler to split into input parsing/validating and compilation steps.
|
2019-03-07 17:49:55 +01:00 |
|
Alex Beregszaszi
|
fcbb8ec51c
|
Allow returning metadata in StandardCompiler without compilation
|
2019-03-04 16:19:55 +01:00 |
|
Alex Beregszaszi
|
26ca144647
|
Cache metadata and allow after analysis in CompilerStack
|
2019-03-04 16:19:54 +01:00 |
|
chriseth
|
4d10f4b4cf
|
Process and validate standard-json optimizer settings.
|
2019-03-04 11:40:28 +01:00 |
|
Alex Beregszaszi
|
cf5c13f9c7
|
Introduce global optimiser settings.
|
2019-03-04 11:40:28 +01:00 |
|
Alex Beregszaszi
|
679ff78714
|
Restrict parse/analyse in CompilerStack
|
2019-02-28 13:59:33 +00:00 |
|
Alex Beregszaszi
|
b04b86a938
|
Restrict the state when settings can be altered in CompilerStack
|
2019-02-28 12:55:36 +00:00 |
|
Leonardo Alt
|
2405b2151a
|
EVMVersion in langutil namespace instead of solidity
|
2019-02-25 15:29:57 +01:00 |
|
Daniel Kirchner
|
8ca6715e18
|
More style checks.
|
2019-02-14 11:41:20 +01:00 |
|
chriseth
|
1a823f0bf8
|
Fix tabs/spaces.
|
2019-02-13 17:05:48 +01:00 |
|
chriseth
|
d073eb1544
|
Move AssemblyStack to libyul.
|
2019-02-13 12:23:07 +01:00 |
|
chriseth
|
02373c2225
|
Adjust uses of AsmCodeGen.
|
2019-02-13 11:35:49 +01:00 |
|
Bhargava Shastry
|
7751fa740f
|
Ensure we fail gracefully when user tries to optimize Yul code
|
2019-02-12 11:21:02 +01:00 |
|
chriseth
|
b34e104173
|
Make dialect a shared pointer.
|
2019-02-11 15:48:29 +01:00 |
|
Alex Beregszaszi
|
ee09d54525
|
Change FIXMEs into TODOs where appropriate
|
2019-01-29 00:35:23 +00:00 |
|
Alex Beregszaszi
|
9aafa32825
|
Disallow empty import statements
|
2019-01-28 13:52:15 +00:00 |
|
Mudit Gupta
|
2f91781a80
|
useLiteralContent data validation
Squashed commit of the following:
commit bbceee6997c1b951eb6054f7d5b7560fe1773690
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 23:27:49 2019 +0530
Removed extra check
commit 4f7c3cc58e94836b1dddcc5f2938da14adad6252
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 17:51:05 2019 +0530
Updated test error message
commit 5da45f2a23840e7bb1978853e1c184faec65b3e0
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 17:46:09 2019 +0530
Renamed test
commit e661418deac25f31c49091be3c80244f566fc14c
Author: Leonardo <leo@ethereum.org>
Date: Tue Jan 22 17:41:56 2019 +0530
Update libsolidity/interface/StandardCompiler.cpp
Co-Authored-By: maxsam4 <guptamudit@ymail.com>
commit d289b4dc1956ab736aada613e810cf2e2d124d4d
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 17:29:40 2019 +0530
changed style
commit 5a7cf08db3027d75081d2e698dd51b807bef5abb
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 17:20:37 2019 +0530
Added test case for missing useLiteralContent
commit 6e866c46aa92d6a89f2b341bd717c3886946f3ff
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 17:09:30 2019 +0530
input check for useLiteralContent
|
2019-01-23 10:22:27 +05:30 |
|
chriseth
|
a9fa2658d8
|
Add helper to show if contract can be deployed.
|
2019-01-17 20:36:48 +01:00 |
|
chriseth
|
e6fee257e6
|
Code generation for access to contract code.
|
2019-01-17 20:36:48 +01:00 |
|
chriseth
|
9222eff08f
|
Make the dialect available everywhere.
|
2019-01-07 16:41:03 +01:00 |
|
chriseth
|
4c7151e57f
|
Do not include empty JSON objects in output.
|
2018-12-19 14:59:29 +01:00 |
|
chriseth
|
beae2a608b
|
Only fully compile if binaries requested.
|
2018-12-19 12:58:17 +01:00 |
|
chriseth
|
4e89945d82
|
Some more compiler state tests.
|
2018-12-19 12:58:17 +01:00 |
|
chriseth
|
20189c3f3b
|
Merge pull request #5637 from ethereum/better-json-error-reporting
Json: Provide better error message when 'settings' is not an object
|
2018-12-18 19:39:46 +01:00 |
|
Mathias Baumann
|
c43d96f2bf
|
Json: Provide better error messages for wrong types
|
2018-12-18 18:36:50 +01:00 |
|
chriseth
|
bd52beedff
|
Cache hash computations.
|
2018-12-18 16:38:25 +01:00 |
|
Leonardo Alt
|
340ee4156d
|
Sort includes in libsolidity/interface
|
2018-12-17 19:24:42 +01:00 |
|
Leonardo Alt
|
8cd2ac8462
|
Disallow unknown JSON keys in standard-json
|
2018-12-12 17:32:42 +01:00 |
|
chriseth
|
fb3a0ac1c7
|
Codegen for object access.
|
2018-12-11 19:24:44 +01:00 |
|
chriseth
|
8d49e53995
|
Provide Dialect to EVMCodeTransform.
|
2018-12-11 19:24:31 +01:00 |
|
liangdzou
|
362648a450
|
Reuse stack slots in Yul to EVM code generation.
|
2018-12-10 14:28:56 +01:00 |
|
chriseth
|
4b2a64306a
|
Merge pull request #5587 from ethereum/yulCodeBuiltins
Builtin functions to access Yul objects.
|
2018-12-06 16:49:52 +01:00 |
|
chriseth
|
3fc118ba21
|
Analyze and compile sub-objects.
|
2018-12-06 14:32:04 +01:00 |
|
chriseth
|
0e8841005c
|
Merge pull request #5554 from ethereum/cp-SourceReferenceFormatter-refactor
[2/3] Refactor SourceReferenceFormatter (split-out data extraction & make use of new SourceLocation knowledge)
|
2018-12-06 14:01:39 +01:00 |
|
Christian Parpart
|
073b03d90c
|
liblangutil: refactor SourceReferenceFormatter, splitting out retrieval and making use of new SourceLocation's CharStream knowledge
|
2018-12-06 14:01:01 +01:00 |
|
chriseth
|
3a378eae1a
|
Restrict toHex to bytes .
|
2018-12-05 22:37:05 +01:00 |
|
chriseth
|
c8e201e520
|
Provide Yul Object builtins.
|
2018-12-04 15:40:50 +01:00 |
|
chriseth
|
7ee1ddc172
|
Switch namespaces.
|
2018-12-04 15:36:03 +01:00 |
|
chriseth
|
3ebb78a886
|
Adjust include paths.
|
2018-12-04 15:20:29 +01:00 |
|
chriseth
|
99db4e3ff4
|
Introduce the concept of builtin functions.
|
2018-12-04 12:06:33 +01:00 |
|
chriseth
|
4b98946e5a
|
Merge pull request #5341 from ethereum/optimizeAssemblyCommandline
Apply the optimize commandline parameter to assembly mode.
|
2018-12-03 11:52:48 +01:00 |
|
chriseth
|
aaeb74f592
|
Merge pull request #5537 from ethereum/cp-SourceLocation-related-refactoring
[1/3] SourceLocation related refactoring.
|
2018-11-30 23:45:31 +01:00 |
|
chriseth
|
6c44c5f0c9
|
Apply the optimize commandline parameter to assembly mode.
|
2018-11-30 23:39:05 +01:00 |
|
Christian Parpart
|
435f7b3b72
|
liblangutil: Scanner: remove superfluous sourceName field (it's in CharStream already)
Also, ParserBase::sourceName() was dead code. Eliminating it should
increase test coverage (how sneaky) :-)
|
2018-11-30 17:07:17 +01:00 |
|
Christian Parpart
|
c48a5264be
|
liblangutil: SourceLocation: adds (shared) pointer to underlying CharStream source, eliminating sourceName
Also, adapted affecting code to those changes.
|
2018-11-30 17:07:12 +01:00 |
|
chriseth
|
0bd9db480f
|
Add skeleton for contract level checker.
|
2018-11-30 16:30:19 +01:00 |
|
Christian Parpart
|
22eff22492
|
liblangutil: extends CharStream to know about the respective (file-)name (and adapt codebase to it)
|
2018-11-29 12:45:27 +01:00 |
|
chriseth
|
728119bb11
|
Use yul parser in assembly stack.
|
2018-11-27 15:59:57 +01:00 |
|
chriseth
|
e016cb99e6
|
Yul objects.
|
2018-11-27 15:59:57 +01:00 |
|
Christian Parpart
|
aeb66905de
|
Moving SourceReferenceFormatter into langutil namespace.
|
2018-11-24 12:33:36 +01:00 |
|
chriseth
|
9a94e503da
|
Merge pull request #5491 from ethereum/libyul-as-library
Libyul as static library (version 3 ;( )
|
2018-11-23 17:01:18 +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 |
|