[cfe-dev] External Symbolizer with ubsan

Richard Smith richard at metafoo.co.uk
Tue Feb 26 13:00:48 PST 2013


On Tue, Feb 26, 2013 at 12:20 PM, zapadinsky <zapadinsky at gmail.com> wrote:

> >> -fsanitize=integer somehow print the line number and character of an
> >> operator raised an overflow error. Why enum sanitizer needs symbolizer?
> >> There was an idea to print the stack trace?
>
> >Two things: firstly, ubsan can't currently determine the source location
> >for all checks at build time; for a few, we work out the location based on
> >return address at runtime. That's just due to incomplete implementation.
> >Secondly, as you suspect, we want to include a stack trace eventually.
>
> Yes stack trace would be a great feature for all ubsan checks. But now enum
> sanitizer signalling a problem line dozen of times. And printing the stack
> trace each time will hang debug process...
>

? Each location should only be diagnosed once, even though we don't list a
column-accurate location in the diagnostic.


> It is not obvious why it is so different from integer sanitizer which can
> determine the source location and signal problem line only once. Integer
> sanitizer looks rather mature compared to enum sanitizer.


As I said, it's just due to incomplete implementation. Patches welcome :)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20130226/faa6c193/attachment.html>


More information about the cfe-dev mailing list