dblaikie added a comment.

>> Generally LLVM's pretty hard to fathom in a non-asserts build anyway, right? 
>> (that's the first thing any of us do is reproduce with an assertions build 
>> that may fail miles away from where a crash occurred because an invariant 
>> was violated much earlier) - that `cast` won't crash/will continue on 
>> happily in a non-asserts build seems like a much larger hole to 
>> debuggability of a non-asserts build than any unreachable?
>
> This might be true -- personally, I tend to only use debug builds with MSVC 
> because RelWithDebInfo isn't sufficient for my daily needs. However, I've 
> definitely heard of folks who use RelWithDebInfo for their daily work 
> (RelWithDebInfo + Asserts specifically, IIRC) because of the improved build 
> times and runtime performance; we should be sure we're not disrupting that 
> workflow too much.

Changing `assert(0)` to `llvm_unreachable` does not change the behavior of any 
+Asserts build. The behavior of unreachable is the same as assert(0) in a 
+Asserts build.

Is this observation enough to undeadlock this conversation?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D135551/new/

https://reviews.llvm.org/D135551

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to