Commit Graph

42 Commits

Author SHA1 Message Date
Daniel Kirchner
5d1d365e2f style fixes 2023-09-13 22:54:10 +02:00
Daniel Kirchner
d8a36a1d58 Type inference draft. 2023-09-13 22:54:02 +02:00
Daniel Kirchner
093ec110cf Scanner hack. 2023-09-13 22:39:25 +02:00
Matheus Aguiar
14aed39261 Introduce experimental analysis basic infrastructure 2023-09-11 12:29:44 -03:00
Kamil Śliwak
b85a95f52d Refactor TokenTraits::isUnaryOp() not to treat + as a unary operator 2023-04-18 16:49:31 +02:00
Alex Beregszaszi
f5c85662ca Drop deprecated UndefMacros file 2022-09-27 23:35:32 +02:00
Christian Parpart
81e9225304 Eliminate some unnecessary header inclusions in headers. 2021-08-03 15:43:14 +02:00
Alex Beregszaszi
15237c8404 Disable the type byte 2020-12-14 19:18:25 +00:00
chriseth
527c073bb9 Checked arithmetic by default. 2020-10-19 16:58:37 +02:00
hrkrshnn
13e7012e1e Parser: Exponentiation is right associative 2020-10-13 16:38:37 +02:00
chriseth
3102b98e82 Var is reserved keyword. 2020-10-06 15:08:57 +02:00
Alex Beregszaszi
2ebc4bb9a7 Introduce TokenTraits::isYulKeyword helper 2020-08-31 11:55:27 +01:00
Alex Beregszaszi
7ef9591e64 Expose hex literal to the Yul parser
This allows nicer error messages.
2020-08-28 19:34:52 +01:00
Alex Beregszaszi
4366ede889 Introduce Leave as a keyword for Yul 2020-08-28 19:34:52 +01:00
Alex Beregszaszi
caa329066e Do not emit Solidity-only tokens in the Scanner for Yul
And simplfiy AsmParser greatly.
2020-08-28 19:34:52 +01:00
Alex Beregszaszi
662f7d8fac Rename Arrow to DoubleArrow 2020-08-27 12:28:27 +01:00
Alex Beregszaszi
4e5b403c37 Introduce RightArrow (->) token in the scanner 2020-08-27 12:28:27 +01:00
Alex Beregszaszi
6eb60bc8cd Add check that regular and unicode string literals are well formatted 2020-07-27 18:21:17 +01:00
chriseth
8cfbe02cc0 Fix token list. 2020-07-23 14:28:28 +02:00
chriseth
93c792c696 Remove special treatment of `var`. 2020-07-20 17:22:04 +02:00
Harikrishnan Mulackal
f73b25bb78 Removed specialized errors related to constant state mutability 2020-07-14 12:42:47 +05:30
Daniel Kirchner
c3e13b6733 Promote gwei to a proper keyword. 2020-07-13 18:07:11 +02:00
Daniel Kirchner
38c6ecbbe2 Remove finney and szabo denominations. 2020-07-13 18:07:10 +02:00
Mathias Baumann
02328f3bbb Add unit denomination `gwei` 2020-06-24 18:24:56 +02:00
chriseth
f10c6500b2 Immutable is not reserved anymore. 2020-03-02 14:20:17 +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
chriseth
b0db64ff5b Merge remote-tracking branch 'origin/develop' into develop_060 2019-11-26 16:19:35 +01:00
Gaith Hallak
4a1e85436b Allow splitting string literals into multiple parts 2019-11-26 14:41:30 +03:00
Mathias Baumann
caa127e2a8 Make `abstract` keyword instead of reserved 2019-11-14 11:49:39 +01:00
Mathias Baumann
7d4e4b6088 Parse "virtual" keyword 2019-11-13 13:28:01 +01:00
Daniel Kirchner
3321fc56ea Split fallback function and introduce "fallback()" and "receive()" syntax. 2019-11-04 17:17:58 +01:00
Christian Parpart
59955bed5d Adds reserved keyword virtual, and adjusting affected tests/docs respectively. 2019-09-09 13:41:43 +02:00
Mathias Baumann
24716404f8 Parse override keyword 2019-08-26 17:34:21 +02:00
Mathias Baumann
f395d5bab4 Add extra token for assembly assignment
Adding an extra token for := prevents whitespace between : = being valid
2019-02-21 13:58:21 +01:00
chriseth
1a823f0bf8 Fix tabs/spaces. 2019-02-13 17:05:48 +01:00
chriseth
2fcfb216b5 Syntax for meta type information. 2019-01-17 20:36:48 +01:00
Christian Parpart
e4106bd06e Change scanner error diagnostics to be non-intrusive to the token API.
This also implicitly eliminates the magic-token Token::IllegalHex, and
streamlines error diagnostics over a custom enum class.
2018-11-24 12:40:51 +01:00
Lazaridis
e454737a3c adapt to latest code changes 2018-11-23 17:27:52 +01:00
Christian Parpart
58a744f06d
Replace all occurrences of NULL with nullptr. 2018-11-23 12:57:31 +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