<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Mon, Jul 10, 2017 at 2:36 PM Peter Lawrence <<a href="mailto:peterl95124@sbcglobal.net">peterl95124@sbcglobal.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">The question is what should LLVM do with UB in general, saying that<br>
we are going to change one specific idiom from undefined to defined glosses<br>
over the real question: why should we ever optimize / delete any UB at all ?<br>
<br>
This “depressing and faintly terrifying thing” as you call it, should be viewed not as<br>
an opportunity for optimization, but rather as the source of bugs that need to be<br>
warned about at the very least.<br>
<br>
The current action is to delete UB (without warning), is that really right ?<br>
Who can possibly benefit from this optimization ?<br>
And how can that ever outweigh the harm in not reporting an error ?<br>
Why are we expending any effort at all to optimize something that just<br>
about everyone agrees should always be avoided ?<br>
<br>
These last questions are all rhetorical so no need to answer them, the problem<br>
as I see it now is that everyone CC'ed on this email probably by now would agree<br>
privately that optimizing away undefined behavior is wrong, but no one wants<br>
to be the first to say so publicly. We’re stuck in a log-jam. We need someone like<br>
you to take that first step so the rest can go along.<br>
<br>
Please help in un-jamming the current log-jam.<br></blockquote><div><br></div><div>As several others have pointed out, we are not in a log-jam and your hypothesis about how people feel is false.</div><div><br></div><div>However, I also want to point out that using rhetorical questions (or more broadly, rhetorical devices and techniques) is probably not the best approach for any of these discussions. And down this path comes a form of dialog that has been a problem in prior discussions, so I strongly urge you to phrase your emails differently.</div><div><br></div><div>If you want to persuade people on this list about how LLVM should work, I would suggest that you to avoid rhetoric and instead focus on actually making changes to LLVM (it is open source) and showing the empirical results of the experiment.</div></div></div>