Re: Tool for troubleshooting R6025 error in VC++
- From: "Vipin" <Vipin@xxxxxxxxxx>
- Date: Fri, 13 Jan 2006 20:00:36 +0530
>Usually pure virtual function calls occur when somebody is trying to call a
>(pure) virtual
>function from constructor or destructor of a class (explicitly or
>implicitly, via other functions).
I had experienced the above behaviour long time back.
PSS ID Number: 125749 explains more on this.
--
Vipin Aravind
Microsoft - MVP
"Oleg Starodumov" <com-dot-debuginfo-at-oleg> wrote in message
news:e2K0ZoCGGHA.3080@xxxxxxxxxxxxxxxxxxxxxxx
>
>> This crash occurs only in release mode. It does not occur If I set the
>> bebug information(i.e Link->GenerateDebugInfo settings ) in release
>> mode. Moreover this does not reproduce in release mode always..It comes
>> up some times only..i.e I don't have the steps for repeating this
>> error.
>
> So I would not conclude that it is not reproducible in a build with debug
> information. The presence of debug information usually has no effect
> on the application's behavior, so I would still recommend to try
> reproducing
> the problem in such build, then you will see exactly where the problem is.
>
> If you want to go on with the build without debug information,
> you can use tracing (OutputDebugString, AtlTrace, or any other tracing
> library that can work in release builds). Start with tracing of only the
> most
> important events in the code (to avoid slowing the app down), then try
> to narrow the problem down to determine where it is.
>
> In particular, try to trace when constructors and destructors of classes
> with pure virtual functions are called.
>
>> Hence I don't think it is problem with virtual function call. If
>> it was a problem with virtual function call, I should be able to
>> reproduce this error always in both debug and release builds ..right?
>
> Yes, this is possible. For example, the problem can be timing dependent.
>
> Usually pure virtual function calls occur when somebody is trying to call
> a (pure) virtual
> function from constructor or destructor of a class (explicitly or
> implicitly, via other functions).
> But this error can also happen, for example, when a virtual function is
> called on
> an object whose destructor has already been called (it usually occurs in
> multithreaded
> applications, when one thread destroys an object and another thread then
> calls a virtual
> function on it).
>
> If your application is multithreaded, and uses the suspected objects from
> multiple threads,
> you can try to test the application on a faster machine, better on a
> multiprocessor one.
>
> You can also try to test the application under PageHeap, it can help to
> catch some other
> issues that could lead to similar situations (e.g. reuse-after-free bugs):
> http://www.debuginfo.com/tips/userbpntdll.html
>
>> Do my Link options of Project settings have any impact on this error?
>
> Probably not.
>
> Oleg
>
>
>
>
>
>
.
- References:
- Tool for troubleshooting R6025 error in VC++
- From: madhavi
- Re: Tool for troubleshooting R6025 error in VC++
- From: Oleg Starodumov
- Re: Tool for troubleshooting R6025 error in VC++
- From: madhavi
- Re: Tool for troubleshooting R6025 error in VC++
- From: Oleg Starodumov
- Tool for troubleshooting R6025 error in VC++
- Prev by Date: Re: Changing Text Color?
- Next by Date: Re: Changing Text Color?
- Previous by thread: Re: Tool for troubleshooting R6025 error in VC++
- Next by thread: Re: Tool for troubleshooting R6025 error in VC++
- Index(es):
Relevant Pages
|