Commit Graph

38 Commits

Author SHA1 Message Date
harupy
49b9f490d9 Fix NamedExpr location 2022-12-31 23:32:08 +09:00
Jeong YunWon
cb4bd51489 Merge pull request #4373 from andersk/named
Allow named expression in subscript and set comprehension
2022-12-31 10:58:09 +09:00
Jeong YunWon
b7eb46abad Merge pull request #4384 from harupy/parse-formatted-value
Fix the location of `FormattedValue`
2022-12-31 10:52:44 +09:00
harupy
17f7efedc5 Fix FormattedValue location 2022-12-30 21:39:29 +09:00
Nick Liu
c7c9602ea4 use is_none 2022-12-29 22:49:26 +08:00
Nick Liu
0e66e143fd added check: named arguments must follow bare star 2022-12-29 22:49:26 +08:00
Nick Liu
62fd967cd4 added lex error: DuplicateArguments 2022-12-29 22:49:26 +08:00
Anders Kaseorg
6b12aeef6a Allow named expression in set comprehension: {a := b for c in d}
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2022-12-28 09:57:32 -08:00
Anders Kaseorg
71a278c086 Allow named expression in subscript: a[b := c]
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2022-12-28 09:57:32 -08:00
Anders Kaseorg
b44a660e4b Remove duplicate declaration of "from" token
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2022-12-27 18:56:24 -08:00
Jeong YunWon
06a815f8c7 Merge pull request #4358 from harupy/fix-slice-location
Fix `Slice` location
2022-12-26 16:03:09 +09:00
Jeong YunWon
647d542d38 Merge pull request #4356 from andersk/with-tuple-named
Fix parsing of tuple with named expression as context manager
2022-12-26 16:02:17 +09:00
harupy
d7f7fd2e21 Fix slice location 2022-12-25 09:37:07 +09:00
Anders Kaseorg
c7d03d9cb4 Fix parsing of tuple with named expression as context manager
Because the ‘with’ item grammar disallows named expressions, CPython
parses ‘with (a := 0, b := 1):’ as a tuple rather than two ‘with’
items.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2022-12-24 13:15:53 -08:00
harupy
1589072680 Fix IfExp location 2022-12-25 00:33:02 +09:00
Anders Kaseorg
5c543445c3 Simplify parenthesized context manager parsing with LALRPOP conditions
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2022-12-24 23:13:10 +09:00
harupy
083191db47 Fix the location of BinOp 2022-12-21 22:05:05 +09:00
Jim Fasarakis-Hilliard
c01f014b12 Merge pull request #4340 from harupy/fix-locations-of-parethesized-expressions
Fix the start and end locations of `Tuple`
2022-12-18 15:17:40 +02:00
harupy
fdbfe156ca Fix locations of parethesized expressions 2022-12-18 20:53:30 +09:00
Anders Kaseorg
316c4858e2 Remove unnecessary boxing of ASDL product children
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2022-12-14 02:30:02 -08:00
harupy
7a40d9c876 Refactor 2022-12-12 22:36:34 +09:00
harupy
c906e431be Format 2022-12-12 22:18:26 +09:00
harupy
fbb409b755 Resolve conflict 2022-12-12 22:16:46 +09:00
harupy
05e1a7a0aa Address comments
Signed-off-by: harupy <hkawamura0130@gmail.com>
2022-12-12 22:14:05 +09:00
Anders Kaseorg
b7f4ff7283 Parse Python 3.9+ parenthesized context managers
Since the upstream grammar for this is not LR(1), we abuse LALRPOP
macros and the Into/TryInto traits to build a cover grammar that
converts to either tuples or `with` items after additional validation.
It’s annoying and ugly, but something like this is basically our only
option short of switching to a more powerful parser algorithm.

Fixes #4145.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2022-12-12 00:47:33 -08:00
Anders Kaseorg
78ca48cd79 Split and simplify some LALRPOP rules
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2022-12-11 22:02:08 -08:00
harupy
7e315c16c6 Use method chaining 2022-12-12 10:24:00 +09:00
harupy
91f1fc73ab Fix other compound statements 2022-12-12 01:10:42 +09:00
harupy
9f9ba0286e Fix end location of nodes containing body 2022-12-11 12:35:28 +09:00
harupy
adec9e94fa Fix location 2022-12-04 05:45:15 +09:00
Jim Fasarakis-Hilliard
27bf82a225 Merge pull request #4266 from charliermarsh/charlie/comments
Implement Tok::Comment
2022-11-07 23:20:15 +02:00
Charlie Marsh
ba4beb56c5 Set comparator start location to beginning of comparison 2022-11-07 12:24:14 -05:00
Charlie Marsh
978829f263 Implement Tok::Comment 2022-11-07 10:33:55 -05:00
dvermd
4f14fc746c improve col_offset in new line and lalr 2022-10-26 21:30:51 +02:00
Charlie Marsh
4b4588d885 Add expression context parsing 2022-10-17 15:20:33 -04:00
Charlie Marsh
610d408b4b Add end locations to all nodes (#4192) 2022-10-17 13:18:30 +09:00
Anders Kaseorg
b9a07f811d Spell “arithmetic” correctly
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2022-09-28 17:58:30 -07:00
Jeong YunWon
fb5ac9e79b reorganize compiler crates 2022-08-22 04:42:42 +09:00