<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Sun, Jun 1, 2014 at 11:24 PM, Rusty Russell <span dir="ltr"><<a href="mailto:rusty@rustcorp.com.au" target="_blank">rusty@rustcorp.com.au</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="">The reason I never implemented this is because I was worried about<br></div>
idempotency failure.  Your functions double-evaluate, which bad form<br>
even if they were named MIN and MAX and thus clearly macros.<br>
<br>
Unfortunately it's not possible to create an idempotent min or max<br>
without gcc extensions which operates on 64 bit types (or whatever the<br>
largest integer type is).<br></blockquote><div><br></div><div>C11’s _Generic keyword should be able to help. Unlike C++, you need to write out all the functions and explicitly specify the overloading, but it’s possible.</div>
<div><br></div><div>—Joel</div></div><br></div></div>