LuNA-Static-Analysis / LuNA-Static-Analysis-Repository

1 stars 0 forks source link

prolog-analyzer: При поиске LUNA18-22 рассматривать только те циклы инициализации, которые будут выполнены для данного цикла использования #100

Closed m-michurov closed 6 months ago

m-michurov commented 6 months ago

При поиске ошибок для данного цикла использовния нужно рассматривать только те циклы инициализации, условия которых не являются более сильными по сравнению с условиями цикла использования.

Пример:

// Игнорируется, потому что может не выполниться для цикла использования (1)
if x && y { /* init x[i] */ }
// Рассматривается, потому что выполняется всегда  для цикла использования (1)
if x || z { /* init x[i] */ }

// Цикл использования (1)
if x { /* use x[i] */ }