Advertencia C28138

El argumento constante debería ser variable

Esta advertencia se notifica en una llamada a función que espera una variable o una expresión no constante, pero la llamada incluye una constante. Para información sobre la función y su parámetro, consulte la documentación de WDK de la función.

Ejemplo

Por ejemplo, en el código siguiente, el parámetro de la macro READ_PORT_UCHAR debe ser un puntero a la dirección del puerto, no a la dirección proporcionada como una constante.

El siguiente código de ejemplo genera esta advertencia:

READ_PORT_UCHAR(0x80001234);

Para corregir esta advertencia, use un puntero a la dirección del puerto.

READ_PORT_UCHAR(PortAddress);

Hay algunos dispositivos más antiguos para los que un parámetro constante es aceptable con la familia de funciones READ_PORT y WRITE_PORT. Cuando esos dispositivos reciben esta advertencia, la advertencia se puede suprimir u omitir. Sin embargo, los nuevos dispositivos no deben asumir una dirección de hardware constante.