Open
Description
In the course of #1094, we discovered that our CI considers messages such as the following to be a violation of the //NOWARN
annotation.
[Info][Imprecise] Invalidating expressions: AddrOf(Var(tmp___0, NoOffset)) (05-oob-implicit-deref.c:10:4-10:35)
Normally, the solution might be to not write such annotations, but the problem is that such issues may, e.g., arise from a high fortification level, turning
// This
memset(ptr, 0, four * sizeof(int)); //NOWARN
// into this
size_t tmp = __builtin_object_size(ptr, 0); //NOWARN
__builtin___memset_chk(ptr, 0, four * sizeof(int), tmp); //NOWARN
where with //NOWARN
we want to check the absence of some actual warning rather than some internal.
My proposed solution would be to not consider messages of the severity Info
as violations of the //NOWARN
annotation. Warnings should be given to the user with a higher severity anyway.