On Tue, Jun 09, 2020 at 02:09:06PM +0200, Martin Liška wrote: > - return ((sanitize_flags_p (SANITIZE_ADDRESS, caller) > - == sanitize_flags_p (SANITIZE_ADDRESS, callee)) > - && (sanitize_flags_p (SANITIZE_POINTER_COMPARE, caller) > - == sanitize_flags_p (SANITIZE_POINTER_COMPARE, callee)) > - && (sanitize_flags_p (SANITIZE_POINTER_SUBTRACT, caller) > - == sanitize_flags_p (SANITIZE_POINTER_SUBTRACT, callee))); > + const sanitize_code codes[] = > + { > + SANITIZE_ADDRESS, > + SANITIZE_THREAD, > + SANITIZE_UNDEFINED, > + SANITIZE_UNDEFINED_NONDEFAULT > + }; > + > + for (unsigned i = 0; i < sizeof (codes) / sizeof (codes[0]); i++) > + if (sanitize_flags_p (codes[i], caller) > + != sanitize_flags_p (codes[i], callee)) > + return false;
Sorry for not writing everything at once, but are the SANITIZER_POINTER_{COMPARE,SUBTRACT} differences unimportant? Jakub