Avoid UB in test selection macro. (#3407)
This fixes the gcc "warning: this use of "defined" may not be portable [-Wexpansion-to-defined]" See discussion in http://bugs.python.org/issue29505
This commit is contained in:
parent
738b7d9766
commit
78ebc73f9b
|
@ -105,16 +105,14 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
|
|||
|
||||
int rv = 0;
|
||||
|
||||
#define _Py_FUZZ_YES(test_name) (defined(_Py_FUZZ_##test_name) || !defined(_Py_FUZZ_ONE))
|
||||
#if _Py_FUZZ_YES(fuzz_builtin_float)
|
||||
#if !defined(_Py_FUZZ_ONE) || defined(_Py_FUZZ_fuzz_builtin_float)
|
||||
rv |= _run_fuzz(data, size, fuzz_builtin_float);
|
||||
#endif
|
||||
#if _Py_FUZZ_YES(fuzz_builtin_int)
|
||||
#if !defined(_Py_FUZZ_ONE) || defined(_Py_FUZZ_fuzz_builtin_int)
|
||||
rv |= _run_fuzz(data, size, fuzz_builtin_int);
|
||||
#endif
|
||||
#if _Py_FUZZ_YES(fuzz_builtin_unicode)
|
||||
#if !defined(_Py_FUZZ_ONE) || defined(_Py_FUZZ_fuzz_builtin_unicode)
|
||||
rv |= _run_fuzz(data, size, fuzz_builtin_unicode);
|
||||
#endif
|
||||
#undef _Py_FUZZ_YES
|
||||
return rv;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue