Поделиться через


Предупреждение компилятора (уровень 1) C4090

"operation" : разные квалификаторы "модификатор"

Переменная, используемая в операции, определяется с указанным модификатором, который предотвращает его изменение без обнаружения компилятором. Выражение компилируется без изменений.

Это предупреждение может быть вызвано тем, что указатель на const элемент или volatile указатель не объявлен как указывающий на const или volatile.

Это предупреждение выдано для программ C. В программе C++ компилятор выдает ошибку: C2440.

Следующий пример приводит к возникновению ошибки C4090:

// C4090.c
// compile with: /W1
int *volatile *p;
int *const *q;
int **r;

int main() {
   p = q;   // C4090
   p = r;
   q = p;   // C4090
   q = r;
   r = p;   // C4090
   r = q;   // C4090
}