Avviso C6319
L'uso dell'operatore virgola in un'espressione testata determina l'ignorare l'argomento sinistro quando non presenta effetti collaterali
Osservazioni:
Questo avviso indica un'espressione secondaria ignorata nel contesto di test a causa dell'operatore virgola (,
). L'operatore virgola presenta un'associatività da sinistra verso destra. Il risultato dell'operatore virgola è l'ultima espressione valutata. Se l'espressione sinistra all'operatore virgola non ha effetti collaterali, il compilatore potrebbe omettere la generazione del codice per l'espressione.
Nome dell'analisi del codice: IGNOREDBYCOMMA
Esempio
Il codice seguente genera questo avviso:
void f()
{
int i;
int x[10];
for ( i = 0; x[i] != 0, x[i] < 42; i++) // warning
{
// code
}
}
Per correggere questo avviso, usare l'operatore AND logico come illustrato nel codice seguente:
void f()
{
int i;
int x[10];
for ( i = 0; (x[i] != 0) && (x[i] < 42); i++)
{
// code
}
}