summaryrefslogtreecommitdiffstats
path: root/Include
diff options
context:
space:
mode:
authorFred Drake <fdrake@acm.org>2000-07-11 17:53:00 (GMT)
committerFred Drake <fdrake@acm.org>2000-07-11 17:53:00 (GMT)
commit85f363990cbd6df21015eebdc171c533176e3407 (patch)
tree4aa69857ffe21991384e379799f42ba308a58086 /Include
parent88e1932930245b2f7ed300ff8b31034db7ecda5b (diff)
downloadcpython-85f363990cbd6df21015eebdc171c533176e3407.zip
cpython-85f363990cbd6df21015eebdc171c533176e3407.tar.gz
cpython-85f363990cbd6df21015eebdc171c533176e3407.tar.bz2
Create two new exceptions: IndentationError and TabError. These are
used for indentation related errors. This patch includes Ping's improvements for indentation-related error messages. Closes SourceForge patches #100734 and #100856.
Diffstat (limited to 'Include')
-rw-r--r--Include/errcode.h6
-rw-r--r--Include/parsetok.h2
2 files changed, 6 insertions, 2 deletions
diff --git a/Include/errcode.h b/Include/errcode.h
index b872e18..0683317 100644
--- a/Include/errcode.h
+++ b/Include/errcode.h
@@ -30,8 +30,10 @@ redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES.
#define E_NOMEM 15 /* Ran out of memory */
#define E_DONE 16 /* Parsing complete */
#define E_ERROR 17 /* Execution error */
-#define E_INDENT 18 /* Invalid indentation detected */
-#define E_OVERFLOW 19 /* Node had too many children */
+#define E_TABSPACE 18 /* Invalid indentation detected */
+#define E_OVERFLOW 19 /* Node had too many children */
+#define E_TOODEEP 20 /* Too many indentation levels */
+#define E_DEDENT 21 /* No matching outer block for dedent */
#ifdef __cplusplus
}
diff --git a/Include/parsetok.h b/Include/parsetok.h
index 5244e3f..71e7d89 100644
--- a/Include/parsetok.h
+++ b/Include/parsetok.h
@@ -22,6 +22,8 @@ typedef struct {
int lineno;
int offset;
char *text;
+ int token;
+ int expected;
} perrdetail;
extern DL_IMPORT(node *) PyParser_ParseString(char *, grammar *, int,