Skip to content

Commit 359faa6

Browse files
shoumikhinfacebook-github-bot
authored andcommitted
Handle more args in ET_CHECK_OK_OR_RETURN_ERROR macro. (#1723)
Summary: Pull Request resolved: #1723 . Reviewed By: cccclai Differential Revision: D53131318 fbshipit-source-id: 0a6ae0d17350832f2b3e0b8002b379b1aa42d13e
1 parent 3d650a9 commit 359faa6

File tree

1 file changed

+28
-3
lines changed

1 file changed

+28
-3
lines changed

runtime/core/error.h

Lines changed: 28 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -123,8 +123,14 @@ enum class Error : error_code_t {
123123
* @param[in] ... Optional format string for the log error message and its
124124
* arguments.
125125
*/
126-
#define ET_CHECK_OK_OR_RETURN_ERROR(...) \
127-
ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_SELECT(__VA_ARGS__, 2, 1)(__VA_ARGS__)
126+
#define ET_CHECK_OK_OR_RETURN_ERROR(error__, ...) \
127+
ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR(error__, ##__VA_ARGS__)
128+
129+
// Internal only: Use ET_CHECK_OK_OR_RETURN_ERROR() instead.
130+
#define ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR(...) \
131+
ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_SELECT( \
132+
__VA_ARGS__, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1) \
133+
(__VA_ARGS__)
128134

129135
/**
130136
* Internal only: Use ET_CHECK_OK_OR_RETURN_ERROR() instead.
@@ -150,7 +156,8 @@ enum class Error : error_code_t {
150156
* ET_CHECK_OK_OR_RETURN_ERROR(error_code); // Calls v1
151157
* ET_CHECK_OK_OR_RETURN_ERROR(error_code, "Error message", ...); // Calls v2
152158
*/
153-
#define ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_SELECT(_1, _2, N, ...) \
159+
#define ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_SELECT( \
160+
_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, N, ...) \
154161
ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_##N
155162

156163
// Internal only: Use ET_CHECK_OK_OR_RETURN_ERROR() instead.
@@ -171,3 +178,21 @@ enum class Error : error_code_t {
171178
return et_error__; \
172179
} \
173180
} while (0)
181+
182+
// Internal only: Use ET_CHECK_OK_OR_RETURN_ERROR() instead.
183+
#define ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_3 \
184+
ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_2
185+
#define ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_4 \
186+
ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_2
187+
#define ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_5 \
188+
ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_2
189+
#define ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_6 \
190+
ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_2
191+
#define ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_7 \
192+
ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_2
193+
#define ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_8 \
194+
ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_2
195+
#define ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_9 \
196+
ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_2
197+
#define ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_10 \
198+
ET_INTERNAL_CHECK_OK_OR_RETURN_ERROR_2

0 commit comments

Comments
 (0)