diff --git a/Python/ast.c b/Python/ast.c
index 0885fe7798fa5e70c4be83f7261344154821eb98..a0321b58ba8cffe43cc350b5db7f034f384b8d6e 100644
--- a/Python/ast.c
+++ b/Python/ast.c
@@ -25,15 +25,15 @@ static int validate_pattern(struct validator *, pattern_ty, int);
 #define VALIDATE_POSITIONS(node) \
     if (node->lineno > node->end_lineno) { \
         PyErr_Format(PyExc_ValueError, \
-                     "line %d-%d is not a valid range", \
+                     "AST node line range (%d, %d) is not valid", \
                      node->lineno, node->end_lineno); \
         return 0; \
     } \
     if ((node->lineno < 0 && node->end_lineno != node->lineno) || \
         (node->col_offset < 0 && node->col_offset != node->end_col_offset)) { \
         PyErr_Format(PyExc_ValueError, \
-                     "line %d-%d, column %d-%d is not a valid range", \
-                     node->lineno, node->end_lineno, node->col_offset, node->end_col_offset); \
+                     "AST node column range (%d, %d) for line range (%d, %d) is not valid", \
+                     node->col_offset, node->end_col_offset, node->lineno, node->end_lineno); \
         return 0; \
     } \
     if (node->lineno == node->end_lineno && node->col_offset > node->end_col_offset) { \