3#define SYS_VM_OPEN_NAMESPACE namespace sysio::vm {
4#define SYS_VM_CLOSE_NAMESPACE }
15#define PARSER_ERRORS(macro) \
16 macro(parser_errors, invalid_magic_number) \
17 macro(parser_errors, invalid_version) \
18 macro(parser_errors, invalid_section_id) \
19 macro(parser_errors, general_parsing_failure)
21#define MEMORY_ERRORS(macro) \
22 macro(memory_errors, bad_alloc) \
23 macro(memory_errors, double_free)
25#define SYSTEM_ERRORS(macro) \
26 macro(system_errors, constructor_failure) \
27 macro(system_errors, unimplemented_failure)
29#define AUXILIARY_ERRORS(macro) \
30 macro(auxiliary_errors, checktime)
39#define _SYS_VM_ASSERT(expr, err_type) \
40 if (!UNLIKELY(expr)) { \
45#define SYS_VM_ASSERT_INVALIDATE(expr, err_type) \
46 if (_valid = false; !UNLIKELY(expr)) { \
#define MEMORY_ERRORS(macro)
#define AUXILIARY_ERRORS(macro)
#define PARSER_ERRORS(macro)
#define SYSTEM_ERRORS(macro)
#define CREATE_ERROR_CODES(CATEGORY, ERRORS)
#define GENERATE_ERROR_CATEGORY(CATEGORY, NAME)