Stai c анализ дает "Разыменование , который известен как nullptr " - PullRequest
0 голосов
/ 01 апреля 2020

Я выполнял анализ stati c с использованием Coverity в проекте, в то время как я столкнулся с этой ошибкой, сообщаемой инструментом:

Dereferencing <storage from new>, which is known to be nullptr

Фрагмент кода:

typedef struct envelope
{
      char *message;
      void *context;
      bool response;
}envelopeRef;

int main()
{
   /* here coverity tells that
      1. returned_null: operator new returns nullptr (checked 46 out of 52 times)
      2. var_assigned: Assigning: <storage from new> = nullptr return value from operator new
      3. dereference: Dereferencing <storage from new>, which is known to be nullptr.
   */
    envelopeRef *h = new (std::nothrow)envelopeRef();
    if(nullptr != h)
    {
       //do something
       delete h;
    }
}

Что я здесь не так делаю?

...