Comment #7 on issue 377 by [email protected]: unknown-crash with annotate_contiguous_container
https://code.google.com/p/address-sanitizer/issues/detail?id=377

isn't this the case described in the comments in include/sanitizer/common_interface_defs.h:

  // For AddressSanitizer, 'beg' should be 8-aligned and 'end' should
  // be either 8-aligned or it should point to the end of a separate heap-,
  // stack-, or global- allocated buffer.

Note the the struct foo is 8-aligned due to the first field, and thus the end of
buf is not the end of the foo object -- there is an extra 4-byte padding.
This is that padding that is not get unpoisoned and you end up with poisoned
region on stack.

This is an unfortunate limitation of asan caused by it's alignment requirements.


--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

--
You received this message because you are subscribed to the Google Groups 
"address-sanitizer" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to