<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br>On Mar 1, 2011, at 8:05 PM, Erik Olofsson wrote:<br><br><blockquote type="cite">Adds support for OutputDebugString to raw_ostream as well as one object to access a virtualized errs and outs. This is needed for subsequent patches in clang so you can redirect errs and outs to OutputDebugString. The rationale for needing this is that debugging from Visual Studio will not allow you to capture stdout and stderr into its Output window but OutputDebugString is captured there.<br></blockquote><div><br></div><div>Hmm. It's not even possible to view the output of a classic</div><div>"hello world"?</div><div><br><blockquote type="cite">This change (in clang...) will also be useful if you want to redirect compiler output you can just create your own raw_output_streams and pass to the compiler functions.<br><br> <br><br>Together with MSVC style diagnostics this really helps in clang development where you can get from diagnostics directly to the code in question when debugging.<br></blockquote><div><br></div></div><div>Would it be possible to achieve what you want by extending dbgs()?</div><div>If not, how should code decide between using dbgs() and debugouts()?</div><div><div><br></div><div>What's the purpose of the raw_output_streams class? Are you expecting</div><div>to migrate code that uses errs() and outs() to using it? If so,</div><div>that's quite invasive. If not, what's the purpose?</div><div><div><br></div><div>Dan</div><div><br></div></div></div></body></html>