[cfe-dev] one suggestion for Clang static analyzer

hw dtletmedn at gmail.com
Sun Aug 10 06:46:24 PDT 2014


Dear All,

I am wondering if Clang static analyzer could extend to find out the
bug in the following code.

#include <stdio.h>

#include <stdlib.h>
#include <string.h>
#include <unistd.h>

#define SIZE 1024*1024*1024
int main()
{
    printf("%ld,%ld,%ld\n",sizeof(int),sizeof(long),sizeof(size_t));//output
4,8,8
    printf("%ld\n",SIZE); //output 1073741824

    int *p = (int*)malloc(SIZE);
    if(!p){
            perror("malloc");
            exit(1);
    }

    memset(p,0,SIZE);    //this works fine

    size_t i=0;
    for(;i<SIZE;++i){
            p[i] = 10;  //gdb shows when crashed i = 268436476
    }
}


Best,

hw
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20140810/c19ca134/attachment.html>


More information about the cfe-dev mailing list