26 Commits
Author SHA1 Message Date
Christian Parpart b1dd0d0d02 Properly compute source mappings for immutables. 2021-10-12 17:56:17 +02:00
chriseth f75b55071e Remove CharStream from SourceLocation. 2021-07-14 15:12:07 +02:00
chriseth 0df8a38e55 Support metadata via IR. 2021-06-21 18:20:31 +02:00
Daniel Kirchner 68667f0e84 Remove POPs from ASSIGNIMMUTABLE generated bytecode, if possible. 2020-10-15 18:14:41 +02:00
Daniel Kirchner 0dca223b45 Add another argument to setimmutable and the AssignImmutable opcode, allowing to modify code at any memory offset. 2020-10-15 18:14:41 +02:00
Djordje MijovicandKamil Śliwak 6f97e6153c [yul] Adding support for accessing subobjects via .
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2020-07-21 17:56:11 +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
Djordje MijovicandHarikrishnan Mulackal e4e3f49844 Fixing signedness conversion warnings in libevmasm
Co-authored-by: Harikrishnan Mulackal <webmail.hari@gmail.com>
2020-06-03 13:25:43 +02:00
Daniel Kirchner e255c15227 Tests. 2020-03-24 16:45:31 +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
alex 3416c029cf Relaxed assert in AsmJsonImporter::createAsmNode. 2020-02-04 20:37:51 +01:00
alex 211227f50b Modified SourceLocation::hasText() to allow empty source. 2020-02-04 04:19:28 +01:00
alex e4b18e85e6 Replaced SourceLocation::isEmpty() with isValid() and hasText().
The function SourceLocation::isEmpty() had somewhat dual role.
Sometimes it indicates that the SourceLocation is invalid.
Sometimes it means that there is no corresponding source text.

Hence the proposal is to replace it with two functions, isValid() and hasText().

I also removed Scanner::sourceAt(). (Do we have a rule of thumb to remove unused code?)

Since hasText() checks that start and end are valid indices for source, I adjusted a couple of tests to avoid empty source strings.
2020-02-03 08:04:21 +01:00
Alex Beregszaszi 9c19b93c37 Remove LLL specific features from libevmasm 2020-01-15 13:27:51 +00:00
Christian Parpart 345f9928ab Library libdevcore renamed to libsolutil. 2020-01-07 15:51:50 +01:00
Christian Parpart ed45b000d1 Adapt tests directory to C++ namespace changes. 2020-01-07 15:51:50 +01:00
Christian Parpart 6b23412fae C++ namespace cleanup (except tests). 2020-01-07 15:51:50 +01:00
Christian Parpart d10bae245e liblangutil: SourceLocation to default initialize data members (w/o the use of ctor)
See: http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#c45-dont-define-a-default-constructor-that-only-initializes-data-members-use-in-class-member-initializers-instead
2018-12-19 11:21:45 +01:00
chriseth bc6ddbdd09 Remove w parameter for toHex. 2018-12-05 22:51:49 +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
Christian Parpart d67322a186 Introduce namespace langutil in liblangutil directory.
Also:
- Use {}-style list initialisation for SourceLocation construction
- Introduce new system includes
- Changes the API of the Scanner to take source as value (with move) as opposed to as a reference
2018-11-21 19:13:44 +00:00
chriseth 26c693aa92 Change library placeholder to __$<hash>$__. 2018-10-12 15:15:02 +02:00
chriseth 6daeb39ecc Use hash for library placeholders. 2018-10-12 15:15:01 +02:00
Leonardo Alt 17cac588d0 Replace safety stop by invalid 2018-08-14 12:32:47 +02:00
Christian Parpart 79ba5b61b3 Fixes compilation under MSVC. 2018-08-09 10:14:47 +02:00
Alex Beregszaszi a16461249f Add tests for the assembler object 2018-08-08 20:52:18 +01:00