Message ID | 86293FB8-8BAC-4680-A829-F06C6FA6CCF5@gmail.com |
---|---|
State | New |
Headers | show |
Third and final patch of the series, dealing this time with the test output patterns for darwin when llvm-symbolizer is not present. Here, the only issue is cosmetic: we have an extra space after each frame pointer, i.e. #0 0x106ddaf14 (/Users/fx/devel/gcc/irun2/./a.out+0x100000f14) #1 0x7fff942575c8 (/usr/lib/system/libdyld.dylib+0x35c8) instead of: #0 0x101777f14 in main /Users/fx/devel/gcc/irun2/use-after-free-1.c:9 #1 0x7fff942575c8 in start (/usr/lib/system/libdyld.dylib+0x35c8) The attached patch, committed as r217817, trivially fixes the output by allowing multiple spaces. With it, we have only one remaining darwin asan failure: PR59148 (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59148) 2014-11-19 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> PR sanitizer/63939 * c-c++-common/asan/global-overflow-1.c: Allow extra spaces after stack pointer address, to fit darwin output when symbolizer is not present. * c-c++-common/asan/heap-overflow-1.c: Likewise. * c-c++-common/asan/memcmp-1.c: Likewise. * c-c++-common/asan/misalign-1.c: Likewise. * c-c++-common/asan/misalign-2.c: Likewise. * c-c++-common/asan/null-deref-1.c: Likewise. * c-c++-common/asan/stack-overflow-1.c: Likewise. * c-c++-common/asan/strlen-overflow-1.c: Likewise. * c-c++-common/asan/strncpy-overflow-1.c: Likewise. * c-c++-common/asan/use-after-free-1.c: Likewise. * g++.dg/asan/deep-stack-uaf-1.C: Likewise. * g++.dg/asan/deep-tail-call-1.C: Likewise. * g++.dg/asan/large-func-test-1.C: Likewise.
Index: g++.dg/asan/large-func-test-1.C =================================================================== --- g++.dg/asan/large-func-test-1.C (revision 217694) +++ g++.dg/asan/large-func-test-1.C (working copy) @@ -42,4 +42,4 @@ int main() { // { dg-output "\[^\n\r]*0x\[0-9a-f\]+ is located 44 bytes to the right of 400-byte region.*(\n|\r\n|\r)" } // { dg-output "\[^\n\r]*allocated by thread T0 here:\[^\n\r]*(\n|\r\n|\r)" } // { dg-output " #0( 0x\[0-9a-f\]+ (in _*(interceptor_|)malloc|\[(\])\[^\n\r]*(\n|\r\n|\r)" } -// { dg-output " #1|) 0x\[0-9a-f\]+ (in (operator new|_*_Zn\[aw\]\[mj\])|\[(\])\[^\n\r]*(\n|\r\n|\r)" } +// { dg-output " #1|) 0x\[0-9a-f\]+ (in (operator new|(wrap|)_*_Zn\[aw\]\[mj\])|\[(\])\[^\n\r]*(\n|\r\n|\r)" }
> Ok. If anyone has a better idea, feel free to suggest it. Thanks, committed along with the same trivial patch for g++.dg/asan/large-func-test-1.C. FX 2014-11-19 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> PR sanitizer/63939 * g++.dg/asan/large-func-test-1.C: Ajust dg-output.