Skip to content

Commit 1bd1cbf

Browse files
committed
fix: Warnings when compiling with -pendantic
Signed-off-by: Diogo Behrens <[email protected]>
1 parent 6d102ce commit 1bd1cbf

File tree

11 files changed

+87
-70
lines changed

11 files changed

+87
-70
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ This project partially comply with [Semantic Versioning][].
88
## Unreleased
99

1010
- Fixed warnings for code using vatomic C++
11+
- Fixed warnings for C99. Except for dispatch.h, vatomic is not C99 compliant.
1112

1213
## [2.4.0]
1314

include/vsync/atomic/internal/macros.h

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (C) Huawei Technologies Co., Ltd. 2023-2024. All rights reserved.
2+
* Copyright (C) Huawei Technologies Co., Ltd. 2023-2025. All rights reserved.
33
* SPDX-License-Identifier: MIT
44
*/
55

@@ -84,7 +84,7 @@
8484
* @param T target type vatomic32_t, vuint32_t, vuint64_t, void*, ...
8585
* @param v value to cast
8686
******************************************************************************/
87-
#define V_CAST(T, v) ((V_CAST_UNION(T, __typeof__(v))){.in = v}.out)
87+
#define V_CAST(T, v) ((V_CAST_UNION(T, __typeof__(v))){._ = {.in = v}}.out)
8888

8989
/*******************************************************************************
9090
* @def V_CAST_UNION
@@ -105,9 +105,9 @@
105105
\
106106
out_type out; \
107107
struct { \
108-
char pad[V_CAST_PAD_SIZE(out_type, in_type)]; \
108+
V_CAST_PAD_SIZE(out_type, in_type) \
109109
in_type in; \
110-
}; \
110+
} _; \
111111
}
112112

113113
/* size greater or equal */
@@ -118,10 +118,11 @@
118118

119119
/* padding for big endian */
120120
#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
121-
#define V_CAST_PAD_SIZE(out_type, in_type) 0
121+
#define V_CAST_PAD_SIZE(out_type, in_type)
122122
#else
123123
#define V_CAST_PAD_SIZE(out_type, in_type) \
124-
(V_CAST_SZGE(out_type, in_type) ? V_CAST_SZDIFF(out_type, in_type) : 0)
124+
(V_CAST_SZGE(out_type, in_type) ? \
125+
char pad[V_CAST_SZDIFF(out_type, in_type)] :)
125126
#endif
126127

127128
#endif /* VATOMIC_INTERNAL_MACROS_H */

include/vsync/common/macros.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (C) Huawei Technologies Co., Ltd. 2023-2024. All rights reserved.
2+
* Copyright (C) Huawei Technologies Co., Ltd. 2023-2025. All rights reserved.
33
* SPDX-License-Identifier: MIT
44
*/
55

@@ -38,7 +38,7 @@
3838

