Run Microsoft Analyzer over dmd source code

Don nospam at nospam.com
Mon Aug 8 20:46:57 PDT 2011


bearophile wrote:
> Don:
> 
>> I think these are false positives too. The ones I saw were of the form:
>> When p is a pointer,
>>   assert(p);
>>   y = p->x; // error: p is uninitialized
> 
> This was true in the first "release" of those warnings files, but is it true still? There are only 10 of those errors reported now.
> 
> Bye,
> bearophile

Yes. Still true.

4995:     FuncDeclaration *fd;
4996:     Expression *pthis = NULL;
4997:     if (deleg->op == TOKdelegate)
4998:     {
4999:         fd = ((DelegateExp *)deleg)->func;
5000:         pthis = ((DelegateExp *)deleg)->e1;
5001:     }
5002:     else if (deleg->op == TOKfunction)
5003:         fd = ((FuncExp*)deleg)->fd;
5004:
5005:     assert(fd && fd->fbody);

warning C6001: Using uninitialized memory 'fd': Lines: 4995, 4996, 4997, 
5002, 5005


More information about the Digitalmars-d mailing list