Mirror of the gdb mailing list
 help / color / mirror / Atom feed
* 5.2 branch gdb crash - infinite recursion stack overflow
@ 2002-03-06  7:57 Gianni Mariani
  2002-03-06  8:13 ` Daniel Jacobowitz
  0 siblings, 1 reply; 3+ messages in thread
From: Gianni Mariani @ 2002-03-06  7:57 UTC (permalink / raw)
  To: gdb


Any ideas ?

This is a snippet of a stack trace of a gdb build from top of 
gdb_5_2-branch as of a few hours ago.

The executable was build using gcc v3

   g++  -W -Wpointer-arith -pipe -ggdb3 -fcheck-new -fPIC ...

#4256 0x0807dc69 in search_struct_field (name=0x90c8a64 
"HA_ErrorReport", arg1=0x9488b60,
   offset=0, type=0x8c69468, looking_for_baseclass=1) at valops.c:2094
#4257 0x0807b8d5 in value_cast (type=0x90c8a1c, arg2=0x9488b60) at 
valops.c:245
#4258 0x081346a7 in gnuv3_baseclass_offset (type=0x8c69468, index=0,
   valaddr=0x9488af4 "hW$\bÃŒu-\b", address=137221140) at gnu-v3-abi.c:396
#4259 0x080e0241 in baseclass_offset (type=0x8c69468, index=0,
   valaddr=0x9488af4 "hW$\bÃŒu-\b", address=137221140) at cp-abi.c:69
#4260 0x0807dc69 in search_struct_field (name=0x90c8a64 
"HA_ErrorReport", arg1=0x9488ab8,
   offset=0, type=0x8c69468, looking_for_baseclass=1) at valops.c:2094
#4261 0x0807b8d5 in value_cast (type=0x90c8a1c, arg2=0x9488ab8) at 
valops.c:245
#4262 0x081346a7 in gnuv3_baseclass_offset (type=0x8c69468, index=0,
   valaddr=0x9488a4c "hW$\bÃŒu-\b", address=137221140) at gnu-v3-abi.c:396
#4263 0x080e0241 in baseclass_offset (type=0x8c69468, index=0,
   valaddr=0x9488a4c "hW$\bÃŒu-\b", address=137221140) at cp-abi.c:69
#4264 0x0807dc69 in search_struct_field (name=0x90c8a64 
"HA_ErrorReport", arg1=0x9488a10,
   offset=0, type=0x8c69468, looking_for_baseclass=1) at valops.c:2094
#4265 0x0807b8d5 in value_cast (type=0x90c8a1c, arg2=0x9488a10) at 
valops.c:245
#4266 0x081346a7 in gnuv3_baseclass_offset (type=0x8c69468, index=0,
   valaddr=0x94889a4 "hW$\bÃŒu-\b", address=137221140) at gnu-v3-abi.c:396
#4267 0x080e0241 in baseclass_offset (type=0x8c69468, index=0,
   valaddr=0x94889a4 "hW$\bÃŒu-\b", address=137221140) at cp-abi.c:69
#4268 0x0807dc69 in search_struct_field (name=0x90c8a64 
"HA_ErrorReport", arg1=0x9488968,
   offset=0, type=0x8c69468, looking_for_baseclass=1) at valops.c:2094
#4269 0x0807b8d5 in value_cast (type=0x90c8a1c, arg2=0x9488968) at 
valops.c:245
#4270 0x081346a7 in gnuv3_baseclass_offset (type=0x8c69468, index=0,
   valaddr=0x94888fc "hW$\bÃŒu-\b", address=137221140) at gnu-v3-abi.c:396
#4271 0x080e0241 in baseclass_offset (type=0x8c69468, index=0,
   valaddr=0x94888fc "hW$\bÃŒu-\b", address=137221140) at cp-abi.c:69
#4272 0x0807dc69 in search_struct_field (name=0x90c8a64 
"HA_ErrorReport", arg1=0x94888c0,
   offset=0, type=0x8c69468, looking_for_baseclass=1) at valops.c:2094
#4273 0x0807b8d5 in value_cast (type=0x90c8a1c, arg2=0x94888c0) at 
valops.c:245
#4274 0x081346a7 in gnuv3_baseclass_offset (type=0x8c69468, index=0,
   valaddr=0x9488854 "hW$\bÃŒu-\b", address=137221140) at gnu-v3-abi.c:396
#4275 0x080e0241 in baseclass_offset (type=0x8c69468, index=0,
   valaddr=0x9488854 "hW$\bÃŒu-\b", address=137221140) at cp-abi.c:69
#4276 0x0807dc69 in search_struct_field (name=0x90c8a64 
"HA_ErrorReport", arg1=0x9488818,
   offset=0, type=0x8c69468, looking_for_baseclass=1) at valops.c:2094
#4277 0x0807b8d5 in value_cast (type=0x90c8a1c, arg2=0x9488818) at 
valops.c:245
#4278 0x081346a7 in gnuv3_baseclass_offset (type=0x8c69468, index=0,
   valaddr=0x94887ac "hW$\bÃŒu-\b", address=137221140) at gnu-v3-abi.c:396
#4279 0x080e0241 in baseclass_offset (type=0x8c69468, index=0,
   valaddr=0x94887ac "hW$\bÃŒu-\b", address=137221140) at cp-abi.c:69

G



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: 5.2 branch gdb crash - infinite recursion stack overflow
  2002-03-06  7:57 5.2 branch gdb crash - infinite recursion stack overflow Gianni Mariani
@ 2002-03-06  8:13 ` Daniel Jacobowitz
  2002-03-07  6:54   ` Gianni Mariani
  0 siblings, 1 reply; 3+ messages in thread
From: Daniel Jacobowitz @ 2002-03-06  8:13 UTC (permalink / raw)
  To: Gianni Mariani; +Cc: gdb

On Wed, Mar 06, 2002 at 07:57:11AM -0800, Gianni Mariani wrote:
> 
> Any ideas ?

"That's nice, give us more."

I need to see a little more information before I can guess what's
wrong.  Like, what were you doing?  Preferably source code so that I
can actually debug the problem!

> 
> This is a snippet of a stack trace of a gdb build from top of 
> gdb_5_2-branch as of a few hours ago.
> 
> The executable was build using gcc v3
> 
>   g++  -W -Wpointer-arith -pipe -ggdb3 -fcheck-new -fPIC ...
> 
> #4256 0x0807dc69 in search_struct_field (name=0x90c8a64 
> "HA_ErrorReport", arg1=0x9488b60,
>   offset=0, type=0x8c69468, looking_for_baseclass=1) at valops.c:2094
> #4257 0x0807b8d5 in value_cast (type=0x90c8a1c, arg2=0x9488b60) at 
> valops.c:245
> #4258 0x081346a7 in gnuv3_baseclass_offset (type=0x8c69468, index=0,
>   valaddr=0x9488af4 "hW$\b?u-\b", address=137221140) at gnu-v3-abi.c:396
> #4259 0x080e0241 in baseclass_offset (type=0x8c69468, index=0,
>   valaddr=0x9488af4 "hW$\b?u-\b", address=137221140) at cp-abi.c:69
> #4260 0x0807dc69 in search_struct_field (name=0x90c8a64 
> "HA_ErrorReport", arg1=0x9488ab8,
>   offset=0, type=0x8c69468, looking_for_baseclass=1) at valops.c:2094
> #4261 0x0807b8d5 in value_cast (type=0x90c8a1c, arg2=0x9488ab8) at 
> valops.c:245
> #4262 0x081346a7 in gnuv3_baseclass_offset (type=0x8c69468, index=0,
>   valaddr=0x9488a4c "hW$\b?u-\b", address=137221140) at gnu-v3-abi.c:396
> #4263 0x080e0241 in baseclass_offset (type=0x8c69468, index=0,
>   valaddr=0x9488a4c "hW$\b?u-\b", address=137221140) at cp-abi.c:69
> #4264 0x0807dc69 in search_struct_field (name=0x90c8a64 
> "HA_ErrorReport", arg1=0x9488a10,
>   offset=0, type=0x8c69468, looking_for_baseclass=1) at valops.c:2094
> #4265 0x0807b8d5 in value_cast (type=0x90c8a1c, arg2=0x9488a10) at 
> valops.c:245
> #4266 0x081346a7 in gnuv3_baseclass_offset (type=0x8c69468, index=0,
>   valaddr=0x94889a4 "hW$\b?u-\b", address=137221140) at gnu-v3-abi.c:396
> #4267 0x080e0241 in baseclass_offset (type=0x8c69468, index=0,
>   valaddr=0x94889a4 "hW$\b?u-\b", address=137221140) at cp-abi.c:69
> #4268 0x0807dc69 in search_struct_field (name=0x90c8a64 
> "HA_ErrorReport", arg1=0x9488968,
>   offset=0, type=0x8c69468, looking_for_baseclass=1) at valops.c:2094
> #4269 0x0807b8d5 in value_cast (type=0x90c8a1c, arg2=0x9488968) at 
> valops.c:245
> #4270 0x081346a7 in gnuv3_baseclass_offset (type=0x8c69468, index=0,
>   valaddr=0x94888fc "hW$\b?u-\b", address=137221140) at gnu-v3-abi.c:396
> #4271 0x080e0241 in baseclass_offset (type=0x8c69468, index=0,
>   valaddr=0x94888fc "hW$\b?u-\b", address=137221140) at cp-abi.c:69
> #4272 0x0807dc69 in search_struct_field (name=0x90c8a64 
> "HA_ErrorReport", arg1=0x94888c0,
>   offset=0, type=0x8c69468, looking_for_baseclass=1) at valops.c:2094
> #4273 0x0807b8d5 in value_cast (type=0x90c8a1c, arg2=0x94888c0) at 
> valops.c:245
> #4274 0x081346a7 in gnuv3_baseclass_offset (type=0x8c69468, index=0,
>   valaddr=0x9488854 "hW$\b?u-\b", address=137221140) at gnu-v3-abi.c:396
> #4275 0x080e0241 in baseclass_offset (type=0x8c69468, index=0,
>   valaddr=0x9488854 "hW$\b?u-\b", address=137221140) at cp-abi.c:69
> #4276 0x0807dc69 in search_struct_field (name=0x90c8a64 
> "HA_ErrorReport", arg1=0x9488818,
>   offset=0, type=0x8c69468, looking_for_baseclass=1) at valops.c:2094
> #4277 0x0807b8d5 in value_cast (type=0x90c8a1c, arg2=0x9488818) at 
> valops.c:245
> #4278 0x081346a7 in gnuv3_baseclass_offset (type=0x8c69468, index=0,
>   valaddr=0x94887ac "hW$\b?u-\b", address=137221140) at gnu-v3-abi.c:396
> #4279 0x080e0241 in baseclass_offset (type=0x8c69468, index=0,
>   valaddr=0x94887ac "hW$\b?u-\b", address=137221140) at cp-abi.c:69
> 
> G
> 
> 
> 

-- 
Daniel Jacobowitz                           Carnegie Mellon University
MontaVista Software                         Debian GNU/Linux Developer


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: 5.2 branch gdb crash - infinite recursion stack overflow
  2002-03-06  8:13 ` Daniel Jacobowitz