3939
#define V_NR_VARS_(m, a, b, c, d, e, f, g, h, i, j, k, n, ...) m##n
4040
#define V_NR_VARS(m, ...) \
41-
V_NR_VARS_(m, ##__VA_ARGS__, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0)
41+
V_NR_VARS_(m, __VA_ARGS__, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0)
4242

4343
/*******************************************************************************
4444
* unused args
@@ -125,7 +125,7 @@
125125
*/
126126
#define V_UNUSED(...) \
127127
do { \
128-
V_NR_VARS(V_UNUSED_, ##__VA_ARGS__)(__VA_ARGS__); \
128+
V_NR_VARS(V_UNUSED_, __VA_ARGS__)(__VA_ARGS__); \
129129
} while (0)
130130

131131
/**

template/test-atomic/mt_test_await_TY.c.in

Lines changed: 41 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ _tmpl_end;
1111
#include <vsync/atomic.h>
1212
/* keep number of threads even */
1313
_tmpl_begin(TY = [[u8; u16; u32; u64]]);
14-
#define IT 10
14+
#define IT 10
1515
#define V_DOUBLE(_v_) ((_v_) * 2)
1616
_tmpl_end;
1717
#define MAX_THREADS 10
@@ -39,6 +39,11 @@ _tmpl_map(MAP_CAST_u8, );
3939
_tmpl_map(MAP_CAST_u16, );
4040
_tmpl_map(MAP_CAST_u32, );
4141
_tmpl_map(MAP_CAST_u64, );
42+
_tmpl_map(MAP_TP_ptr, vuintptr_t);
43+
_tmpl_map(MAP_TP_u8, TT);
44+
_tmpl_map(MAP_TP_u16, TT);
45+
_tmpl_map(MAP_TP_u32, TT);
46+
_tmpl_map(MAP_TP_u64, TT);
4247
_tmpl_dl; // -------------------------------------------------------------------
4348
_tmpl_dl; // Mid vals
4449
_tmpl_dl; // -------------------------------------------------------------------
@@ -76,8 +81,9 @@ static inline void *
7681
mt_atomic_TY_await_OP_MS_run(void *args)
7782
{
7883
vsize_t tid = (vsize_t)(vuintptr_t)args;
79-
(void)__vatomic_await_OP_MS(&g_shared, MAP_CAST_TY(MAP_MID_TY + (TT)tid));
80-
__vatomic_write(&g_shared, MAP_CAST_TY(MAP_MID_TY + (TT)tid + 1U));
84+
(void)__vatomic_await_OP_MS(&g_shared,
85+
MAP_CAST_TY(MAP_MID_TY + (MAP_TP_TY)tid));
86+
__vatomic_write(&g_shared, MAP_CAST_TY(MAP_MID_TY + (MAP_TP_TY)tid + 1U));
8187
return NULL;
8288
}
8389
static inline void
@@ -86,7 +92,7 @@ mt_atomic_TY_await_OP_MS(void)
8692
__vatomic_init(&g_shared, MAP_CAST_TY MAP_MID_TY);
8793
pthread_t t[MAX_THREADS];
8894
for (vsize_t i = 0; i < MAX_THREADS; i++)
89-
pthread_create(&t[i], 0, mt_atomic_TY_await_OP_MS_run, (void*)i);
95+
pthread_create(&t[i], 0, mt_atomic_TY_await_OP_MS_run, (void *)i);
9096
for (vsize_t i = 0; i < MAX_THREADS; i++)
9197
pthread_join(t[i], 0);
9298
TT cur = __vatomic_read(&g_shared);
@@ -98,7 +104,7 @@ _tmpl_dl; // -------------------------------------------------------------------
98104
_tmpl_dl; // await eq_add, eq_set
99105
_tmpl_dl; // -------------------------------------------------------------------
100106
_tmpl_map(MAP_NEW_VAl_add, 1);
101-
_tmpl_map(MAP_NEW_VAl_set, (MAP_MID_TY + (TT)tid + 1));
107+
_tmpl_map(MAP_NEW_VAl_set, (MAP_MID_TY + (MAP_TP_TY)tid + 1));
102108
_tmpl_begin(TY = [[u8; u16; u32; u64; ptr]], MO = [[seq]], OP = [[add; set]],
103109
$F_ptr_set = BLK_KEEP, $F_ptr = BLK_SKIP);
104110
$F_TY_OP;
@@ -108,8 +114,8 @@ $F_TY_OP;
108114
static inline void *
109115
mt_atomic_TY_await_eq_OP_MS_run(void *args)
110116
{
111-
vsize_t tid = (vsize_t)(vuintptr_t)args;
112-
TT await_val = MAP_CAST_TY(MAP_MID_TY + (TT)tid);
117+
vsize_t tid = (vsize_t)(vuintptr_t)args;
118+
TT await_val = MAP_CAST_TY(MAP_MID_TY + (MAP_TP_TY)tid);
113119
TT new_val = MAP_CAST_TY(MAP_NEW_VAl_OP);
114120
(void)__vatomic_await_eq_OP_MS(&g_shared, await_val, new_val);
115121
return NULL;
@@ -120,7 +126,7 @@ mt_atomic_TY_await_eq_OP_MS(void)
120126
__vatomic_init(&g_shared, MAP_CAST_TY MAP_MID_TY);
121127
pthread_t t[MAX_THREADS];
122128
for (vsize_t i = 0; i < MAX_THREADS; i++)
123-
pthread_create(&t[i], 0, mt_atomic_TY_await_eq_OP_MS_run, (void*)i);
129+
pthread_create(&t[i], 0, mt_atomic_TY_await_eq_OP_MS_run, (void *)i);
124130
for (vsize_t i = 0; i < MAX_THREADS; i++)
125131
pthread_join(t[i], 0);
126132
TT cur = __vatomic_read(&g_shared);
@@ -138,8 +144,8 @@ _tmpl_begin(TY = [[u8; u16; u32; u64]], MO = [[seq]], OP = [[sub]]);
138144
static inline void *
139145
mt_atomic_TY_await_eq_OP_MS_run(void *args)
140146
{
141-
vsize_t tid = (vsize_t)(vuintptr_t)args;
142-
TT wait_val = (MAP_MID_TY + MAX_THREADS) - (TT)tid;
147+
vsize_t tid = (vsize_t)(vuintptr_t)args;
148+
TT wait_val = (MAP_MID_TY + MAX_THREADS) - (MAP_TP_TY)tid;
143149
(void)__vatomic_await_eq_OP_MS(&g_shared, wait_val, 1);
144150
return NULL;
145151
}
@@ -149,7 +155,7 @@ mt_atomic_TY_await_eq_OP_MS(void)
149155
__vatomic_init(&g_shared, MAP_MID_TY + MAX_THREADS);
150156
pthread_t t[MAX_THREADS];
151157
for (vsize_t i = 0; i < MAX_THREADS; i++)
152-
pthread_create(&t[i], 0, mt_atomic_TY_await_eq_OP_MS_run, (void*)i);
158+
pthread_create(&t[i], 0, mt_atomic_TY_await_eq_OP_MS_run, (void *)i);
153159
for (vsize_t i = 0; i < MAX_THREADS; i++)
154160
pthread_join(t[i], 0);
155161
TT cur = __vatomic_read(&g_shared);
@@ -206,7 +212,7 @@ mt_atomic_TY_await_COND_MS(void)
206212
__vatomic_init(&g_shared, MAP_CAST_TY MAP_MID_TY);
207213
pthread_t t[MAX_THREADS];
208214
for (vsize_t i = 0; i < MAX_THREADS; i++)
209-
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_MS_run, (void*)i);
215+
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_MS_run, (void *)i);
210216
for (vsize_t i = 0; i < MAX_THREADS; i++)
211217
pthread_join(t[i], 0);
212218
TT cur = __vatomic_read(&g_shared);
@@ -239,7 +245,7 @@ mt_atomic_TY_await_COND_MS(void)
239245
__vatomic_init(&g_shared, NULL);
240246
pthread_t t[MAX_THREADS];
241247
for (vsize_t i = 0; i < MAX_THREADS; i++)
242-
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_MS_run, (void*)i);
248+
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_MS_run, (void *)i);
243249
for (vsize_t i = 0; i < MAX_THREADS; i++)
244250
pthread_join(t[i], 0);
245251
TT cur = __vatomic_read(&g_shared);
@@ -261,7 +267,7 @@ mt_atomic_TY_await_COND_add_MS_waiter(void)
261267
{
262268
TT await_val = 0;
263269
for (TT i = 0; i < IT; i++) {
264-
await_val = (MAP_MID_TY MAP_AWAIT_OP_COND i) MAP_AWAIT_OP_COND 1;
270+
await_val = (MAP_MID_TY MAP_AWAIT_OP_COND i)MAP_AWAIT_OP_COND 1;
265271
(void)__vatomic_await_COND_add_MS(&g_shared, await_val, 1);
266272
}
267273
}
@@ -290,12 +296,12 @@ mt_atomic_TY_await_COND_add_MS(void)
290296
__vatomic_init(&g_shared, MAP_MID_TY);
291297
pthread_t t[MAX_THREADS];
292298
for (vsize_t i = 0; i < MAX_THREADS; i++)
293-
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_add_MS_run, (void*)i);
299+
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_add_MS_run, (void *)i);
294300
for (vsize_t i = 0; i < MAX_THREADS; i++)
295301
pthread_join(t[i], 0);
296-
TT cur = __vatomic_read(&g_shared);
297-
TT expected =
298-
(MAP_MID_TY MAP_AWAIT_OP_COND(MAX_THREADS * IT)) + ((MAX_THREADS / 2) * IT);
302+
TT cur = __vatomic_read(&g_shared);
303+
TT expected = (MAP_MID_TY MAP_AWAIT_OP_COND(MAX_THREADS * IT)) +
304+
((MAX_THREADS / 2) * IT);
299305
assert(cur == expected);
300306
V_UNUSED(cur, expected);
301307
}
@@ -338,7 +344,7 @@ mt_atomic_TY_await_COND_sub_MS(void)
338344
__vatomic_init(&g_shared, MAP_MID_TY);
339345
pthread_t t[MAX_THREADS];
340346
for (vsize_t i = 0; i < MAX_THREADS; i++)
341-
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_sub_MS_run, (void*)i);
347+
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_sub_MS_run, (void *)i);
342348
for (vsize_t i = 0; i < MAX_THREADS; i++)
343349
pthread_join(t[i], 0);
344350
TT cur = __vatomic_read(&g_shared);
@@ -385,7 +391,7 @@ mt_atomic_TY_await_COND_sub_MS(void)
385391
__vatomic_init(&g_shared, MAP_MID_TY);
386392
pthread_t t[MAX_THREADS];
387393
for (vsize_t i = 0; i < MAX_THREADS; i++)
388-
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_sub_MS_run, (void*)i);
394+
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_sub_MS_run, (void *)i);
389395
for (vsize_t i = 0; i < MAX_THREADS; i++)
390396
pthread_join(t[i], 0);
391397
TT cur = __vatomic_read(&g_shared);
@@ -404,8 +410,8 @@ _tmpl_begin(TY = [[u8; u16; u32; u64]], MO = [[seq]], COND = [[gt]]);
404410
static inline void *
405411
mt_atomic_TY_await_COND_set_MS_run(void *args)
406412
{
407-
vsize_t tid = (vsize_t)(vuintptr_t)args;
408-
TT wait_val = MAP_MID_TY + (TT)tid;
413+
vsize_t tid = (vsize_t)(vuintptr_t)args;
414+
TT wait_val = MAP_MID_TY + (MAP_TP_TY)tid;
409415
TT set_val = wait_val + 2;
410416
(void)__vatomic_await_COND_set_MS(&g_shared, wait_val, set_val);
411417
return NULL;
@@ -417,11 +423,11 @@ mt_atomic_TY_await_COND_set_MS(void)
417423
__vatomic_init(&g_shared, init_val);
418424
pthread_t t[MAX_THREADS];
419425
for (vsize_t i = 0; i < MAX_THREADS; i++)
420-
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_set_MS_run, (void*)i);
426+
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_set_MS_run, (void *)i);
421427
for (vsize_t i = 0; i < MAX_THREADS; i++)
422428
pthread_join(t[i], 0);
423429
TT cur = __vatomic_read(&g_shared);
424-
TT expected = init_val + (TT)MAX_THREADS;
430+
TT expected = init_val + (MAP_TP_TY)MAX_THREADS;
425431
assert(cur == expected);
426432
V_UNUSED(cur, expected);
427433
}
@@ -436,8 +442,8 @@ _tmpl_begin(TY = [[u8; u16; u32; u64]], MO = [[seq]], COND = [[ge]]);
436442
static inline void *
437443
mt_atomic_TY_await_COND_set_MS_run(void *args)
438444
{
439-
vsize_t tid = (vsize_t)(vuintptr_t)args;
440-
TT wait_val = MAP_MID_TY + (TT)tid;
445+
vsize_t tid = (vsize_t)(vuintptr_t)args;
446+
TT wait_val = MAP_MID_TY + (MAP_TP_TY)tid;
441447
TT set_val = wait_val + 1;
442448
(void)__vatomic_await_COND_set_MS(&g_shared, wait_val, set_val);
443449
return NULL;
@@ -449,11 +455,11 @@ mt_atomic_TY_await_COND_set_MS(void)
449455
__vatomic_init(&g_shared, init_val);
450456
pthread_t t[MAX_THREADS];
451457
for (vsize_t i = 0; i < MAX_THREADS; i++)
452-
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_set_MS_run, (void*)i);
458+
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_set_MS_run, (void *)i);
453459
for (vsize_t i = 0; i < MAX_THREADS; i++)
454460
pthread_join(t[i], 0);
455461
TT cur = __vatomic_read(&g_shared);
456-
TT expected = init_val + (TT)MAX_THREADS;
462+
TT expected = init_val + (MAP_TP_TY)MAX_THREADS;
457463
assert(cur == expected);
458464
V_UNUSED(cur, expected);
459465
}
@@ -468,8 +474,8 @@ _tmpl_begin(TY = [[u8; u16; u32; u64]], MO = [[seq]], COND = [[lt]]);
468474
static inline void *
469475
mt_atomic_TY_await_COND_set_MS_run(void *args)
470476
{
471-
vsize_t tid = (vsize_t)(vuintptr_t)args;
472-
TT wait_val = MAP_MID_TY - (TT)tid;
477+
vsize_t tid = (vsize_t)(vuintptr_t)args;
478+
TT wait_val = MAP_MID_TY - (MAP_TP_TY)tid;
473479
TT set_val = wait_val - 2;
474480
(void)__vatomic_await_COND_set_MS(&g_shared, wait_val, set_val);
475481
return NULL;
@@ -480,11 +486,11 @@ mt_atomic_TY_await_COND_set_MS(void)
480486
__vatomic_init(&g_shared, MAP_MID_TY - 1);
481487
pthread_t t[MAX_THREADS];
482488
for (vsize_t i = 0; i < MAX_THREADS; i++)
483-
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_set_MS_run, (void*)i);
489+
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_set_MS_run, (void *)i);
484490
for (vsize_t i = 0; i < MAX_THREADS; i++)
485491
pthread_join(t[i], 0);
486492
TT cur = __vatomic_read(&g_shared);
487-
TT expected = (MAP_MID_TY - 1) - (TT)MAX_THREADS;
493+
TT expected = (MAP_MID_TY - 1) - (MAP_TP_TY)MAX_THREADS;
488494
assert(cur == expected);
489495
V_UNUSED(cur, expected);
490496
}
@@ -502,10 +508,10 @@ mt_atomic_TY_await_COND_set_MS_run(void *args)
502508
vsize_t tid = (vsize_t)(vuintptr_t)args;
503509
if (IS_EVEN(tid)) {
504510
(void)__vatomic_await_COND_set_MS(&g_shared, MAP_CAST_TY MAP_MID_TY,
505-
MAP_CAST_TY MAP_MID_TY);
511+
MAP_CAST_TY MAP_MID_TY);
506512
} else {
507513
(void)__vatomic_await_COND_set_MS(&g_shared, MAP_CAST_TY ~MAP_MID_TY,
508-
MAP_CAST_TY ~MAP_MID_TY);
514+
MAP_CAST_TY ~MAP_MID_TY);
509515
}
510516
return NULL;
511517
}
@@ -515,7 +521,7 @@ mt_atomic_TY_await_COND_set_MS(void)
515521
__vatomic_init(&g_shared, MAP_CAST_TY MAP_MID_TY);
516522
pthread_t t[MAX_THREADS];
517523
for (vsize_t i = 0; i < MAX_THREADS; i++)
518-
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_set_MS_run, (void*)i);
524+
pthread_create(&t[i], 0, mt_atomic_TY_await_COND_set_MS_run, (void *)i);
519525
for (vsize_t i = 0; i < MAX_THREADS; i++)
520526
pthread_join(t[i], 0);
521527
TT cur = __vatomic_read(&g_shared);

