From ced9e11931a7a1c5cf4eef08d0dd4a4886723b43 Mon Sep 17 00:00:00 2001 From: "Miss Islington (bot)" <31488909+miss-islington@users.noreply.github.com> Date: Mon, 24 Jun 2019 18:49:07 -0700 Subject: [PATCH] bpo-35224: Add What's new entry for evaluation order in dict comprehensions (GH-14319) (cherry picked from commit b51b7137faa22e12c570c70fe0462c662ccd935e) Co-authored-by: Pablo Galindo --- Doc/whatsnew/3.8.rst | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Doc/whatsnew/3.8.rst b/Doc/whatsnew/3.8.rst index 5ec3b4f463..59a65bfb8f 100644 --- a/Doc/whatsnew/3.8.rst +++ b/Doc/whatsnew/3.8.rst @@ -349,6 +349,9 @@ Other Language Changes is ``-1``, and a suitable power of that inverse for other negative exponents. (Contributed by Mark Dickinson in :issue:`36027`.) +* When dictionary comprehensions are evaluated, the key is now evaluated before + the value, as proposed by :pep:`572`. + New Modules =========== @@ -1499,6 +1502,11 @@ CPython bytecode changes when awaiting a next item in an :keyword:`async for` loop. (Contributed by Serhiy Storchaka in :issue:`33041`.) +* The :opcode:`MAP_ADD` now expects the value as the first element in the + stack and the key as the second element. This change was made so the key + is always evaluated before the value in dictionary comprehensions, as + porposed by :pep:`572`. (Contributed by Jörn Heissler in :issue:`35224`.) + Demos and Tools --------------- -- 2.50.1