> If we segfault for printf("%d\n", 2+2), the bug would not be in this > category. If we printed 5, it would be.
So what if the printf statement is executed only once every leap year? What if it segfaults only if you have one out of several thousand address space randomization patterns? Your distinction has no practical value when considering miscompilations of single translation units, since the triggering of the bug depends on the miscompiled function being called, and being called with just the right preconditions to trigger the bug.