EOF in source is a SyntaxError, not an EOFError.
diff --git a/Python/errors.c b/Python/errors.c
index de70f22..5a46d4e 100644
--- a/Python/errors.c
+++ b/Python/errors.c
@@ -192,7 +192,7 @@
 		err_nomem();
 		break;
 	case E_EOF:
-		err_setstr(EOFError, "unexpected EOF while parsing");
+		err_setstr(SyntaxError, "unexpected EOF while parsing");
 		break;
 	default:
 		err_setstr(SystemError, "unknown parsing error");