Dela via


C28716

varning C28716: Kompilatorsatt gjutning mellan semantiskt olika integraltyper

Den här varningen anger att ett booleskt värde används som en NTSTATUS- utan att uttryckligen gjutas. Detta kommer sannolikt att ge oönskade resultat. Det typiska felvärdet för funktioner som returnerar ett booleskt värde (falskt) anger till exempel en lyckad status när det testas som en NTSTATUS-.

exempel

PREfast rapporterar varningen för följande exempel.

extern bool SomeMemAllocFunction(void **);

return SomeMemAllocFunction(&MyPtr);

I följande exempel undviks felet.

extern bool SomeMemAllocFunction(void **);

if (SomeMemAllocFunction(&MyPtr) == true) {
 return STATUS_SUCCESS;
} else {
 return STATUS_NO_MEMORY;
}