[compiler-rt] r189814 - [asan] attemping to fix the Windows build

Timur Iskhodzhanov timurrrr at google.com
Tue Sep 3 08:12:01 PDT 2013


Should be fixed by r189817.


2013/9/3 Timur Iskhodzhanov <timurrrr at google.com>

> One left to go
>
> asan_report.cc(348) : error C2220: warning treated as error - no 'object'
> file generated
> asan_report.cc(348) : warning C4244: 'argument' : conversion from
> '__sanitizer::u64' to '__sanitizer::uptr', possible loss of data
>
>
>
> 2013/9/3 Kostya Serebryany <kcc at google.com>
>
>> Author: kcc
>> Date: Tue Sep  3 09:53:02 2013
>> New Revision: 189814
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=189814&view=rev
>> Log:
>> [asan] attemping to fix the Windows build
>>
>> Modified:
>>     compiler-rt/trunk/lib/asan/asan_report.cc
>>
>> Modified: compiler-rt/trunk/lib/asan/asan_report.cc
>> URL:
>> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/asan/asan_report.cc?rev=189814&r1=189813&r2=189814&view=diff
>>
>> ==============================================================================
>> --- compiler-rt/trunk/lib/asan/asan_report.cc (original)
>> +++ compiler-rt/trunk/lib/asan/asan_report.cc Tue Sep  3 09:53:02 2013
>> @@ -295,13 +295,13 @@ struct StackVarDescr {
>>    uptr beg;
>>    uptr size;
>>    const char *name_pos;
>> -  s64 name_len;
>> +  uptr name_len;
>>  };
>>
>>  bool DescribeAddressIfStack(uptr addr, uptr access_size) {
>>    AsanThread *t = FindThreadByStackAddress(addr);
>>    if (!t) return false;
>> -  const s64 kBufSize = 4095;
>> +  const uptr kBufSize = 4095;
>>    char buf[kBufSize];
>>    uptr offset = 0;
>>    uptr frame_pc = 0;
>> @@ -340,19 +340,19 @@ bool DescribeAddressIfStack(uptr addr, u
>>    PrintStack(&alloca_stack);
>>    // Report the number of stack objects.
>>    char *p;
>> -  s64 n_objects = internal_simple_strtoll(frame_descr, &p, 10);
>> +  u64 n_objects = (uptr)internal_simple_strtoll(frame_descr, &p, 10);
>>    CHECK_GT(n_objects, 0);
>>    Printf("  This frame has %zu object(s):\n", n_objects);
>>
>>    // Report all objects in this frame.
>>    InternalScopedBuffer<StackVarDescr> vars(n_objects);
>> -  for (s64 i = 0; i < n_objects; i++) {
>> -    s64 beg, size;
>> -    s64 len;
>> -    beg  = internal_simple_strtoll(p, &p, 10);
>> -    size = internal_simple_strtoll(p, &p, 10);
>> -    len  = internal_simple_strtoll(p, &p, 10);
>> -    if (beg <= 0 || size <= 0 || len < 0 || *p != ' ') {
>> +  for (uptr i = 0; i < n_objects; i++) {
>> +    uptr beg, size;
>> +    uptr len;
>> +    beg  = (uptr)internal_simple_strtoll(p, &p, 10);
>> +    size = (uptr)internal_simple_strtoll(p, &p, 10);
>> +    len  = (uptr)internal_simple_strtoll(p, &p, 10);
>> +    if (beg == 0 || size == 0 || *p != ' ') {
>>        Printf("AddressSanitizer can't parse the stack frame "
>>                   "descriptor: |%s|\n", frame_descr);
>>        break;
>> @@ -364,7 +364,7 @@ bool DescribeAddressIfStack(uptr addr, u
>>      vars[i].name_len = len;
>>      p += len;
>>    }
>> -  for (s64 i = 0; i < n_objects; i++) {
>> +  for (uptr i = 0; i < n_objects; i++) {
>>      buf[0] = 0;
>>      internal_strncat(buf, vars[i].name_pos,
>>                       static_cast<uptr>(Min(kBufSize, vars[i].name_len)));
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130903/8b11fef6/attachment.html>


More information about the llvm-commits mailing list