X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=blobdiff_plain;f=qcsrc%2Flib%2Fmisc.qh;h=474484c64e5f85aa279835a1826983c1eb0b080f;hp=dfabebeeb549923efa956428313c9dd898c65abd;hb=HEAD;hpb=0f8553d27e17cc90ccbdd7d56d86bb5136330db7 diff --git a/qcsrc/lib/misc.qh b/qcsrc/lib/misc.qh index dfabebeeb..474484c64 100644 --- a/qcsrc/lib/misc.qh +++ b/qcsrc/lib/misc.qh @@ -1,9 +1,6 @@ #pragma once #ifdef __STDC__ - #define EMPTY() - #define DEFER(id) id EMPTY() - #define EVAL(...) EVAL1(EVAL1(EVAL1(__VA_ARGS__))) #define EVAL1(...) EVAL2(EVAL2(EVAL2(__VA_ARGS__))) #define EVAL2(...) EVAL3(EVAL3(EVAL3(__VA_ARGS__))) @@ -13,12 +10,15 @@ #include "p99.qh" #define OVERLOAD(F, ...) P99_IF_EMPTY(__VA_ARGS__)(P99_PASTE2(F, _00)())(P99_PASTE3(F, _, P00_NARG(__VA_ARGS__))(__VA_ARGS__)) + /** for use within macros */ #define OVERLOAD_(F, ...) P99_IF_EMPTY(__VA_ARGS__)(P99_PASTE2(F, _00)())(P99_PASTE3(F, _, P00_NARG(__VA_ARGS__))(__VA_ARGS__)) + #define OVERLOAD__(F, ...) P99_IF_EMPTY(__VA_ARGS__)(P99_PASTE2(F, _00)())(P99_PASTE3(F, _, P00_NARG(__VA_ARGS__))(__VA_ARGS__)) #else #define EVAL(...) __VA_ARGS__ - #define OVERLOAD_(F, ...) F##_##__VA_COUNT__(__VA_ARGS__) #define OVERLOAD(F, ...) F##_##__VA_COUNT__(__VA_ARGS__) + #define OVERLOAD_(F, ...) F##_##__VA_COUNT__(__VA_ARGS__) + #define OVERLOAD__(F, ...) F##_##__VA_COUNT__(__VA_ARGS__) #endif #if defined(CSQC) @@ -39,11 +39,8 @@ // With block may not contain continue or break #define WITH(type, name, value, block) \ MACRO_BEGIN \ - { \ type __with_save = (name); \ name = (value); \ LAMBDA(block) \ name = __with_save; \ - } MACRO_END - -#define WITHSELF(value, block) WITH(entity, __self, value, block) + MACRO_END