C / C ++ Advertencia: dirección de temporal con la biblioteca BDADDR_ANY Bluetooth
Tengo algunos problemas con g ++ y el proceso de compilación para un programa C / C ++ que usa bibliotecas Bluetooth en Ubuntu.
Si uso gcc, funciona bien sin advertencia; por el contrario, si uso g ++ recibo esta advertencia:
warning: tomar la dirección de @ tempor
incluso si el programa se compila bien y funciona.
Las líneas involucradas que informan el error son:
bdaddr_t *inquiry(){
// do some stuff..
bacpy(&result[mote++], BDADDR_ANY);
return result;
}
//...
void zeemote(){
while (bacmp(bdaddr, BDADDR_ANY)){
/..
}
}
En ambos casos, BDADDR_ANY está involucrado.
¿Cómo puedo resolver esta advertencia?
BDADDR_ANY se define en bluetooth.h como:
/* BD Address */
typedef struct {
uint8_t b[6];
} __attribute__((packed)) bdaddr_t;
#define BDADDR_ANY (&(bdaddr_t) {{0, 0, 0, 0, 0, 0}})