@ 2002-03-07  6:54   ` Gianni Mariani
  0 siblings, 0 replies; 3+ messages in thread
From: Gianni Mariani @ 2002-03-07  6:54 UTC (permalink / raw)
  To: Daniel Jacobowitz; +Cc: gdb

Daniel Jacobowitz wrote:

>On Wed, Mar 06, 2002 at 07:57:11AM -0800, Gianni Mariani wrote:
>
>>Any ideas ?
>>
>
>"That's nice, give us more."
>
>I need to see a little more information before I can guess what's
>wrong.  Like, what were you doing?  Preferably source code so that I
>can actually debug the problem!
>
Oops, I forgot to mention that I had asked to print a deref of pointer 
to a class that has virtual inheritance and virtual methods.  In prior 
revs of gdb it would come back with "can't convert to integer" or 
somthing like that.

So, it terms of creating a snippet of offending code - I'll do that 
soon, I just am too bizzee right now.  However, here is the snippet of 
the code of the offending classes.  A HA_ErrorReport is an interface 
passed into methods that want to be able to report errors. 
 HA_ErrorReportImpl is an implementation of an error reporter that 
basically stores the error codes.

These were compiled using g++ 3.0.3 on RH 7.2 running linux 2.4.17 on an 
Athlon.

class HA_ErrorReport {
public:
      
    /**
     * SetErrorMessage
     * @parm code The error code being set.
     * @parm msg The error message being set.
     */
    virtual void SetErrorMessage( int w_code, const std::string & w_msg 
) = 0;
    
};  

class HA_ErrorReportImpl : virtual public HA_ErrorReport {
public:

    /**
     * m_message contains the last message set by SetErrorMessage.
     */
    std::string             m_message;
 
    /**
     * m_code contains the last code set by SetErrorMessage.
     */
    int                     m_code;

    /**
     * m_ncalled contains the number of times SetErrorMessage was called.
     */
    int                     m_ncalled;

    /**
     * SetErrorMessage implements the HA_ErrorReport method to reporting
     * errors.
     */
    virtual void SetErrorMessage( int w_code, const std::string & w_msg );
      
    HA_ErrorReportImpl() :
        m_code(0), m_ncalled(0)
    {
    }
      
    virtual ~HA_ErrorReportImpl()
    {
    }
};  



Regards
G

>




^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2002-03-07 14:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-03-06  7:57 5.2 branch gdb crash - infinite recursion stack overflow Gianni Mariani
2002-03-06  8:13 ` Daniel Jacobowitz
2002-03-07  6:54   ` Gianni Mariani

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox