On 01/07/2014 05:20 PM, Tom Lane wrote:
> David Rowley <dgrowleyml@gmail.com> writes:
>> I think it will be like Andres said up thread, to stop multiple evaluations
>> of the expression passed to the macro.
>
> Exactly. We are not going to risk multiple evals in a macro as commonly
> used as elog/ereport; the risk/benefit ratio is just too high.
>
> I don't see anything wrong with suppressing this warning by inserting
> an additional return statement. The code is already plastered with such
> things, from the days before we had any unreachability hints in
> elog/ereport. And as I said upthread, there is no good reason to suppose
> that the unreachability hints are always recognized by every compiler.
> I take this behavior of MSVC as proof of that statement.
Yeah, I was just surprised because I thought MSVC understood it.
Committed the additional return statement.
- Heikki