Comment by uecker

Comment by uecker 20 hours ago

2 replies

I would say there is a fair share of cases where programmers were told it is UB when it actually was a compiler bug - or non-conformance.

saagarjha 10 hours ago

That share is a vanishingly small fraction of cases.

  • uecker 7 hours ago

    I am not sure. I saw quite a few of these bugs where programmers were told it is UB but it isn't.

    For example, people showed me

      extern void g(int x);
    
      int f(int a, int b)
      {
        g(b ? 42 : 43);
        return a / b;
      }
    
    as an example on how compilers exploit "time-travelling" UB to optimize code, but it is just a compiler bug that got fixed once I reported it:

    https://developercommunity.visualstudio.com/t/Invalid-optimi...

    Other compilers have similar issues.