test/CMakeLists.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22
# SPDX-License-Identifier: MIT
33
target_compile_definitions(vatomic INTERFACE _GNU_SOURCE)
44

5+
# All C code is C99 compliant expect for the dispatch macro. When a test uses
6+
# that macro we do not set pedantic.
7+
set(TEST_C_WARN_OPTS -Wall -Wextra -Werror -Wpedantic)
8+
set(TEST_C_EXT_WARN_OPTS -Wall -Wextra -Werror)
9+
510
if(CMAKE_SYSTEM_PROCESSOR MATCHES riscv)
611
# 8- and 16-bit atomics are taken from the platform's libatomic library.
712
link_libraries(atomic)

test/atomics/CMakeLists.txt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ set(VATOMIC_INC "$<$<BOOL:${include_prop}>:-I$<JOIN:${include_prop},;-I>>")
1515

1616
add_executable(vatomic_pause pause_test.c)
1717
target_link_libraries(vatomic_pause vatomic)
18+
target_compile_options(vatomic_pause PRIVATE ${TEST_C_WARN_OPTS})
1819
v_add_bin_test(NAME vatomic-pause COMMAND vatomic_pause)
1920

2021
# ##############################################################################
@@ -54,6 +55,7 @@ endforeach(CONFIG)
5455

