Commit Graph

368 Commits

Author SHA1 Message Date
Rodrigo Q. Saramago
ef6ff2f055
Adds support for the EVM version "Paris".
Deprecates `block.difficulty` and disallow `difficulty()` in inline assembly for EVM versions >= paris.
The change is due to the renaming introduced by EIP-4399 (see: https://eips.ethereum.org/EIPS/eip-4399).
Introduces `block.prevrandao` in Solidity and `prevrandao()` in inline assembly for EVM versions >= paris.

Co-authored-by: Alex Beregszaszi <alex@rtfs.hu>
Co-authored-by: Daniel <daniel@ekpyron.org>
Co-authored-by: matheusaaguiar <95899911+matheusaaguiar@users.noreply.github.com>
Co-authored-by: Nikola Matić <nikola.matic@ethereum.org>
2023-01-23 18:50:36 +00:00
Nikola Matic
1da82045c4 Use directory_options instead of deprecated symlink_option
basename to step
2023-01-12 10:37:01 +01:00
andy53
3bc535e1a1 Report when no contracts to compile
updates
2022-12-19 13:47:03 +01:00
Daniel
eb2f874eac
Merge pull request #13733 from ethereum/eofSetting
Add experimental EOF options for CLI and Standard JSON.
2022-11-23 20:37:24 +01:00
Daniel Kirchner
bf26d3be5a Add experimental EOF options for CLI and Standard JSON.
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2022-11-23 19:53:44 +01:00
Leo Alt
24df40de9a Allow running Eldarica from the command line 2022-11-22 21:16:45 +01:00
Alexander Arlt
cd440fc5f9 [solc] Refactor valid input modes. 2022-10-18 15:15:30 -05:00
Kamil Śliwak
53e0a47a1c
Merge pull request #13265 from ethereum/no-append-metadata
Add `--no-append-metadata` in CLI and `metadata.append` in JSON
2022-10-04 17:32:22 +02:00
Alex Beregszaszi
565423c934 Replace use of boost::adapters::filtered with ranges::views::filter 2022-09-27 03:14:17 +02:00
hrkrshnn
f96e802e74 Add --no-append-metadata in CLI and metadata.append in JSON
Skips appending metadata to the binary
2022-09-26 20:40:34 +02:00
nishant-sachdeva
eafd7218b7 refactored struct message to use std::variant for _typeOrSeverity 2022-09-20 19:20:43 +05:30
nishant-sachdeva
c8011d8719 Cleaning up helpers around errors 2022-09-19 10:51:14 +05:30
Nikola Matic
1f6a299062 Add a check for unqualified move 2022-09-05 16:05:14 +02:00
Marenz
c88c74ceb8 Rename ASTJsonConverter to ASTJsonExporter
given that we have an ASTJsonImporter this name makes more sense.
2022-06-16 18:05:51 +02:00
Christian Parpart
f308f1a1f8 Always allow full filesystem access to LSP. 2022-05-09 11:37:11 +02:00
Joshua Quinones
e1a59397c6 Renamed AssemblyStack to YulStack
All files, references, variables, comments, etc. were renamed to YulStack.
2022-04-08 20:28:55 +02:00
Aisultan Kali
96376264e8 Set handlers use unified jsonPrint with prettifier if needed 2022-04-04 20:17:11 +02:00
Daniel Kirchner
0172f61340 No longer mark Yul as experimental. 2022-03-14 14:48:01 +01:00
Daniel Kirchner
e58c0b561d Mark viaIR code generation as non-experimental. 2022-03-14 14:48:00 +01:00
Tyler
519e1c9402 Specify namespaces
Fix references into solidity::util
2022-03-08 00:09:17 -05:00
chriseth
b0dcd7b915 Split out disassemble to remove numeric from instruction includes. 2022-03-02 15:30:41 +01:00
Marenz
46075d04d9 Include used events in `--hashes` output 2022-02-09 13:50:42 +01:00
Marenz
3e7c68d9b0 Merge identifier query methods into one 2022-02-08 17:44:21 +01:00
joshieDo
9e62f21b25 Add event and error identifiers to cli hashes cmd 2022-02-08 17:44:21 +01:00
Christian Parpart
927b24df1f Initial implementation of Language Server 2021-12-16 17:52:49 +01:00
chriseth
0e6388a907 Clarify FileReader interface. 2021-12-13 14:54:58 +01:00
Kamil Śliwak
f50aec9334 CommandLineInterface: Report an error immediately when writing to disk fails 2021-11-09 18:16:30 +01:00
Kamil Śliwak
c8380c25bb CommandLineInterface: Update control flow to accommodate the new way of reporting errors 2021-11-09 18:16:30 +01:00
neel iyer
e829bcd933 CommandLineInterface: Replace code that prints to serr() and returns false with CommandLineValidationError exception 2021-11-09 18:16:30 +01:00
Kamil Śliwak
16f62ed43e Move the Yul experimental warning from CommandLineParser to CommandLineInterface and remove stderr from the parser 2021-11-09 18:16:30 +01:00
Kamil Śliwak
3f5471165f CommandLineParser: Report errors by raising exceptions 2021-11-09 18:16:30 +01:00
Kamil Śliwak
1a19d9a5cf New CLI output in assembly mode: --ewasm-ir 2021-11-04 18:23:11 +01:00
Kamil Śliwak
affeff18f5 Don't ignore output selection in assembly mode 2021-11-04 18:23:11 +01:00
Kamil Śliwak
0417db0f6a Don't return an error from --help 2021-11-02 16:31:45 +01:00
Kamil Śliwak
a1c9c1e2b5 CommandLineInterface: Merge processInput() and actOnInput()
- The distinction between them is not as clear-cut as it should be. For example processInput() prints output in assembly mode.
2021-11-02 16:31:45 +01:00
Kamil Śliwak
93c1fe6878 Treat --help, --license and --version as separate input modes 2021-11-02 16:31:43 +01:00
Kamil Śliwak
01327d6ef1 CommandLineInterface: Don't return zero exit code when writing linked files to disk fails 2021-10-12 18:23:16 +02:00
Kamil Śliwak
a5ed732fd3 CommandLineInterface: Rename m_error to m_outputFailed 2021-10-12 18:23:16 +02:00
Kamil Śliwak
a9e794c872 Expose --debug-info/settings.debug.debugInfo option 2021-10-11 20:34:48 +02:00
Kamil Śliwak
bcfefc79d9 Pass DebugInfoSelection down to the code handling assembly printing 2021-10-11 20:34:48 +02:00
Saurabh Sharma
e13dc5084d Move exception handlers from CommandLineInterface to main() 2021-10-07 17:20:19 +02:00
Kamil Śliwak
9975b5e26b Detect source unit name collisions between paths specified on the command line 2021-09-27 13:14:23 +02:00
Kamil Śliwak
c8a7a1da7c Add --include-path option 2021-09-27 13:14:23 +02:00
Kamil Śliwak
13571f4a67 CommandLineInterface: Add asserts documenting which function is expected to work in which input modes 2021-09-17 18:42:13 +02:00
chriseth
535e1ecdb2
Merge pull request #11895 from ethereum/doNotRunEvmCodegenIfNotAsked
Do not run evm codegen if not asked.
2021-09-14 17:12:06 +02:00
Leo Alt
e72fa7fc10 Add new info severity 2021-09-13 22:48:22 +02:00
Kamil Śliwak
6b46d4fdbe Extract duplicated code for initializing OptimiserSettings from CommandLineOptions into a common function 2021-09-13 15:35:11 +02:00
Daniel Kirchner
b934ef6c6e Only run evm bytecode generation if required. 2021-09-10 12:32:48 +02:00
Kamil Śliwak
13f46ebb1e FileReader: Normalize base path and strip it from normalized source paths 2021-08-27 15:10:46 +02:00
Kamil Śliwak
cb1a0f08ca readFileAsString(): Accept path as boost::filesystem::path instead of string 2021-08-17 12:58:33 +02:00