Exemple
int getNum(){
return 5;
}

void main( int argc, char* argv[]) {
while( a = getNum() ) {
cout << "A reste 5";
}
}

Solution
Si l'affectation est une erreur, transformez-la en comparaison. Sinon, effectuez l'affectation en dehors de l'instruction conditionnelle.
int getNum(){
return 5;
}

void main( int argc, char* argv[]) {
int a = 5;
while( a == getNum() ) {
cout << 
"A reste 5";
}
}