<div dir="ltr"><span style="font-family:arial,sans-serif;font-size:13px">> Just as a small data point, with an instrumented program and</span><br style="font-family:arial,sans-serif;font-size:13px"><span style="font-family:arial,sans-serif;font-size:13px">uninstrumented libc++ I see 575 msan failures without extern templates,</span><br style="font-family:arial,sans-serif;font-size:13px">
<span style="font-family:arial,sans-serif;font-size:13px">and 724 with. If libc++ is instrumented, it's more like 200 (and many of</span><br style="font-family:arial,sans-serif;font-size:13px"><span style="font-family:arial,sans-serif;font-size:13px">these look like they're just because I've messed up using the</span><br style="font-family:arial,sans-serif;font-size:13px">
<span style="font-family:arial,sans-serif;font-size:13px">instrumented library with the instrumented executable).</span><div><span style="font-family:arial,sans-serif;font-size:13px"><br></span></div><div><span style="font-family:arial,sans-serif;font-size:13px">A large amount of the test failures w/ MSAN are because some tests replace operator new and operator delete. This causes a linking error.</span></div>
<div><font face="arial, sans-serif">I don't have specific numbers for the amount of tests that do this but you should take that into consideration.</font></div><div><font face="arial, sans-serif"><br></font></div><div>
<font face="arial, sans-serif"><br></font></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Sun, Aug 17, 2014 at 7:15 PM, Howard Hinnant <span dir="ltr"><<a href="mailto:howard.hinnant@gmail.com" target="_blank">howard.hinnant@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="">On Aug 17, 2014, at 9:06 PM, Justin Bogner <<a href="mailto:mail@justinbogner.com">mail@justinbogner.com</a>> wrote:<br>

<br>
> I really don't think it's worth the cost of insantiating these very<br>
> fundamental templates in *every single user* to work around a limitation<br>
> in the memory sanitizer. This is an unreasonable amount of overhead for<br>
> standard library types.<br>
<br>
</div>Always measure.  I’m not saying you’re wrong.  I’m saying you’re stating a performance conclusion without measurements (which should never be acceptable).<br>
<span class="HOEnZb"><font color="#888888"><br>
Howard<br>
<br>
</font></span></blockquote></div><br></div>