Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
aviso C28716: Conversão inserida pelo compilador entre tipos integrais semanticamente diferentes
Esse aviso indica que um booleano está sendo usado como um NTSTATUS sem ser explicitamente lançado. É provável que esta situação dê resultados indesejáveis. Por exemplo, o valor de falha típico para funções que retornam um Boolean (false) indica um status de sucesso quando testado como um NTSTATUS.
Exemplo
O PREfast relata o aviso para o exemplo a seguir.
extern bool SomeMemAllocFunction(void **);
return SomeMemAllocFunction(&MyPtr);
O exemplo a seguir evita o erro.
extern bool SomeMemAllocFunction(void **);
if (SomeMemAllocFunction(&MyPtr) == true) {
return STATUS_SUCCESS;
} else {
return STATUS_NO_MEMORY;
}