<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Oct 12, 2009, at 11:44 AM, Nick Lewycky wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div class="gmail_quote">2009/10/12 Dan Gohman <span dir="ltr"><<a href="mailto:gohman@apple.com">gohman@apple.com</a>></span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"> <div class="im"><br> On Oct 11, 2009, at 3:25 PM, Nick Lewycky wrote:<br> <br> > This patch adds memory use markers as described in <a href="http://nondot.org/sabre/LLVMNotes/MemoryUseMarkers.txt" target="_blank">http://nondot.org/sabre/LLVMNotes/MemoryUseMarkers.txt</a><br> >  . The bulk of the patch makes it possible to have intrinsics which<br> > return {}.<br> <br> </div>Hi Nick,<br> <br> The use of {} here is clever, but I don't think it's correct. Since {}<br> has<br> no members, the set of values has exactly one element, which means<br> that all values of type {} can be assumed to be equivalent. Please use<br> something like opaque* instead.<br></blockquote><div><br>I brought that up with Chris much earlier on (since I would've had this patch done a month ago were it not for the need to support {}) but he was adamant that {} was the correct type for these. I was suggesting metadata type though; opaque types require a name in the module.<br></div></div></blockquote></div><br><div>Dan convinced me that {} was a bad way to go, lets use "{}*" instead, does that work for you?</div><div><br></div><div>-Chris</div></body></html>