<div dir="ltr"><br><br><div class="gmail_quote">On Mon, May 18, 2015 at 6:59 PM <<a href="mailto:jingham@apple.com">jingham@apple.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
> On May 18, 2015, at 4:31 PM, Vince Harron <<a href="mailto:vince@nethacker.com" target="_blank">vince@nethacker.com</a>> wrote:<br>
><br>
> +llvmdev<br>
> -llvm-dev<br>
><br>
><br>
> On Mon, May 18, 2015 at 4:28 PM, Vince Harron <<a href="mailto:vince@nethacker.com" target="_blank">vince@nethacker.com</a>> wrote:<br>
> Hi all,<br>
><br>
> I would like to integrate crash reporting into Android developer tools, starting with lldb and clang.  Google Breakpad seems like a reasonable option.<br>
><br>
> <a href="https://urldefense.proofpoint.com/v2/url?u=https-3A__code.google.com_p_google-2Dbreakpad_&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=Mfk2qtn1LTDThVkh6-oGglNfMADXfJdty4_bhmuhMHA&m=uiaN8XNC8Pql8SCiB5g8Yh7MlX8r_PZ3IIAP4uRV5f8&s=yxfGJeYIrRr3OHjwB5seDvhLjmF3m9R5Z5CO23ntHhI&e=" target="_blank">https://code.google.com/p/google-breakpad/</a><br>
><br>
> Of course, it will only be enabled when the user has allowed it.<br>
><br>
> The LLDB project is interested but it makes sense to us to push crash reporting down into llvm to make it available to all llvm projects.<br>
><br>
> There are a couple of options here:<br>
><br>
> 1) integrate this only downstream in our repo<br>
> 2) integrate in lldb ToT, defaulted to off by #defines<br>
> 3) integrate in lldb ToT without #define requirements<br>
><br>
> I would prefer #3<br>
><br>
> Thoughts?<br>
><br>
><br>
<br>
I would prefer #3.  You already have to assemble a bunch of pieces to start doing lldb development, I'd rather not add another.<br>
<br>
Also, I'd prefer to have this OFF for debug builds: getting reports of development lldb's crashing is not helpful for anything other than telling whether I (or you, or Greg...) are having a good day...<br>
<br>
If the "allow crash reporting" is a system or user-wide setting, then the best way to do this and NOT force all lldb developers to turn off crash-reporting for the lldb installed on their system is to have some defines that are not set in the debug build.<br></blockquote><div><br></div><div>What about a debugger setting like debugger.enable-crash-reporting which defaults to False in debug builds and true in release builds.  Or just always defaults to False unless you build with a specific preprocessor define, but you can still turn it on in the application by changing the setting.</div><div><br></div><div>Plus this gives users a convenient means to opt out of it, which is usually desirable when it comes to things that collect data.</div></div></div>