Alex Beregszaszi
|
bcaefb57b8
|
Add evmAssembly and evmRuntimeAssembly pointer in CompilerStack
This is a preparation for allowing those outputs to be served from the IR too
|
2020-12-11 14:53:29 +00:00 |
|
Alex Beregszaszi
|
98d8174d31
|
Simplify Compiler/CompilerContext by removing extra layers of indirection
|
2020-12-11 14:43:51 +00:00 |
|
Alex Beregszaszi
|
47b10fd751
|
Report warning if contract uses abicoder v1, but IR is requested
|
2020-12-09 01:20:58 +00:00 |
|
Alex Beregszaszi
|
7e88ba8da0
|
Enable the -Wconversion warning
|
2020-12-08 16:45:24 +00:00 |
|
Alex Beregszaszi
|
a22077f736
|
Rename AsmData -> AST
Also attempt to only include ASTForward where appropriate.
|
2020-11-25 17:58:02 +00:00 |
|
Alex Beregszaszi
|
301d7ea39e
|
Add viaIR option to CompilerStack
It also sets the experimental flag in the metadata to true.
|
2020-11-12 22:34:31 +00:00 |
|
Alex Beregszaszi
|
fcedaba7f7
|
[ewasm] Allow compiling abstract/interface contracts
|
2020-11-12 15:26:11 +00:00 |
|
Leonardo Alt
|
d03ddeb0fa
|
[SMTChecker] User timeout option
|
2020-11-03 10:46:11 +00:00 |
|
Mathias Baumann
|
a4dc110b38
|
Fix dependency tracking for abstract contracts for Yul codegen
|
2020-10-20 16:58:24 +02:00 |
|
Mathias Baumann
|
e991465336
|
Fix dependency tracking for abstract contracts
|
2020-10-20 16:58:24 +02:00 |
|
Leonardo Alt
|
4e49135318
|
Add CLI option to choose model checker engine
|
2020-10-16 15:01:47 +01:00 |
|
a3d4
|
f29ebc0847
|
Fix shadowing/same-name warnings for later declarations
|
2020-10-08 20:22:04 +02:00 |
|
chriseth
|
21dee1c8ba
|
Check for circular constants across contracts.
|
2020-10-08 18:56:17 +02:00 |
|
Mathias Baumann
|
6af16469e7
|
Remove unneeded assert
An error will trigger later in the name resolve phase
|
2020-10-05 13:01:11 +02:00 |
|
chriseth
|
fda8bde2d7
|
Stop after parsing.
|
2020-09-30 16:57:49 +02:00 |
|
Bhargava Shastry
|
e2a2276272
|
Contract level checker: Disallow free function redefinition and alias
shadowing another free function
Co-authored-by: chriseth <chris@ethereum.org>
|
2020-09-25 17:09:58 +02:00 |
|
Mathias Baumann
|
dd81d05559
|
Make annotations `SetOnce or optional ` where feasible
|
2020-09-22 17:38:21 +02:00 |
|
chriseth
|
930646ba2b
|
Report locations of unimplemented features.
|
2020-09-15 14:41:46 +02:00 |
|
chriseth
|
e7e9b03bd8
|
Store generated sources in standard-json output.
|
2020-09-15 11:22:16 +02:00 |
|
chriseth
|
2934a1f037
|
Assign scopes as a separate step.
|
2020-09-02 20:45:33 +02:00 |
|
Daniel Kirchner
|
143b37af56
|
Only conditionally run old code generation in CompilerStack, StandardCompiler and semantic tests.
|
2020-08-06 15:05:17 +02:00 |
|
chriseth
|
b8b78a6982
|
Use cbor metadata in gas cost tests.
|
2020-07-28 23:42:22 +02:00 |
|
a3d4
|
5b54cfbed3
|
Report an error if immutables not assigned
|
2020-07-23 16:38:54 +02:00 |
|
Mathias Baumann
|
ba0a4de50d
|
NatSpec: Implement `@inheritdoc `
|
2020-07-20 18:32:18 +02:00 |
|
Sachin Grover
|
b7adb2aa42
|
Add SPDX license identifier if not present already in source file
Fixes: #9220
|
2020-07-17 20:24:12 +05:30 |
|
Mathias Baumann
|
c50f0ae00e
|
NatSpec: Implement default inheritance.
|
2020-06-30 14:45:13 +02:00 |
|
chriseth
|
07c1167136
|
Refactor name and type resolution.
|
2020-06-12 12:18:02 +02:00 |
|
Djordje Mijovic
|
c6e4943089
|
Adding fixes for signedness warnings in libsolidity
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
|
2020-06-10 10:41:55 +02:00 |
|
Leonardo
|
56b5f1bb12
|
Merge pull request #8976 from ethereum/libsmtutil
libsmtutil
|
2020-05-20 16:14:37 +02:00 |
|
Leonardo Alt
|
45eba27424
|
Rename namespace
|
2020-05-20 12:55:18 +02:00 |
|
Jason Cobb
|
20c8851f43
|
Use optional for CompilerStack::Contract source mappings
|
2020-05-18 10:24:38 -04:00 |
|
chriseth
|
2d1e7d9504
|
Merge pull request #8931 from random-internet-cat/lazy-init
Add LazyInit
|
2020-05-14 18:54:19 +02:00 |
|
Jason Cobb
|
eae31559be
|
Use LazyInit for CompilerStack::Contract members
|
2020-05-14 10:39:53 -04:00 |
|
chriseth
|
e751a1c23d
|
Move scopes into resolver.
|
2020-05-14 13:16:47 +02:00 |
|
chriseth
|
3872a1f000
|
Add support for SPDX license identifiers.
|
2020-05-13 18:16:59 +02:00 |
|
Alex Beregszaszi
|
875415a132
|
Replace boost/algorithm/cxx11 with C++11 features
|
2020-05-11 14:27:54 +01:00 |
|
a3d4
|
8f68c04358
|
Add unique IDs to error reporting calls
|
2020-05-06 13:53:46 +02:00 |
|
Djordje Mijovic
|
f3f729549d
|
[Sol->Yul] Enabling creation function call
|
2020-04-27 16:15:57 +02:00 |
|
Kamil Śliwak
|
c8b612536f
|
Add yulDetails.optimizerSteps to the standard JSON interface
|
2020-04-24 17:30:56 +02:00 |
|
Alexander Arlt
|
aac7a1e434
|
Apply modernize-pass-by-value.
|
2020-04-14 10:32:13 -05:00 |
|
Daniel Kirchner
|
3af43fd350
|
Extract typing.
|
2020-04-14 10:59:28 +02:00 |
|
Mathias Baumann
|
ac7b31e559
|
Validate immutable variables
|
2020-04-02 13:52:27 +02:00 |
|
Djordje Mijovic
|
37878cf8d2
|
Adding support for ipfs large files.
|
2020-03-11 13:55:46 +01:00 |
|
chriseth
|
bb09787bd0
|
Merge pull request #8378 from mijovic/yulSourceLocations
Adding source location support to AssemblyStack
|
2020-02-25 22:34:57 +01:00 |
|
Djordje Mijovic
|
ec083c4878
|
Adding source location support to AssemblyStack and thus debugging Yul sources
|
2020-02-25 22:19:03 +01:00 |
|
Djordje Mijovic
|
8524e3f48d
|
Standard-JSON-Interface: Fix a bug (#8371) related to empty filenames and imports.
|
2020-02-25 01:07:36 +01:00 |
|
Djordje Mijovic
|
18dea6b69c
|
Assembly: Added missing source field to legacy assembly json output to complete the source reference
|
2020-02-18 10:22:34 +01:00 |
|
Alexander Arlt
|
d0eeca8014
|
Fix CompilerStack::loadMissingSources()
- FatalError Exception was not caught
- fixes #8102
|
2020-02-12 11:22:11 -05:00 |
|
Leonardo Alt
|
36928c7a35
|
Add reason string for internal reverts
|
2020-02-10 11:57:20 -03:00 |
|
chriseth
|
185a736e13
|
Merge pull request #7918 from ethereum/compilerstack-fqdn
Add assertion for contract name clash in the resolver in CompilerStack
|
2020-01-15 18:00:58 +01:00 |
|
djudjuu
|
e8556fa1b2
|
Ast-Import from standard-json
|
2020-01-14 17:15:53 +01:00 |
|
Alex Beregszaszi
|
b85d478931
|
Add assertion for contract name clash in the resolver in CompilerStack
|
2020-01-10 11:49:44 +01:00 |
|
chriseth
|
d1a7ff0fbc
|
Merge pull request #8008 from ethereum/large-code
Issue warning if codesize exceeds EIP-170 limits
|
2020-01-08 09:48:59 +01:00 |
|
Christian Parpart
|
345f9928ab
|
Library libdevcore renamed to libsolutil.
|
2020-01-07 15:51:50 +01:00 |
|
Christian Parpart
|
6b23412fae
|
C++ namespace cleanup (except tests).
|
2020-01-07 15:51:50 +01:00 |
|
Alex Beregszaszi
|
4d791b2679
|
Issue warning if codesize exceeds EIP-170 limits
|
2019-12-25 19:51:35 +01:00 |
|
Alex Beregszaszi
|
65e59ecd06
|
Rename EWasm/ewasm/eWasm to Ewasm
|
2019-12-19 11:36:08 +00:00 |
|
Alex Beregszaszi
|
018960ebb1
|
Rename EWasmObjectCompiler to WasmObjectCompiler
|
2019-12-18 15:59:31 +00:00 |
|
Erik Kundt
|
cc1b28b12e
|
Fixes segfault on empty contract w/ error recovery.
|
2019-12-13 15:39:19 +01:00 |
|
chriseth
|
f6916a637e
|
Merge remote-tracking branch 'origin/develop' into develop_060
|
2019-12-09 17:16:58 +01:00 |
|
Leonardo Alt
|
225041738e
|
Add SMTCheckerTest for isoltest
|
2019-12-09 15:32:08 +01:00 |
|
chriseth
|
e3ee67da6c
|
Merge pull request #7792 from ethereum/enableYulOptimizer
Enable yul optimizer by default.
|
2019-12-03 21:24:22 +01:00 |
|
chriseth
|
19a6f09cc8
|
Merge commit '4d2f20570' into develop_060
|
2019-12-03 21:01:31 +01:00 |
|
Daniel Kirchner
|
77a9e91443
|
Enable yul optimizer by default.
|
2019-12-02 19:30:14 +01:00 |
|
chriseth
|
ccfc1840a9
|
Allow assembly stack to translate its source.
|
2019-11-28 16:15:15 +01:00 |
|
chriseth
|
1ebcc757e1
|
Merge remote-tracking branch 'origin/develop' into develop_060
|
2019-11-27 19:14:08 +01:00 |
|
chriseth
|
0bb88dabb7
|
Restrict usage of plain "new".
|
2019-11-27 17:55:11 +01:00 |
|
chriseth
|
0973ae751a
|
Do not warn about enabled ABIEncoderV2 anymore.
|
2019-11-26 15:49:42 +01:00 |
|
Leonardo Alt
|
ddc478e3e4
|
Add CallbackKind and use it for the SMT solver
|
2019-11-21 22:10:21 +00:00 |
|
Leonardo Alt
|
389da5228e
|
Merge remote-tracking branch 'origin/develop' into merge_develop_060
|
2019-11-20 12:27:40 +01:00 |
|
Alex Beregszaszi
|
840aba8929
|
Add new gas price for deployed bytecode (EIP2028)
|
2019-11-19 17:09:18 +01:00 |
|
chriseth
|
216e1749f4
|
Merge remote-tracking branch 'origin/develop' into develop_060
|
2019-11-14 13:42:46 +01:00 |
|
chriseth
|
a667384517
|
Merge pull request #7712 from ethereum/fixIstanbulAsmParsing
Fix assembly parsing by passing evm version.
|
2019-11-14 13:20:15 +01:00 |
|
chriseth
|
b099374d8c
|
Fix assembly parsing by passing evm version.
|
2019-11-14 13:06:36 +01:00 |
|
Leonardo Alt
|
5f43b8dbeb
|
Output the storage layout of a contract via storageLayout artifact
|
2019-11-14 10:19:17 +01:00 |
|
chriseth
|
138ee647f1
|
Provide different options for reason strings.
|
2019-11-07 14:13:53 +01:00 |
|
chriseth
|
21e65076b3
|
Merge pull request #7650 from ethereum/develop
Merge develop into develop_060
|
2019-11-06 21:56:55 +01:00 |
|
chriseth
|
e79a32e9d5
|
Wasm to binary assembly stack.
|
2019-11-05 20:02:42 +01:00 |
|
chriseth
|
cb2096c82a
|
Add modifier depth to source mappings.
|
2019-11-05 16:50:38 +01:00 |
|
Daniel Kirchner
|
3321fc56ea
|
Split fallback function and introduce "fallback()" and "receive()" syntax.
|
2019-11-04 17:17:58 +01:00 |
|
chriseth
|
edf1e83fda
|
Merge remote-tracking branch 'origin/develop' into develop_060
|
2019-10-28 15:21:49 +01:00 |
|
Christian Parpart
|
df729b3084
|
Make use of C++17 std::optional<> instead of boost::optional<>.
|
2019-10-28 11:39:30 +01:00 |
|
Leonardo Alt
|
d685554980
|
Create option for metadata hash
|
2019-09-13 18:59:12 +02:00 |
|
Daniel Kirchner
|
872d21f527
|
Allow global struct definitions.
|
2019-09-02 11:17:42 +02:00 |
|
Leonardo Alt
|
4214cd1354
|
[SMTChecker] Fix ICE when reporting cex concerning state vars from different source files
|
2019-08-10 20:56:52 +02:00 |
|
rocky
|
7fd7cc1e76
|
Produce AST even when there are parser errors
|
2019-08-07 15:25:53 +02:00 |
|
Leonardo Alt
|
6f8fd309a2
|
Compile only requested sources and contracts
|
2019-07-01 18:52:21 +02:00 |
|
Leonardo Alt
|
3cb4ed83c1
|
[SMTChecker] Split SMTChecker into SMTEncoder and BMC
|
2019-07-01 15:05:03 +02:00 |
|
chriseth
|
89f0e1e6da
|
Use updated swarm hash.
|
2019-06-27 12:49:06 +02:00 |
|
chriseth
|
aa11ad7d0a
|
Update swarm hash.
|
2019-06-27 12:48:51 +02:00 |
|
chriseth
|
c6f7f5b2b0
|
Enable EWasm output.
|
2019-06-25 19:07:38 +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 |
|
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
|
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
|
b01a8c544c
|
Use IPFS url in metadata for source links.
|
2019-05-15 12:40:03 +02: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 |
|