|
Archives
D Programming
DD.gnu digitalmars.D digitalmars.D.bugs digitalmars.D.dtl digitalmars.D.ide digitalmars.D.dwt digitalmars.D.announce digitalmars.D.learn digitalmars.D.debugger C/C++ Programming
c++c++.announce c++.atl c++.beta c++.chat c++.command-line c++.dos c++.dos.16-bits c++.dos.32-bits c++.idde c++.mfc c++.rtl c++.stl c++.stl.hp c++.stl.port c++.stl.sgi c++.stlsoft c++.windows c++.windows.16-bits c++.windows.32-bits c++.wxwindows digitalmars.empire digitalmars.DMDScript electronics |
digitalmars.D.bugs - va_list segfault on AMD64
Im compiling the following with gdc-0.25-4.2.3-2ubuntu2 on Ubuntu 8.04
AMD64 and it gets a segmentation fault.
import std.stdio;
void main(){
writefln(42);
}
Writing strings works fine as far as I see. Following is the
stackframe given by gdb. And there you see the reason why I think its
something with the va_list stuff (which is pretty different on AMD64
than x86, because parameters are passed inside registers). But I'm not
really familiar with the internals of phobos, so maybe that guess is
wrong.
#0 0x40cfb9
_D3std6format11doFormatPtrFDFwZvAC8TypeInfoG1S6object13__va_list_tagPvZv9formatArg
FaZv6putstrMFAaZv()
(??:??)
#1 0x40e2d9
_D3std6format11doFormatPtrFDFwZvAC8TypeInfoG1S6object13__va_list_tagP
Zv9formatArgMFaZv()
(??:??)
#2 0x40f101
_D3std6format11doFormatPtrFDFwZvAC8TypeInfoG1S6object13__va_list_tagPvZv()
(??:??)
#3 0x40c603
_D3std5stdio7writefxFPS3std1c5stdio6_iobufAC8TypeInfoG1S6object
3__va_list_tagiZv()
(??:??)
#4 0x40c85a _D3std5stdio8writeflnFYv() (??:??)
#5 0x402bc0 _Dmain() (bug_test.d:3)
#6 0x4191a7 _D9dgccmain211_d_run_mainUiPPaPUAAaZiZi2goMFZv() (??:??)
#7 0x41925f _d_run_main() (??:??)
#8 0x7ff0414eb1c4 __libc_start_main() (/lib/libc.so.6:??)
#9 0x402b19 _start() (??:??)
Apr 18 2008
|