summaryrefslogtreecommitdiffstats
path: root/CHANGES
blob: 4553fb6ae18b4ceebe2695fd75a6dd251b00627b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164

This is the CHANGES file for cv2pdb, a 
converter of DMD CodeView/DWARF debug information to PDB files

Copyright (c) 2009-2012 by Rainer Schuetze, All Rights Reserved

Version history
---------------

2009-05-08 Version 0.1

  * initial release

2009-05-16 Version 0.2

  * replace .debug section in executable rather than rename it. (only works
    if it is the last section).
  * support for field type LF_VFUNCTAB and symbol type S_CONSTANT used by DMC.
  * added stringview to autoexp.dat for full length text display.

2009-06-04 Version 0.3

  * static members' debug info was not correctly converted, causing debugger confusion
  * now works on executables compiled by DMC
    - added command line switch -C to disable some D feature and 
      to remove function name from local variables
    - added support for type LF_BITFIELD.
  * added fields __viewhelper to classes string and object
  * new addin dviewhelper.dll to display correctly terminated strings
    and derived object type

2009-06-05 Version 0.4

  * fixed crash when long is used as index or element type of dynamic or 
    associative arrays

2009-06-06 Version 0.5

  * fixed error in __viewhelper field of string type, that could screw up type info
  * added support for wstring and dstring
  * fixed problems with debug info inside library by combining debug info of different modules 
    into a single pseudo-module
  * now also replaces '.' by '@' in enumerator types for more consistent debug info

2009-06-07 Version 0.6

  * removed LF_DERIVED info from debug info, as it is inconsistent in DMD generated info
    with more than 4096 type entries

2009-06-08 Version 0.7

  * corrected number of field entries in classes or struct, because DMD miscounts private members

2009-06-11 Version 0.8

  * tweaked visualizer macros to detect uninitialized associative arrays and to limit expansion
    to arrays with less than 1024 entries
  * renamed data pointer member of dynamic arrays to "ptr" to be consistent with the array property
    in D.

2009-06-19 Version 0.9

  * fixed line number info at the end of a segment or when switching to another file 
    because of inline expansion
  * fixed line numbers > 32767 and sections with 0 line number entries

2009-08-12 Version 0.10

  * better support for DMC:
    - entries LF_FRIENDFCN removed
    - entries LF_FRIENDCLS, LF_VBCLASS and LF_IVBCLASS converted
    thanks to Andrew.
  * derived-classes info in class entry now cleared to be consistent with removal of LF_DERIVED

2009-12-29 Version 0.11

  * basic types now show with their D names, not as C types
  * "enum" prefix removed from type names of enumerator types
  * added type information for complex data types
  * dmd-patch needed for long/ulong support (http://d.puremagic.com/issues/show_bug.cgi?id=3373)
  * experimental hack to add lexical scope to local variables (dmd patch in
    http://d.puremagic.com/issues/show_bug.cgi?id=3657 needed)

2010-04-13 Version 0.12

  * added patch to convert binaries produced by Metroworks CodeWarrior
  * names of local function are now demangled
  * dmd 2.041 fixes long/ulong support (patch http://d.puremagic.com/issues/show_bug.cgi?id=3373
    no longer needed)
  * added managed C++ project to integrate cv2pdb with CLR (thanks to Alexander Bothe)
  * dmd 2.043 uses different implementation of associative arrays, use command line
    option -D 2.043 or above to produce the respective debug info 

2010-06-03 Version 0.13

  * adapted to mspdb100.dll which comes with VS2010
  * tweaked autoexp.dat modifications to be more stable with uninitialized data
  * autoexp.snippet now split into two files: autoexp.expand and autoexp.visualizer

2010-06-23 Version 0.14

  * 64-integer types are now displayed as "dlong" and "ulong" instead of "__int64" and
    "unsigned __int64"
  * improved support for long and ulong for DMD versions before 1.057 and 2.041
  * DMC also emits D-types for "long long" and "unsigned long long", these are
    translated back to the correct types if command option -C is used
  * now adding properties "has nested type" and "is nested type" to class/struct/union/enum types
  * better support for enumerators: now added as user defined types (DMD patch needed)

2010-08-08 Version 0.15

  * thanks to patches by Z3N, the resulting pdb is now usable by more debuggers 
  * now uses shared file access to executable
  * incomplete structs/classes are now added as user defined types to avoid confusing
    debugger for following symbols
  * fixed name demangling of very long names
  * added name demangling support for @safe/@trusted/@property/pure/nothrow/ref
  * base classes are added to D/cpp-interfaces to allow viewing the virtual function 
    table pointer
  * structs, classes and interfaces now have an internal qualifier attached that allows
    the preview in autoexp.dat to show better info for structs and interfaces

2010-08-10 Version 0.16

  * fixed crash when working with -C (introduced in last version)

2010-09-04 Version 0.17

  * fixed crash that could occur for user-defined types longer than 90 characters

2010-10-24 Version 0.18

  * fixed error with nested types longer than 255 characters
  * more fixes for names longer than 300 characters

2010-12-10 Version 0.19

  * now converting only class pointers to references, not pointers to structs or void
  * changed default D-version to 2.043 to create correct associative array type 
    information for recent compilers by default

2010-12-30 Version 0.20

  * fixed another issue with user defined type names longer than 300 characters
  * now corrects the debug info when dmc/optlink emits multiple struct definitions,
    but only one UDT record.

2010-05-08 Version 0.21

  * fixed decoding of compressed symbols
  * added command line switch -n to disable symbol demangling 
  * fixed crash with more than 32767 types

unreleased Version 0.22

  * added command line switch -s to specify the replacement character for '.' in symbols
  * fixed another crash where compressed symbols expand to more than 4096 characters

2012-02-12 Version 0.23

  * disabled named enumerator for D basic types to avoid debugger troubles displaying arrays
  * added command line switch -e to enable using named enumerator for D basic types
  * added DWARF support
  * added x64 support