summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--lib.c2
-rw-r--r--lib.h1
-rw-r--r--unwind.c1
4 files changed, 13 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 40f10b3b..03dea4f7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
2015-08-05 Kaz Kylheku <kaz@kylheku.com>
+ * lib.c (system_error_s): New symbol variable.
+ (obj_init): Initialize new variable.
+
+ * lib.h (system_error_s): Declared.
+
+ * unwind.c (uw_init): Register system-error exception type.
+
+2015-08-05 Kaz Kylheku <kaz@kylheku.com>
+
* stream.c (stream_init): Register get-indent-mode, set-indent-mode,
test-set-indent-mode, get-indent, set-indent, inc-indent
and width-check intrinsic functions. Register indent-off,
diff --git a/lib.c b/lib.c
index 65394f76..71a9c991 100644
--- a/lib.c
+++ b/lib.c
@@ -94,6 +94,7 @@ val eof_s, eol_s, assert_s;
val error_s, type_error_s, internal_error_s;
val numeric_error_s, range_error_s;
val query_error_s, file_error_s, process_error_s, syntax_error_s;
+val system_error_s;
val gensym_counter_s;
val nothrow_k, args_k, colon_k, auto_k;
@@ -6894,6 +6895,7 @@ static void obj_init(void)
file_error_s = intern(lit("file-error"), user_package);
process_error_s = intern(lit("process-error"), user_package);
syntax_error_s = intern(lit("syntax-error"), user_package);
+ system_error_s = intern(lit("system-error"), user_package);
assert_s = intern(lit("assert"), user_package);
args_k = intern(lit("args"), keyword_package);
diff --git a/lib.h b/lib.h
index fbdc06a8..86cf0b01 100644
--- a/lib.h
+++ b/lib.h
@@ -392,6 +392,7 @@ extern val eof_s, eol_s, assert_s;
extern val error_s, type_error_s, internal_error_s;
extern val numeric_error_s, range_error_s;
extern val query_error_s, file_error_s, process_error_s, syntax_error_s;
+extern val system_error_s;
extern val gensym_counter_s;
#define gensym_counter (deref(lookup_var_l(nil, gensym_counter_s)))
diff --git a/unwind.c b/unwind.c
index 7d729ee0..ff022756 100644
--- a/unwind.c
+++ b/unwind.c
@@ -475,6 +475,7 @@ void uw_init(void)
uw_register_subtype(query_error_s, error_s);
uw_register_subtype(file_error_s, error_s);
uw_register_subtype(process_error_s, error_s);
+ uw_register_subtype(system_error_s, error_s);
uw_register_subtype(assert_s, error_s);
uw_register_subtype(syntax_error_s, error_s);
}