No they are not.
When your program invoke UB, it is a bug in your program, and not in the compiler.
The compiler author are helping you with things like -fsanitize=undefined. Or even lets you define some behavior which is normaly undefined with things like -fwrapv, -fno-strict-aliasing, -fno-delete-null-pointer-checks
But you are asking the compiler to optimize your program, if you give an invalid program to optimize, you get an invalid result. There is no bug there.
Whether it's a bug or not depends on what the desired behavior is. People disagree on what the desired behavior, thus people disagree about whether they are bugs.
If your desired behavior is to obey the spec and run as quickly as possible then they are not bugs. The user hostility could be argued to be in the spec.