5556
add_executable(vatomic_compile_c vatomic_empty.c)
5657
target_link_libraries(vatomic_compile_c vatomic)
58+
target_compile_options(vatomic_compile_c PRIVATE ${TEST_C_WARN_OPTS})
5759
v_add_bin_test(NAME vatomic-compile-c COMMAND vatomic_compile_c)
5860

5961
# ##############################################################################
@@ -171,14 +173,14 @@ add_custom_target(expand ALL
171173
# test vatomic dispatcher
172174
# ##############################################################################
173175
add_executable(dispatcher_test dispatcher_test.c)
174-
target_compile_options(dispatcher_test PUBLIC ${TEST_OPTS})
176+
target_compile_options(dispatcher_test PRIVATE ${TEST_C_EXT_WARN_OPTS})
175177
target_link_libraries(dispatcher_test vatomic)
176178
v_add_bin_test(NAME dispatcher_test COMMAND dispatcher_test)
177179
# ##############################################################################
178180
# test freestanding
179181
# ##############################################################################
180182
add_executable(freestanding_test freestanding_test.c)
181-
target_compile_options(freestanding_test PUBLIC ${TEST_OPTS} -nostdinc)
183+
target_compile_options(freestanding_test PUBLIC ${TEST_C_WARN_OPTS} -nostdinc)
182184
configure_file(include/vfreestanding.h.tpl include/vfreestanding.h)
183185
target_include_directories(freestanding_test
184186
PRIVATE ${CMAKE_CURRENT_BINARY_DIR}/include)

test/atomics_basic/CMakeLists.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,12 @@ foreach(TC_VARIANT ${TC_VARIANTS})
122122
configure_file(vatomic_basic.c.in ${TC}.c)
123123
add_executable(${TC} ${TC}.c)
124124
target_link_libraries(${TC} vatomic pthread)
125+
if(${TC_VARIANT} STREQUAL dispatch)
126+
target_compile_options(${TC}
127+
PRIVATE ${TEST_C_EXT_WARN_OPTS})
128+
else()
129+
target_compile_options(${TC} PRIVATE ${TEST_C_WARN_OPTS})
130+
endif()
125131

126132
v_add_bin_test(NAME ${TC} COMMAND ${TC})
127133
endforeach()

0 commit comments

Comments
 (0)