Jump to page: 1 2 3
Thread overview
[Windows & DMD] No callstack when crash with Access violation reading location 0x00000000
Jan 11, 2014
Xavier Bigand
Jan 11, 2014
Namespace
Jan 11, 2014
Xavier Bigand
Jan 11, 2014
Benjamin Thaut
Jan 11, 2014
Xavier Bigand
Jan 11, 2014
Benjamin Thaut
Jan 11, 2014
Xavier Bigand
Jan 11, 2014
Benjamin Thaut
Jan 11, 2014
Xavier Bigand
Jan 11, 2014
Benjamin Thaut
Jan 11, 2014
Xavier Bigand
Jan 12, 2014
Benjamin Thaut
Jan 12, 2014
Xavier Bigand
Jan 12, 2014
Benjamin Thaut
Jan 13, 2014
Xavier Bigand
Jan 13, 2014
Xavier Bigand
Jan 13, 2014
Benjamin Thaut
Jan 18, 2014
Xavier Bigand
Jan 22, 2014
TheFlyingFiddle
Jan 22, 2014
Flamaros
Jan 30, 2014
Xavier Bigand
Jan 11, 2014
Benjamin Thaut
Jan 11, 2014
Namespace
Jan 11, 2014
Xavier Bigand
January 11, 2014
I get some troubles to solve a memory bug, just cause I don't have any informations for debuggers and I can't neither use DrMemory.

Is it possible to get the callstack when calling a method on a null pointer with specifics DMD flags?

Maybe DMD need add null ptr call checks in debug mode?
January 11, 2014
On Saturday, 11 January 2014 at 16:24:08 UTC, Xavier Bigand wrote:
> I get some troubles to solve a memory bug, just cause I don't have any informations for debuggers and I can't neither use DrMemory.
>
> Is it possible to get the callstack when calling a method on a null pointer with specifics DMD flags?
>
> Maybe DMD need add null ptr call checks in debug mode?

Try to compile with -gc
January 11, 2014
Am 11.01.2014 17:24, schrieb Xavier Bigand:
> I get some troubles to solve a memory bug, just cause I don't have any
> informations for debuggers and I can't neither use DrMemory.
>
> Is it possible to get the callstack when calling a method on a null
> pointer with specifics DMD flags?
>
> Maybe DMD need add null ptr call checks in debug mode?

For x64 exeuctables compile with -g.
For x86 executables compile with -g and then run cv2pdb on the final executable. cv2pdb is part of VisualD.

Kind Regards
Benjamin Thaut
January 11, 2014
On Saturday, 11 January 2014 at 16:24:08 UTC, Xavier Bigand wrote:
> I get some troubles to solve a memory bug, just cause I don't have any informations for debuggers and I can't neither use DrMemory.
>
> Is it possible to get the callstack when calling a method on a null pointer with specifics DMD flags?
>
> Maybe DMD need add null ptr call checks in debug mode?

In a perfect world D would have a built-in solution to avoid null references/pointer. :)
January 11, 2014
Le 11/01/2014 18:45, Benjamin Thaut a écrit :
> Am 11.01.2014 17:24, schrieb Xavier Bigand:
>> I get some troubles to solve a memory bug, just cause I don't have any
>> informations for debuggers and I can't neither use DrMemory.
>>
>> Is it possible to get the callstack when calling a method on a null
>> pointer with specifics DMD flags?
>>
>> Maybe DMD need add null ptr call checks in debug mode?
>
> For x64 exeuctables compile with -g.
> For x86 executables compile with -g and then run cv2pdb on the final
> executable. cv2pdb is part of VisualD.
>
> Kind Regards
> Benjamin Thaut

Yep I am using VisualD with cv2pdb, and I build in debug mode with the flag -g.

January 11, 2014
Le 11/01/2014 18:20, Namespace a écrit :
> On Saturday, 11 January 2014 at 16:24:08 UTC, Xavier Bigand wrote:
>> I get some troubles to solve a memory bug, just cause I don't have any
>> informations for debuggers and I can't neither use DrMemory.
>>
>> Is it possible to get the callstack when calling a method on a null
>> pointer with specifics DMD flags?
>>
>> Maybe DMD need add null ptr call checks in debug mode?
>
> Try to compile with -gc

Doesn't change anything.

January 11, 2014
Le 11/01/2014 17:24, Xavier Bigand a écrit :
> I get some troubles to solve a memory bug, just cause I don't have any
> informations for debuggers and I can't neither use DrMemory.
>
> Is it possible to get the callstack when calling a method on a null
> pointer with specifics DMD flags?
>
> Maybe DMD need add null ptr call checks in debug mode?

I am using VisualD with cv2pdb.

I also tried to put checks manually on the code section which seems to crash (no crash when commented), but I almost don't use ptr and it never enter in my check conditions. It's like a real memory corruption in an other part of code.
January 11, 2014
Am 11.01.2014 19:16, schrieb Xavier Bigand:
> Le 11/01/2014 18:45, Benjamin Thaut a écrit :
>> Am 11.01.2014 17:24, schrieb Xavier Bigand:
>>> I get some troubles to solve a memory bug, just cause I don't have any
>>> informations for debuggers and I can't neither use DrMemory.
>>>
>>> Is it possible to get the callstack when calling a method on a null
>>> pointer with specifics DMD flags?
>>>
>>> Maybe DMD need add null ptr call checks in debug mode?
>>
>> For x64 exeuctables compile with -g.
>> For x86 executables compile with -g and then run cv2pdb on the final
>> executable. cv2pdb is part of VisualD.
>>
>> Kind Regards
>> Benjamin Thaut
>
> Yep I am using VisualD with cv2pdb, and I build in debug mode with the
> flag -g.
>

And it does not print a stack trace? Is it possbile that this access violation happens within a module constructor?

Try importing core.sys.windows.stacktrace into every single one of your modules and see if that changes something.

Kind Regards
Benjamin Thaut
January 11, 2014
Le 11/01/2014 19:40, Benjamin Thaut a écrit :
> Am 11.01.2014 19:16, schrieb Xavier Bigand:
>> Le 11/01/2014 18:45, Benjamin Thaut a écrit :
>>> Am 11.01.2014 17:24, schrieb Xavier Bigand:
>>>> I get some troubles to solve a memory bug, just cause I don't have any
>>>> informations for debuggers and I can't neither use DrMemory.
>>>>
>>>> Is it possible to get the callstack when calling a method on a null
>>>> pointer with specifics DMD flags?
>>>>
>>>> Maybe DMD need add null ptr call checks in debug mode?
>>>
>>> For x64 exeuctables compile with -g.
>>> For x86 executables compile with -g and then run cv2pdb on the final
>>> executable. cv2pdb is part of VisualD.
>>>
>>> Kind Regards
>>> Benjamin Thaut
>>
>> Yep I am using VisualD with cv2pdb, and I build in debug mode with the
>> flag -g.
>>
>
> And it does not print a stack trace? Is it possbile that this access
> violation happens within a module constructor?
>
> Try importing core.sys.windows.stacktrace into every single one of your
> modules and see if that changes something.
>
> Kind Regards
> Benjamin Thaut

Yes I have no stack trace and adding import core.sys.windows.stacktrace change nothing.
January 11, 2014
Am 11.01.2014 20:50, schrieb Xavier Bigand:
>
> Yes I have no stack trace and adding import core.sys.windows.stacktrace
> change nothing.

That is very strange. Can you reduce this? Or is this project on github somewhere? Did you try using a debugger?

Kind Regards
Benjamin Thaut
« First   ‹ Prev
1 2 3