¿Cómo suprimir algunos errores de desbordamiento de enteros sin signo de UBsan?

La mayoría de mi-fsanitize=unsigned-integer-overflow los errores son errores, pero a veces lo uso explícitamente como estaba previsto, lo que hace que UBSan produzca falsos positivos.

¿Hay alguna manera de desactivar la comprobación UBSan unsigned-integer-overflow para una expresión particular?

EDITAR en respuesta al comentario de Shafik, aquí hay un ejemplo:

unsigned a = 0;
unsigned b = a - 1; // error: unsigned integer overflow

La mayoría de las veces es un error, a veces no lo es. Con UBSan uno puede encontrar cada vez que sucede, corregir los errores, pero no he encontrado una manera de silenciar los falsos positivos.

EDITAR 2: para habilitar la comprobación, uno debe pasar-fsanitize=integer (para habilitar todas las comprobaciones de enteros) ofsanitize=unsigned-integer-overflow. De los comentarios a continuación, parece que la verificación solo está disponible en clang y aún no en GCC.

Respuestas a la pregunta(2)

Su respuesta a la pregunta