summaryrefslogtreecommitdiff
path: root/libguile/error.h
diff options
context:
space:
mode:
Diffstat (limited to 'libguile/error.h')
-rw-r--r--libguile/error.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/libguile/error.h b/libguile/error.h
index 8a78e8cba..30e906669 100644
--- a/libguile/error.h
+++ b/libguile/error.h
@@ -74,6 +74,28 @@ SCM_INTERNAL void scm_init_error (void);
+#ifndef SCM_MAGIC_SNARFER
+/* Let these macros pass through if
+ we are snarfing; thus we can tell the
+ difference between the use of an actual
+ number vs. the use of one of these macros --
+ actual numbers in SCM_VALIDATE_* and SCM_ASSERT
+ constructs must match the formal argument name,
+ but using SCM_ARG* avoids the test */
+
+#define SCM_ARGn 0
+#define SCM_ARG1 1
+#define SCM_ARG2 2
+#define SCM_ARG3 3
+#define SCM_ARG4 4
+#define SCM_ARG5 5
+#define SCM_ARG6 6
+#define SCM_ARG7 7
+
+#endif /* SCM_MAGIC_SNARFER */
+
+
+
#define SCM_MAKE_VALIDATE(pos, var, pred) \
do { \
SCM_ASSERT_TYPE (SCM_ ## pred (var), var, pos, FUNC_NAME, #pred); \