bpo-39520: Fix un-parsing of ext slices with no dimensions (GH-18304)

(cherry picked from commit 185903de12)

Co-authored-by: Batuhan Taşkaya <47358913+isidentical@users.noreply.github.com>
This commit is contained in:
Miss Islington (bot) 2020-03-11 13:18:01 -07:00 committed by GitHub
parent c22879914b
commit cd07b4da65
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 0 deletions

View File

@ -256,6 +256,11 @@ class AnnotationsFutureTestCase(unittest.TestCase):
eq("slice[:-1]")
eq("slice[1:]")
eq("slice[::-1]")
eq("slice[:,]")
eq("slice[1:2,]")
eq("slice[1:2:3,]")
eq("slice[1:2, 1]")
eq("slice[1:2, 2, 3]")
eq("slice[()]")
eq("slice[a, b:c, d:e:f]")
eq("slice[(x for x in a)]")

View File

@ -0,0 +1,2 @@
Fix unparsing of ext slices with no items (``foo[:,]``). Patch by Batuhan
Taskaya.

View File

@ -746,6 +746,7 @@ append_ast_ext_slice(_PyUnicodeWriter *writer, slice_ty slice)
APPEND_STR_IF(i > 0, ", ");
APPEND(slice, (slice_ty)asdl_seq_GET(slice->v.ExtSlice.dims, i));
}
APPEND_STR_IF(dims_count == 1, ",");
return 0;
}