aboutsummaryrefslogtreecommitdiff
path: root/include/std/misc.h
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2019-03-18 23:47:45 +0100
committerdec05eba <dec05eba@protonmail.com>2020-07-25 14:36:46 +0200
commit2323ca6c9ec3c8ee76b9acf13745b80b92952a6a (patch)
tree93013237dbcb0fa96ceb5f3c026fd040aff464cf /include/std/misc.h
parent5a93c32a59775cd1be4b4f450e8230016b434366 (diff)
Add struct, import caching, binop ops etc
Diffstat (limited to 'include/std/misc.h')
-rw-r--r--include/std/misc.h16
1 files changed, 14 insertions, 2 deletions
diff --git a/include/std/misc.h b/include/std/misc.h
index b979d9c..e28ed48 100644
--- a/include/std/misc.h
+++ b/include/std/misc.h
@@ -1,15 +1,27 @@
#ifndef AMALGAM_MISC_H
#define AMALGAM_MISC_H
+#include <stdio.h>
+
+#ifdef AMAL_PEDANTIC
+ #define return_if_debug_msg do {} while(0)
+ #define cleanup_if_debug_msg do {} while(0)
+#else
+ #define return_if_debug_msg do { fprintf(stderr, "Return from %s:%d\n", __FUNCTION__, __LINE__); } while(0)
+ #define cleanup_if_debug_msg do { fprintf(stderr, "cleanup from %s:%d\n", __FUNCTION__, __LINE__); } while(0)
+#endif
+
#define return_if_error(result) \
do { \
int return_if_result; \
return_if_result = (result); \
- if((return_if_result) != 0) \
+ if((return_if_result) != 0) { \
+ return_if_debug_msg; \
return return_if_result; \
+ } \
} while(0)
-#define cleanup_if_error(result) do { if((result) != 0) goto cleanup; } while(0)
+#define cleanup_if_error(result) do { if((result) != 0) { cleanup_if_debug_msg; goto cleanup; } } while(0)
#if defined(__GNUC__) && __GNUC__ >= 4
#define CHECK_RESULT __attribute__ ((warn_unused_result))