chriseth
834da7be90
Introduce abicoder pragma.
2020-11-03 13:31:50 +01:00
chriseth
2934a1f037
Assign scopes as a separate step.
2020-09-02 20:45:33 +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
chriseth
4d2b9cd38f
Jump types for yul functions.
2020-07-06 18:12:54 +02:00
chriseth
07c1167136
Refactor name and type resolution.
2020-06-12 12:18:02 +02:00
chriseth
eb923af09c
Do not set source locations for small internal assembly routines.
2020-05-27 18:26:46 +02:00
chriseth
e751a1c23d
Move scopes into resolver.
2020-05-14 13:16:47 +02:00
Daniel Kirchner
3af43fd350
Extract typing.
2020-04-14 10:59:28 +02:00
Leonardo Alt
36928c7a35
Add reason string for internal reverts
2020-02-10 11:57:20 -03:00
Mathias Baumann
00e4d13975
TestFramework: Merge Options.h into Common.h
2020-01-29 12:27:05 +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
chriseth
216e1749f4
Merge remote-tracking branch 'origin/develop' into develop_060
2019-11-14 13:42:46 +01:00
chriseth
b099374d8c
Fix assembly parsing by passing evm version.
2019-11-14 13:06:36 +01:00
chriseth
138ee647f1
Provide different options for reason strings.
2019-11-07 14:13:53 +01:00
chriseth
9a00729ce7
Provide dialect to Parser and InlineAssembly AST nodes.
2019-05-23 00:24:58 +02:00
Mathias Baumann
cf35e5ba02
Issue warning for variables called super
or this
2019-05-02 11:30:24 +02:00
chriseth
d381e26fc8
Rename "enabled" optimizer setting stage to "standard".
2019-03-21 11:04:40 +01:00
chriseth
43850d55f3
Update tests.
2019-03-04 11:44:54 +01:00
Alex Beregszaszi
cf5c13f9c7
Introduce global optimiser settings.
2019-03-04 11:40:28 +01:00
chriseth
e6fee257e6
Code generation for access to contract code.
2019-01-17 20:36:48 +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
Mathias Baumann
1b8570f829
Only generate sort/search code when interface functions exist
2018-12-17 21:24:37 +01:00
Christian Parpart
757623e381
liblangutil: SourceLocation: Retricts == and != operator
2018-11-30 17:34:54 +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
22eff22492
liblangutil: extends CharStream to know about the respective (file-)name (and adapt codebase to it)
2018-11-29 12:45:27 +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
Christian Parpart
87821c53c3
Isolating files shared between Yul- and Solidity language frontend.
2018-11-21 18:58:12 +00:00
chriseth
727e3f24bc
Do not perform cleanup on unsigned integers when loading from calldata.
2018-11-14 20:52:30 +00:00
Erik Kundt
7cb46ea707
Fixes assembly test.
2018-07-04 15:45:42 +02:00
Erik Kundt
fc2b006fe1
Updates unit test to specify visibility.
2018-07-04 15:45:42 +02:00
Alex Beregszaszi
971941b3f6
Update source location test expectations
2018-04-30 21:23:08 +01:00
chriseth
966367305a
Remove dead code and clarify throw.
2018-04-12 20:13:16 +02:00
chriseth
b25598126e
Update documentation and minor changes.
2018-04-12 13:09:38 +02:00
chriseth
167ee2fcbb
Update source location tests.
2018-04-12 13:09:38 +02:00
Daniel Kirchner
d63d41b3b5
test: Rename test/TestHelper.* to test/Options.* and add Options::validate().
2018-03-14 12:04:04 +01:00
chriseth
05cc5f22b2
Correctly set evm version in tests
2018-03-01 17:19:35 +01:00
chriseth
a53d6b499d
Use EVM version in type checker.
2018-03-01 17:19:35 +01:00
chriseth
7f4cf00f1b
Provide easy way to update source location expectation.
2018-01-04 14:29:03 +01:00
chriseth
58139e8613
Adjust tests.
2017-10-18 00:19:36 +02:00
chriseth
d15526f877
Update tests.
2017-08-25 10:42:36 +01:00
chriseth
a25f73e2cc
Fix location tests.
2017-06-23 19:29:11 +02:00
Rhett Aultman
89b60ffbd4
Refactor error reporting
...
This commit introduces ErrorReporter, a utility class which consolidates
all of the error logging functionality into a common set of functions.
It also replaces all direct interactions with an ErrorList with calls to
an ErrorReporter.
This commit resolves issue #2209
2017-05-30 07:28:31 -07:00
chriseth
e67faa9839
Extract scopes into compiler stack.
2017-02-14 13:23:44 +01:00
Valentin Wüstholz
5b7cc018f0
Address feedback from code review.
2017-01-26 16:39:07 +01:00
Valentin Wüstholz
9bcbd93ac5
Change translation of implicit throws (issue #1589 ).
...
This adds a new invalid instruction that is used for encoding
implicit throws that are emitted by the compiler. This makes it
possible to distinguish such runtime errors from user-provided,
explicit throws.
2017-01-26 16:39:07 +01:00
chriseth
84443eb560
Merge pull request #1351 from ethereum/truncate_bit
...
Truncate a boolean from calldata into one bit
2016-12-08 16:15:35 +01:00
chriseth
6a7ff039df
Use CBOR encoding.
2016-12-01 16:03:59 +01:00
chriseth
5789eaa78d
Metadata stamp.
2016-12-01 16:03:59 +01:00
Yoichi Hirai
547deec4be
codegen: clean any data from the input
2016-11-30 17:42:03 +01:00