Bug 15729 – [REG(master)] broken debug info for libraries

Status
RESOLVED
Resolution
FIXED
Severity
regression
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
x86_64
OS
Windows
Creation time
2016-02-27T05:17:00Z
Last change time
2016-03-22T04:05:11Z
Keywords
link-failure, pull
Assigned to
nobody
Creator
jiki

Comments

Comment #0 by jiki — 2016-02-27T05:17:35Z
This is a git head regression and is a BLOCKER problem in Windows. I have tested on Windows 7 64-bit, but with -m32. CODE: test.d import std.string; // or import std.uni; main.d void main() { } COMMAND: dmd -g -debug -lib test.d dmd -g main.d test.lib OUTPUT: Error 163: Cannot CVPACK Type 0002 As my whole project, moreover I get numerous '162' errors.
Comment #1 by jiki — 2016-03-01T09:43:47Z
I looked into this and UPDATE. test.d: struct S { int i; int[] a; char c; } main.d: void main() { } COMMAND: dmd -g -debug -lib test.d dmd -g main.d test.lib OUTPUT: Error 163: Cannot CVPACK Type 0002
Comment #2 by jiki — 2016-03-03T02:11:58Z
Comment #3 by code — 2016-03-06T14:54:25Z
Thanks for the reduced test case, will fix ASAP.
Comment #4 by code — 2016-03-19T23:35:24Z
Comment #5 by github-bugzilla — 2016-03-20T05:22:30Z
Commits pushed to stable at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/1737bea648d961dbc1a03dc0eb2babe2d66c322f fix Issue 15729 - broken debug info for libraries - need to reset fake symbols that are only generated for debug types (struct, enum) or the cached Stypidx will erroneously be used for the next object file https://github.com/D-Programming-Language/dmd/commit/ed13c690af3c2910e648d86e51808d60542cebc0 Merge pull request #5548 from MartinNowak/fix15729 fix Issue 15729 - broken debug info for libraries
Comment #6 by github-bugzilla — 2016-03-22T04:05:11Z