https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111620

--- Comment #2 from Akhilesh Kumar <akhilesh.k at samsung dot com> ---
with 110036 (CHECK failed) issue is fixed, but Even after patch ASAN unable to
detect corruption  like "Use_after_free(heap)","Heap buffer overflow","Stack
buffer overflow" and "Use after scope" 

some features like "Double Free" and "Memory leaks" are working after 110036

In all corruption scenarios I am getting "DEADLYSIGNAL" 
Seems program jumped to some wild address, which is unknown to AddressSanitizer 



#include<iostream>
using namespace std;
int main()
{
        int *p=new int;
        delete p;
        cout<<*p<<endl;
        return 0;
}


//on x86 Asan able to detect 



user@starfive:/tmp$ ./use_afterfree 
AddressSanitizer:DEADLYSIGNAL
=================================================================
==70151==ERROR: AddressSanitizer: SEGV on unknown address 0x0008173400f6 (pc
0x0000000e3ed8 bp 0x003ff061b2d0 sp 0x003ff061b2b0 T0)
==70151==The signal is caused by a READ memory access.
    #0 0xe3eda in main (/tmp/use_afterfree+0xe3eda) (BuildId:
216039089892b63c94091aadca49752b51f4fa78)
    #1 0x3fbd152b02 in __libc_start_call_main
../sysdeps/nptl/libc_start_call_main.h:58
    #2 0x3fbd152baa in __libc_start_main_impl csu/libc-start.c:381
    #3 0x25282 in _start (/tmp/use_afterfree+0x25282) (BuildId:
216039089892b63c94091aadca49752b51f4fa78)

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV (/tmp/use_afterfree+0xe3eda) (BuildId:
216039089892b63c94091aadca49752b51f4fa78) in main
==70151==ABORTING
user@starfive:/tmp$

Reply via email to