Bug en el depurador C++Builder 2007
La ejecución es correcta, pero el depurador no puede inspeccionar el elemento TDsg dsg en la siguiente situación:
#include <vcl.h> // Incomplete definition class TDsg; class GVE_Graphic { private: TDsg *dsg; }; /* Error appears with any of these operators defined */ int operator==( GVE_Graphic &t1, GVE_Graphic &t2 )) { return(0 ); } //int operator!=( GVE_Graphic &t1, GVE_Graphic &t2 ) { return(0 ); } //int operator>=( GVE_Graphic &t1, GVE_Graphic &t2 ) { return( 0 ); } //int operator<=( GVE_Graphic &t1, GVE_Graphic &t2 ) { return( 0 ); } //int operator> ( GVE_Graphic &t1, GVE_Graphic &t2 ) { return( 0 ); } //int operator< ( GVE_Graphic &t1, GVE_Graphic &t2 ) { return( 0 ); } class TDsg { public: int x; TDsg() { x = 0; }; }; int main(int argc, char* argv[]) { int a = 0; TDsg dsg; a = 1; //Breakpoint. Aquí ya no se puede inspeccionar dsg return( 0 ); } Al comentar el atributo (con el mismo nombre pero sin relación) de GVE_Graphic, TDsg dsg, el error desaparece y si permite inspeccionarlo (con el valor dado por la constructora x=0). Para corroborar el bug, he depurado este mismo código con Visual C++(2008) y no me da problemas al realizar la inspección. Alguna sugerencia?. Se ha reportado ya este error?. Como se evita?. Muchas gracias y un saludo. |
No termono de entender tu error.
Cita:
Código:
/* Error appears with any of these operators defined */ Lo he compilado en Builder 5 y el debugger hace bien su trabajo. No tengo Builder 2007, mas no te puedo decir. Saludos. |
Muchas gracias Escafandra.
En cuanto al error de sintaxis tienes toda la razón. Se me ha colado. El problema es que al debuggear, poniendo un brekpoint en a = 1; Cita:
En cuanto al fallo del depurador (ejecutar, ejecuta bien), es algo bastante extraño. En el Builder 2007 a mi no me inspecciona nunca. He probado en CBuilder6 y tampoco me iba. Probamos en otro ordenador e iba y venía de forma intermitente. No sé que pensar.......En cualquier caso muchas gracias Escafandra. Un saludo!. |
Ahora me acuerdo de haber leido un problema con el debugger del Builder 2007.
Determinados errores del debugger del BCB 2007 aparecen si no se ha instalado el Service Pack 3 de Builder. Visita la web del fabricante, Embarcadero Technologies, donde puedes descargar de manera "gratuita" el Service Pack 3 (debes ser usuario registrado). Corrige los fallos y obtienes mejoras en él mismo software. Saludos. |
Hola Escafandra.
Ya está puesta la actualización (Update 3 de Diciembre 2007 y hotfix posteriores) y sigue igual. Muchas gracias por tu ayuda Escafandra. Un saludo!. |
La franja horaria es GMT +2. Ahora son las 08:48:40. |
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