There's a small detail wrong with the DWARF line number information: your code makes wrong assumptions when the line number state machine register state is reset. The DWARF specification says it's reset after DW_LNE_end_sequence, but as your code resets the register state, it doesn't emit a DW_LNE_end_sequence. The result is that some address/line number ranges in .debug_line are completely bogus. This patch provides a simple fix by moving DW_LNE_end_sequence to where it is appropriate. (Note that some DWARF consumers, such as GNU BFD, are able to deal with the buggy line number information.) (I hope the wrong-code keyword isn't inappropriate here.) Note that this bug is unrelated to bug 3214, which has yet to be fixed.
Created attachment 513 [details] fix for .debug_line output
SVN commit: http://www.dsource.org/projects/dmd/changeset/265
Great! That means this particular bug is fixed in the SVN version. Now Walter, what about bug 3214? Please comment!
Please, don't close bugs until a fix is proven to work. There is no DMD release that has this bug fixed yet.
Fixed dmd 1.053 and 2.037
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル