[3.9] bpo-40614: Respect feature version for f-string debug expressions (GH-20196) (GH-20464)

Co-authored-by: Lysandros Nikolaou <lisandrosnik@gmail.com>
Co-authored-by: Pablo Galindo <pablogsal@gmail.com>
(cherry picked from commit c116c94)

Co-authored-by: Shantanu <hauntsaninja@users.noreply.github.com>
diff --git a/Python/ast.c b/Python/ast.c
index 2d20ca6..c524b8e 100644
--- a/Python/ast.c
+++ b/Python/ast.c
@@ -5069,6 +5069,12 @@
     /* Check for =, which puts the text value of the expression in
        expr_text. */
     if (**str == '=') {
+        if (c->c_feature_version < 8) {
+            ast_error(c, n,
+                      "f-string: self documenting expressions are "
+                      "only supported in Python 3.8 and greater");
+            goto error;
+        }
         *str += 1;
 
         /* Skip over ASCII whitespace.  No need to test for end of string