@@ -874,15 +874,16 @@ namespace { // Anonymous namespace which is translation-unit-specific; certain s
874
874
#ifdef NO_ANTITHESIS_SDK
875
875
876
876
#ifndef ANTITHESIS_SDK_ALWAYS_POLYFILL
877
- #define ANTITHESIS_SDK_ALWAYS_POLYFILL
877
+ #define ANTITHESIS_SDK_ALWAYS_POLYFILL (...)
878
878
#endif
879
879
880
880
#ifndef ANTITHESIS_SDK_SOMETIMES_POLYFILL
881
- #define ANTITHESIS_SDK_SOMETIMES_POLYFILL
881
+ #define ANTITHESIS_SDK_SOMETIMES_POLYFILL (...)
882
882
#endif
883
883
884
884
#ifndef ANTITHESIS_SDK_ALWAYS_OR_UNREACHABLE_POLYFILL
885
- #define ANTITHESIS_SDK_ALWAYS_OR_UNREACHABLE_POLYFILL ANTITHESIS_SDK_ALWAYS_POLYFILL
885
+ #define ANTITHESIS_SDK_ALWAYS_OR_UNREACHABLE_POLYFILL (...) \
886
+ ANTITHESIS_SDK_ALWAYS_POLYFILL (__VA_ARGS__)
886
887
#endif
887
888
888
889
#define ALWAYS (cond, message, ...) \
@@ -912,15 +913,17 @@ namespace { // Anonymous namespace which is translation-unit-specific; certain s
912
913
#define SOMETIMES_LESS_THAN_OR_EQUAL_TO (val, threshold, message, ...) \
913
914
ANTITHESIS_SDK_SOMETIMES_POLYFILL ((val <= threshold), message, __VA_ARGS__)
914
915
#define ALWAYS_SOME (pairs, message, ...) \
915
- ANTITHESIS_SDK_ALWAYS_POLYFILL ([&](){ \
916
- for (std::pair<std::string, bool > pair : pairs) \
916
+ ANTITHESIS_SDK_ALWAYS_POLYFILL (([&](){ \
917
+ std::initializer_list<std::pair<std::string, bool >> ps = pairs; \
918
+ for (auto const & pair : ps) \
917
919
if (pair.second ) return true ; \
918
- return false ; }(), message, __VA_ARGS__)
920
+ return false ; }()) , message, __VA_ARGS__)
919
921
#define SOMETIMES_ALL (pairs, message, ...) \
920
- ANTITHESIS_SDK_SOMETIMES_POLYFILL ([&](){ \
921
- for (std::pair<std::string, bool > pair : pairs) \
922
+ ANTITHESIS_SDK_SOMETIMES_POLYFILL (([&](){ \
923
+ std::initializer_list<std::pair<std::string, bool >> ps = pairs; \
924
+ for (auto const & pair : ps) \
922
925
if (!pair.second ) return false ; \
923
- return true ; }(), message, __VA_ARGS__)
926
+ return true ; }()) , message, __VA_ARGS__)
924
927
925
928
#else
926
929
0 commit comments