<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On 19.05.2011, at 22:36, Douglas Gregor wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div><br>On May 19, 2011, at 3:15 PM, Tomasz Dabrowski wrote:<br><br><blockquote type="cite">Hello,<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">is it possible to disable POD check for variadic functions? For example:<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">error: cannot pass object of non-POD type 'string' through variadic<br></blockquote><blockquote type="cite">function; call will abort at runtime [-Wnon-pod-varargs]<br></blockquote><blockquote type="cite">for:<br></blockquote><blockquote type="cite">struct string { const char * str; string() {}; };<br></blockquote><blockquote type="cite">string s;<br></blockquote><blockquote type="cite">printf("%s", s);<br></blockquote><font class="Apple-style-span" color="#006312"><br></font><br>It makes sense to model the semantics properly for C++0x; I don't see any specific reason to disable this check.<br></div></blockquote></div><br><div>Francois might want to - I think MFC"s CString was modeled carefully so that passing it to printf would do the right thing, and I suspect there's quite a bit of code relying on this out there.</div><div><br></div><div>Sebastian</div></body></html>