bpo-44792: Improve syntax errors for if expressions (GH-27506) (GH-27565)

(cherry picked from commit 28b6dc9dd5d1ce6f8aff7e06d4ef9afdc2bc8332)

Co-authored-by: Miguel Brito <5544985+miguendes@users.noreply.github.com>
diff --git a/Lib/test/test_syntax.py b/Lib/test/test_syntax.py
index 6e1531e..d5a52ba 100644
--- a/Lib/test/test_syntax.py
+++ b/Lib/test/test_syntax.py
@@ -140,6 +140,18 @@
 Traceback (most recent call last):
 SyntaxError: cannot assign to conditional expression
 
+>>> a = 42 if True
+Traceback (most recent call last):
+SyntaxError: expected 'else' after 'if' expression
+
+>>> a = (42 if True)
+Traceback (most recent call last):
+SyntaxError: expected 'else' after 'if' expression
+
+>>> a = [1, 42 if True, 4]
+Traceback (most recent call last):
+SyntaxError: expected 'else' after 'if' expression
+
 >>> True = True = 3
 Traceback (most recent call last):
 SyntaxError: cannot assign to True