Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   Error al compilar (https://www.clubdelphi.com/foros/showthread.php?t=94072)

Angel.Matilla 19-07-2019 12:57:37

Error al compilar
 
En un proyecto en BCB 6 tengo un formulario que va a llamar a otro que estoy diseñando ahora. Este segundo formulario, de momento, sólo tiene un TPanel y un TVirtualStringTree y en este último todavía no he definido ni columnas ni ningún evento.

Al añadir el include de este segundo formulario en el primero, que es quien lo llamará, y compilar el proyecto me salta un error, al pasar el compilador por el primero de estos formularios, en el fichero VirtualTrees.hpp:
Cita:

VirtualTress.hpp(1621): E2293 ) expected
Como ya me ocurrió algo parecido hace unas semanas, pensé que bastaría con mover de sitio algunos includes, pero no he conseguido solucionarlo. ¿Alguna sugerencia? Si alguien quiere le envío el proyecto para ver si es capaz de ayudarme.

Ñuño Martínez 19-07-2019 21:41:49

¿No dice que falta un cierre de paréntesis? ¿Cómo es la línea del error?

Angel.Matilla 22-07-2019 09:57:03

Cita:

Empezado por Ñuño Martínez (Mensaje 532846)
¿No dice que falta un cierre de paréntesis? ¿Cómo es la línea del error?

La línea a la que apunta el error es esta:
Código:

PVirtualNode __fastcall GetNextSibling(PVirtualNode Node);
pero ese fichero de cabecera imagino que se usa en más sitios y en ningún otro modulo da error. Además, lógicamente, ni se me ocurre tocar una cabecera de los elementos de las paletas.

Angel.Matilla 22-07-2019 13:38:54

No tiene sentido. He comentado la línea en la que se producía el error (lo cual es absurdo ya que esa cabecera no es mia, es de un elemento) y ahora compila bien y se ejecuta. Pero al comentarla la anulo para todos los formularios que utilizan esa cabecera; no son muchos pero alguno hay y habrá que ver ahora como funciona todo. Me he quedado bastante perplejo. :confused::confused:

Ñuño Martínez 22-07-2019 22:11:43

Es raro, sí.

Podría ser que haya por ahí alguna directiva de precompilación que haga algún desbarajuste en algún sitio. Pero claro, a saber dónde.

Angel.Matilla 07-08-2019 10:42:09

¡Increíble! Resulta que el error de compilación se estaba produciendo en un formulario que ni tiene VirtualStringTree ni hace ninguna operación, más allá de llamarlo, en formularios que sí tiene ese elemento. Al final lo he resuelto colocando ese include entre las llamadas del formulario que me daba el error. Si alguien lo entiende, que me lo explique.

Ñuño Martínez 28-08-2019 12:59:35

Podría ser que se trate de alguna macro, y al desplegarla no encontra la declaración (aunque debería, porque en C no existe el concepto de módulo/unit como en Pascal y toda la ristra de cabeceras incluídas está disponible en todo momento). Pero como tú dices, quien lo entienda que lo explique.


La franja horaria es GMT +2. Ahora son las 15:38:25.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi