Page 1 of 1

Error Suspicious Pointer conversion in . ....(SOLUCIONADO)

Posted: Fri Sep 11, 2015 9:07 pm
by Armando
Amigos:

Estoy tratando de crear una lib con FWH1501 y al compilar me tira el error
Suspicious Pointer Conversión In Function HB_FW_CALL_FUNC_CICCCCCCCC_I

El código es el siguiente:

Code: Select all | Expand


typedef LONG (*func_CICCCCCCCC_I)(char * param1, long param2, char * param3, char * param4, char * param5,
                                  char * param6, char * param7, char * param8, char * param9, char * param10);

....
....
....

HB_FUNC( CALL_FUNC_CICCCCCCCC_I )
{    
   func_CICCCCCCCC_I CurFunc = (func_CICCCCCCCC_I)hb_parnl(1);    
   hb_retnl(CurFunc(hb_parc(2), hb_parnl(3), hb_parc(4), hb_parc(5), hb_parc(6), hb_parc(7), hb_parc(8),
                    hb_parc(9), hb_parc(10), hb_parc(11)));
}
 


De hecho son varias funciones pero muestro solo una, este mismo código pasa sin problemas
con FWH0810 (muy viejito).

Gracias por su apoyo.

Saludos

Re: Error Suspicious Pointer conversion in . ........

Posted: Fri Sep 11, 2015 10:27 pm
by cnavarro
Armando wrote:Amigos:

Estoy tratando de crear una lib con FWH1501 y al compilar me tira el error
Suspicious Pointer Conversión In Function HB_FW_CALL_FUNC_CICCCCCCCC_I

El código es el siguiente:

Code: Select all | Expand


typedef LONG (*func_CICCCCCCCC_I)(char * param1, long param2, char * param3, char * param4, char * param5,
                                  char * param6, char * param7, char * param8, char * param9, char * param10);

....
....
....

HB_FUNC( CALL_FUNC_CICCCCCCCC_I )
{    
   func_CICCCCCCCC_I CurFunc = (func_CICCCCCCCC_I)hb_parnl(1);    
   hb_retnl(CurFunc(hb_parc(2), hb_parnl(3), hb_parc(4), hb_parc(5), hb_parc(6), hb_parc(7), hb_parc(8),
                    hb_parc(9), hb_parc(10), hb_parc(11)));
}
 


De hecho son varias funciones pero muestro solo una, este mismo código pasa sin problemas
con FWH0810 (muy viejito).

Gracias por su apoyo.

Saludos


Armando
No es un problema de Fwh, sino de la version de Harbour y compilador que estés usando ahora, como sabes
Sin ver la definicion de la funcion CurFunc, me atrevo a decirte que pruebes lo siguiente:

Code: Select all | Expand



   hb_retnl( (LONG * ) CurFunc(hb_parc(2), hb_parnl(3), hb_parc(4), hb_parc(5), hb_parc(6), hb_parc(7), hb_parc(8),
                    hb_parc(9), hb_parc(10), hb_parc(11)));

 

Re: Error Suspicious Pointer conversion in . ........

Posted: Sat Sep 12, 2015 12:14 am
by Armando
Cristóbal:

Con xHarbour 123_20150319 Hice el cambio que sugeriste pero no, tira otros mensajes diferentes.

Sin embargo con el xHarbour que uso con FW0810, no da problemas.

Saludos

Re: Error Suspicious Pointer conversion in . ........

Posted: Sat Sep 12, 2015 4:42 am
by carlos vargas
si n o estoy eqiovocado las funciones son las de fast report,
y si tambien no recuerdo mal con que agreges (char *) a las llamada de la funcion hb_parc(

de tal forma que quedarian asi:

Code: Select all | Expand

(char *) hb_parc( ...)


salu2

Re: Error Suspicious Pointer conversion in . ........

Posted: Sat Sep 12, 2015 1:58 pm
by xmanuel
Lo priemero cambia hb_parnl(1) por hb_parptr(1) ya que lo que le pasas es un puntero a una función y lo segundo lo que te dice Carlos, delante de cada hb_parc() pon (char*) ya que la función hb_parc devuelve un (const char*)

Code: Select all | Expand


    HB_FUNC( CALL_FUNC_CICCCCCCCC_I )
    {    
       func_CICCCCCCCC_I CurFunc = (func_CICCCCCCCC_I)hb_parptr(1);    
       hb_retnl(CurFunc(hb_parc(2), hb_parnl(3), hb_parc(4), hb_parc(5), hb_parc(6), hb_parc(7), hb_parc(8),
                        hb_parc(9), hb_parc(10), hb_parc(11)));
    }

 

Re: Error Suspicious Pointer conversion in . ........

Posted: Sat Sep 12, 2015 2:50 pm
by Armando
Carlos:
Efectivamente son las funciones de Fastreport que en su momento compré a Sergei (QEPD).

xManuel:
Voy a probar las sugerencias de ambos y ya comentaré el resultado.

Saludos

Re: Error Suspicious Pointer conversion in . ........

Posted: Sat Sep 12, 2015 3:58 pm
by Armando
Carlos y xManuel:
Probé con la sugerencia de Carlos y todo pasó a la normalidad, no hubo errores.

Agregué la sugerencia de xManuel y también fue de 100, sin errores.

Ahora me queda la duda, dejo ambas sugerencias o con la de Carlos es suficiente???.

Una forma de saberlo es probando la LIB en la aplicación que la usa, ya les comentaré.

Saludos

Re: Error Suspicious Pointer conversion in . ....(SOLUCIONADO)

Posted: Sun Sep 13, 2015 6:01 pm
by Armando
Amigos:

Hechas las pruebas con ambas sugerencias y todo funciona de 100.

Muchas gracias al foro y en especial a Carlos y xManuel.