[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-12-20 Thread Bruno Ricci via Phabricator via cfe-commits
riccibruno added a comment. Is anyone working on this ? This is the only persistent msan failure when doing `check-clang` on my machine. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D42043/new/ https://reviews.llvm.org/D42043 _

[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-08-20 Thread Vedant Kumar via Phabricator via cfe-commits
vsk added subscribers: jkorous, vsapsai. vsk added a comment. + Jan and Volodymyr. This seemed to be in good shape the last time I looked at it. Not having touched libclang for a while I don't think I can give an official lgtm. Repository: rC Clang https://reviews.llvm.org/D42043 ___

[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-08-18 Thread Steve O'Brien via Phabricator via cfe-commits
elsteveogrande added a comment. hi @vsk + @arphaman , it's been a while -- I brought this old diff up to date, wondering if you could take a look again. Thanks! Repository: rC Clang https://reviews.llvm.org/D42043 ___ cfe-commits mailing list c

[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-08-17 Thread Steve O'Brien via Phabricator via cfe-commits
elsteveogrande updated this revision to Diff 161370. elsteveogrande added a comment. Rebase + fix conflicts for very old diff. Works again. `ninja check-clang` with MSAN-enabled build: Before: Failing Tests (2): Clang :: CodeGen/signed_metadata.cpp Clang :: Index/comment-to-html-

[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-06-13 Thread Vitaly Buka via Phabricator via cfe-commits
vitalybuka added a comment. Is this stale? Repository: rC Clang https://reviews.llvm.org/D42043 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-01-23 Thread Steve O'Brien via Phabricator via cfe-commits
elsteveogrande added a comment. Hi @vsk + @arphaman : I did find such problems with either MSAN (with poison-in-dtor) and ASAN, so we should be able to discover these instances pretty easily :) Repository: rC Clang https://reviews.llvm.org/D42043 _

[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-01-22 Thread Vedant Kumar via Phabricator via cfe-commits
vsk added a reviewer: arphaman. vsk added a comment. In https://reviews.llvm.org/D42043#981409, @elsteveogrande wrote: > Fixes, but first, a question for reviewers: > > Looking at the description of `clang_disposeString`: > > /** >* \brief Free the given string. >*/ > CINDEX_LINKAGE v

[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-01-18 Thread Steve O'Brien via Phabricator via cfe-commits
elsteveogrande updated this revision to Diff 130557. elsteveogrande added a comment. remove unneeded changes Repository: rC Clang https://reviews.llvm.org/D42043 Files: include/clang-c/CXString.h tools/c-index-test/c-index-test.c tools/libclang/CXString.cpp Index: tools/libclang/CXStr

[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-01-18 Thread Steve O'Brien via Phabricator via cfe-commits
elsteveogrande updated this revision to Diff 130556. elsteveogrande marked an inline comment as done. elsteveogrande added a comment. Fixes, but first, a question for reviewers: Looking at the description of `clang_disposeString`: /** * \brief Free the given string. */ CINDEX_LINKAGE v

[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-01-18 Thread Vedant Kumar via Phabricator via cfe-commits
vsk added a comment. Mind rebasing this when you have a chance? Repository: rC Clang https://reviews.llvm.org/D42043 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-01-18 Thread Steve O'Brien via Phabricator via cfe-commits
elsteveogrande marked 2 inline comments as done. elsteveogrande added inline comments. Comment at: tools/c-index-test/c-index-test.c:3268 - filename = clang_getFileName(file); - index_data->main_filename = clang_getCString(filename); - clang_disposeString(filename); + index

[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-01-18 Thread Vedant Kumar via Phabricator via cfe-commits
vsk added a comment. Thanks for working on this :). Comment at: tools/libclang/CXString.cpp:213 + if (string.IsNullTerminated) { +CString = (const char *) string.Contents; + } else { elsteveogrande wrote: > vsk wrote: > > Basic question: If a non-owning C

[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-01-18 Thread Steve O'Brien via Phabricator via cfe-commits
elsteveogrande added a comment. Thanks very much for looking at this @vsk ! I actually found an ASAN bug in my new code, mixing and matching `malloc/free` and `operator`s `new/delete`. Comment at: tools/c-index-test/c-index-test.c:3268 - filename = clang_getFileName(file);

[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-01-17 Thread Vedant Kumar via Phabricator via cfe-commits
vsk added reviewers: akyrtzi, benlangmuir. vsk added inline comments. Comment at: tools/c-index-test/c-index-test.c:3268 - filename = clang_getFileName(file); - index_data->main_filename = clang_getCString(filename); - clang_disposeString(filename); + index_data->main_filen

[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-01-17 Thread Steve O'Brien via Phabricator via cfe-commits
elsteveogrande updated this revision to Diff 130225. elsteveogrande added a comment. Add a needed null-check on input string's data ptr. Repository: rC Clang https://reviews.llvm.org/D42043 Files: include/clang-c/CXString.h tools/c-index-test/c-index-test.c tools/libclang/CXString.cpp

[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-01-16 Thread Steve O'Brien via Phabricator via cfe-commits
elsteveogrande updated this revision to Diff 129959. elsteveogrande added a comment. Change string-copy-on-demand logic; do only if `not IsNullTerminated`. Repository: rC Clang https://reviews.llvm.org/D42043 Files: include/clang-c/CXString.h tools/c-index-test/c-index-test.c tools/lib

[PATCH] D42043: c-index: CXString: fix MSAN read-past-end bug

2018-01-14 Thread Steve O'Brien via Phabricator via cfe-commits
elsteveogrande created this revision. Herald added a subscriber: cfe-commits. Previous impl would read the byte past the end of a string (a `llvm::StringRef`), possibly exceeding the allocation for that memory and raising an MSAN issue. This will instead save the character range specified by th