On Wed Nov 19 2014 at 3:54:46 AM Eric Fiselier <[email protected]> wrote: > It seems you are missing interceptors for wcstof, wcstod, and wcstold as > well. > > Could this be responsible for PR21579 as well? > http://llvm.org/bugs/show_bug.cgi?id=21579 >
Unlikely. > > > /Eric > > On Tue, Nov 18, 2014 at 2:44 AM, Evgeniy Stepanov <[email protected]> > wrote: > >> We are missing interceptors for: wcstol, wcstoul, wcstoll, wcstoull. >> >> On Mon Nov 17 2014 at 11:02:13 PM Kostya Serebryany <[email protected]> >> wrote: >> >>> if msan does not see what's goign on inside libc we need to teach it -- >>> it already has a bunch of libc interceptors, but clearly not all. >>> Do you know what libc function is called here? >>> Or how to reproduce the reports you've been seeing? >>> >>> On Fri, Nov 14, 2014 at 2:23 PM, Eric Fiselier <[email protected]> wrote: >>> >>>> Author: ericwf >>>> Date: Fri Nov 14 16:23:57 2014 >>>> New Revision: 222052 >>>> >>>> URL: http://llvm.org/viewvc/llvm-project?rev=222052&view=rev >>>> Log: >>>> Initialize pointer in string conversion helpers to prevent MSAN >>>> diagnostic. >>>> >>>> Since the initialization of the pointer happens across the libc library >>>> boundry >>>> MSAN will not know the pointer was initialized. This fixes MSAN >>>> failures in >>>> test/strings/string.conversions. >>>> >>>> Modified: >>>> libcxx/trunk/src/string.cpp >>>> >>>> Modified: libcxx/trunk/src/string.cpp >>>> URL: >>>> http://llvm.org/viewvc/llvm-project/libcxx/trunk/src/string.cpp?rev=222052&r1=222051&r2=222052&view=diff >>>> >>>> ============================================================================== >>>> --- libcxx/trunk/src/string.cpp (original) >>>> +++ libcxx/trunk/src/string.cpp Fri Nov 14 16:23:57 2014 >>>> @@ -63,7 +63,7 @@ inline >>>> V >>>> as_integer_helper(const string& func, const S& str, size_t* idx, int >>>> base, F f) >>>> { >>>> - typename S::value_type* ptr; >>>> + typename S::value_type* ptr = nullptr; >>>> const typename S::value_type* const p = str.c_str(); >>>> typename remove_reference<decltype(errno)>::type errno_save = >>>> errno; >>>> errno = 0; >>>> @@ -180,7 +180,7 @@ inline >>>> V >>>> as_float_helper(const string& func, const S& str, size_t* idx, F f ) >>>> { >>>> - typename S::value_type* ptr; >>>> + typename S::value_type* ptr = nullptr; >>>> const typename S::value_type* const p = str.c_str(); >>>> typename remove_reference<decltype(errno)>::type errno_save = >>>> errno; >>>> errno = 0; >>>> >>>> >>>> _______________________________________________ >>>> cfe-commits mailing list >>>> [email protected] >>>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits >>>> >>> >>> >
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
