Partilhar via


Aviso do compilador (nível 1) C4090

'operation': qualificadores 'modifier' diferentes

Uma variável usada em uma operação é definida com um modificador especificado que impede que ela seja modificada sem detecção pelo compilador. A expressão é compilada sem modificação.

Esse aviso pode ser causado quando um ponteiro para um item const ou volatile é atribuído a um ponteiro não declarado como apontando para const ou volatile.

Esse aviso é emitido para programas C. Em um programa C++, o compilador emite um erro: C2440.

O exemplo a seguir gera o aviso 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
}