Skip to content

Commit 4f9b09c

Browse files
committed
add mago option for displaying ranges
update to dmd 2.092.1 and LDC 1.22.0 fix build without dmd in PATH
1 parent 19dc8dc commit 4f9b09c

File tree

5 files changed

+22
-11
lines changed

5 files changed

+22
-11
lines changed

CHANGES

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1255,10 +1255,13 @@ unreleased version 1.0.0
12551255
- improve preciseness for the GC
12561256
- fix parameters not considered references to itself
12571257
- fix crash when invoking "Find All References"
1258+
- fixed passing default versions to file not in any project
12581259
* editor with dmdserver:
12591260
- implement "goto definition" by clicking identifier in tool tip
12601261
- add navigation bar
1262+
- fixed "Find in Solution" no longer working in VS 2019 16.6
12611263
* mago debugger
1262-
- can now execute class/struct methods __debugOverview, __debugExpaanded, __debugTextView
1264+
- can now execute class/struct methods __debugOverview, __debugExpanded, __debugTextView
12631265
to customize display in the debugger
1264-
- some performance improvements by caching some data while the debuggee is stopped
1266+
- can now display ranges similar to arrays
1267+
- some performance improvements by caching some data while the debuggee is stopped

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22
#define VERSION_MINOR 0
33
#define VERSION_REVISION 0
44
#define VERSION_BETA -beta
5-
#define VERSION_BUILD 1
5+
#define VERSION_BUILD 2

build/build.visualdproj

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -753,20 +753,20 @@ call $(InputPath) "$(OutDir)\tlb2idl.exe" "$(IntDir)\dte_idl.succ
753753
if exist "$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat" call "$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat"
754754
if exist "$(VCINSTALLDIR)\Auxiliary\Build\vcvars32.bat" ( pushd . && call "$(VCINSTALLDIR)\Auxiliary\Build\vcvars32.bat" && popd )
755755
if errorlevel 1 goto reportError
756-
dmd -g -map "$(IntDir)\$(InputName).map" "-of$(OutDir)\$(InputName).dll" "-od$(IntDir)" -defaultlib=user32.lib -L/ENTRY:_DllMain@12 $(InputPath)" outfile="$(OutDir)\$(InputName).dll" path="..\tools\filemonitor.d" tool="Custom" />
756+
$(DMDInstallDir)\windows\bin\dmd -g -map "$(IntDir)\$(InputName).map" "-of$(OutDir)\$(InputName).dll" "-od$(IntDir)" -defaultlib=user32.lib -L/ENTRY:_DllMain@12 $(InputPath)" outfile="$(OutDir)\$(InputName).dll" path="..\tools\filemonitor.d" tool="Custom" />
757757
<File customcmd="echo Compiling $(InputPath)...
758758
if exist &quot;$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat&quot; call &quot;$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat&quot;
759759
if exist &quot;$(VCINSTALLDIR)\Auxiliary\Build\vcvars32.bat&quot; ( pushd . &amp;&amp; call &quot;$(VCINSTALLDIR)\Auxiliary\Build\vcvars32.bat&quot; &amp;&amp; popd )
760760
if errorlevel 1 goto reportError
761-
dmd -map &quot;$(IntDir)\$(InputName).map&quot; &quot;-of$(OutDir)\$(InputName).exe&quot; &quot;-od$(IntDir)&quot; $(InputPath)" outfile="$(OutDir)\$(InputName).exe" path="..\tools\largeadr.d" tool="Custom" />
761+
$(DMDInstallDir)\windows\bin\dmd -map &quot;$(IntDir)\$(InputName).map&quot; &quot;-of$(OutDir)\$(InputName).exe&quot; &quot;-od$(IntDir)&quot; $(InputPath)" outfile="$(OutDir)\$(InputName).exe" path="..\tools\largeadr.d" tool="Custom" />
762762
<File customcmd="dmd -map $(OutDir)\$(InputName).map -of$(IntDir)\$(InputName).exe $(InputPath) ..\tools\nostacktrace.d" perConfig="true" dependencies="..\tools\nostacktrace.d" outfile="$(OutDir)\$(InputName).exe" path="..\tools\mb2utf16.d" tool="Custom">
763763
<Config tool="Custom" customcmd="echo Compiling $(InputPath)...
764764
dmd -g -map &quot;$(IntDir)\$(InputName).map&quot; &quot;-of$(OutDir)\$(InputName).exe&quot; &quot;-od$(IntDir)&quot; $(InputPath) ..\tools\nostacktrace.d" dependencies="..\tools\nostacktrace.d" outfile="$(OutDir)\$(InputName).exe" name="Debug|Win32" />
765765
<Config tool="Custom" customcmd="echo Compiling $(InputPath)...
766766
if exist &quot;$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat&quot; call &quot;$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat&quot;
767767
if exist &quot;$(VCINSTALLDIR)\Auxiliary\Build\vcvars32.bat&quot; ( pushd . &amp;&amp; call &quot;$(VCINSTALLDIR)\Auxiliary\Build\vcvars32.bat&quot; &amp;&amp; popd )
768768
if errorlevel 1 goto reportError
769-
dmd -m32mscoff -g -map &quot;$(IntDir)\$(InputName).map&quot; &quot;-of$(OutDir)\$(InputName).exe&quot; $(InputPath) ..\tools\nostacktrace.d user32.lib -L/SUBSYSTEM:CONSOLE,5.01" dependencies="..\tools\nostacktrace.d" outfile="$(OutDir)\$(InputName).exe" name="Debug COFF32|Win32" />
769+
$(DMDInstallDir)\windows\bin\dmd -m32mscoff -g -map &quot;$(IntDir)\$(InputName).map&quot; &quot;-of$(OutDir)\$(InputName).exe&quot; $(InputPath) ..\tools\nostacktrace.d user32.lib -L/SUBSYSTEM:CONSOLE,5.01" dependencies="..\tools\nostacktrace.d" outfile="$(OutDir)\$(InputName).exe" name="Debug COFF32|Win32" />
770770
<Config tool="Custom" customcmd="echo Compiling $(InputPath)...
771771
if exist &quot;$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat&quot; call &quot;$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat&quot;
772772
if exist &quot;$(VCINSTALLDIR)\Auxiliary\Build\vcvars32.bat&quot; ( pushd . &amp;&amp; call &quot;$(VCINSTALLDIR)\Auxiliary\Build\vcvars32.bat&quot; &amp;&amp; popd )
@@ -786,9 +786,9 @@ dmd -g -map &quot;$(IntDir)\$(InputName).map&quot; &quot;-of$(OutDir)\$(InputNam
786786
if exist &quot;$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat&quot; call &quot;$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat&quot;
787787
if exist &quot;$(VCINSTALLDIR)\Auxiliary\Build\vcvars32.bat&quot; ( pushd . &amp;&amp; call &quot;$(VCINSTALLDIR)\Auxiliary\Build\vcvars32.bat&quot; &amp;&amp; popd )
788788
if errorlevel 1 goto reportError
789-
dmd -g -m32mscoff -version=pipeLink -map &quot;$(IntDir)\pipelink.map&quot; &quot;-of$(OutDir)\pipelink.exe&quot; $(InputPath) ..\tools\nostacktrace.d user32.lib oleaut32.lib ole32.lib -L/SUBSYSTEM:CONSOLE,5.01
789+
$(DMDInstallDir)\windows\bin\dmd -g -m32mscoff -version=pipeLink -map &quot;$(IntDir)\pipelink.map&quot; &quot;-of$(OutDir)\pipelink.exe&quot; $(InputPath) ..\tools\nostacktrace.d user32.lib oleaut32.lib ole32.lib -L/SUBSYSTEM:CONSOLE,5.01
790790
if errorlevel 1 goto reportError
791-
dmd -g -m32mscoff -map &quot;$(IntDir)\$(InputName).map&quot; &quot;-of$(OutDir)\$(InputName).exe&quot; $(InputPath) ..\tools\nostacktrace.d user32.lib oleaut32.lib ole32.lib -L/SUBSYSTEM:CONSOLE,5.01" dependencies="..\tools\nostacktrace.d" outfile="$(OutDir)\$(InputName).exe" name="Debug COFF32|Win32" />
791+
$(DMDInstallDir)\windows\bin\dmd -g -m32mscoff -map &quot;$(IntDir)\$(InputName).map&quot; &quot;-of$(OutDir)\$(InputName).exe&quot; $(InputPath) ..\tools\nostacktrace.d user32.lib oleaut32.lib ole32.lib -L/SUBSYSTEM:CONSOLE,5.01" dependencies="..\tools\nostacktrace.d" outfile="$(OutDir)\$(InputName).exe" name="Debug COFF32|Win32" />
792792
<Config tool="Custom" customcmd="echo Compiling $(InputPath)...
793793
if exist &quot;$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat&quot; call &quot;$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat&quot;
794794
if exist &quot;$(VCINSTALLDIR)\Auxiliary\Build\vcvars32.bat&quot; ( pushd . &amp;&amp; call &quot;$(VCINSTALLDIR)\Auxiliary\Build\vcvars32.bat&quot; &amp;&amp; popd )
@@ -824,6 +824,6 @@ call $(InputPath) &quot;$(OutDir)\vsi2d.exe&quot; &quot;$(IntDir)\sdk_libs.succe
824824
<File customcmd="if exist &quot;$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat&quot; call &quot;$(VSINSTALLDIR)\Common7\Tools\vsvars32.bat&quot;
825825
if exist &quot;$(VCINSTALLDIR)\Auxiliary\Build\vcvars32.bat&quot; ( pushd . &amp;&amp; call &quot;$(VCINSTALLDIR)\Auxiliary\Build\vcvars32.bat&quot; &amp;&amp; popd )
826826
if errorlevel 1 goto reportError
827-
dmd -d -map &quot;$(IntDir)\$(InputName).map&quot; &quot;-of$(OutDir)\$(InputName).exe&quot; &quot;-od$(IntDir)&quot; $(InputPath) oleaut32.lib uuid.lib" outfile="$(OutDir)\$(InputName).exe" path="..\tools\tlb2idl.d" tool="Custom" />
827+
$(DMDInstallDir)\windows\bin\dmd -d -map &quot;$(IntDir)\$(InputName).map&quot; &quot;-of$(OutDir)\$(InputName).exe&quot; &quot;-od$(IntDir)&quot; $(InputPath) oleaut32.lib uuid.lib" outfile="$(OutDir)\$(InputName).exe" path="..\tools\tlb2idl.d" tool="Custom" />
828828
</Folder>
829829
</DProject>

nsis/visuald.nsi

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,12 +29,12 @@
2929

3030
; define DMD source path to include dmd installation
3131
; !define DMD
32-
!define DMD_VERSION "2.092.0"
32+
!define DMD_VERSION "2.092.1"
3333
!define DMD_SRC c:\d\dmd-${DMD_VERSION}
3434

3535
; define LDC to include ldc installation
3636
; !define LDC
37-
!define LDC_VERSION "1.21.0"
37+
!define LDC_VERSION "1.22.0"
3838
!define LDC_SRC c:\d\ldc2-${LDC_VERSION}-windows-multilib
3939

4040
; define VS2019 to include VS2019 support

visuald/propertypage.d

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3080,6 +3080,7 @@ struct MagoOptions
30803080
bool removeLeadingHexZeroes;
30813081
bool recombineTuples;
30823082
bool callDebuggerFunctions;
3083+
bool callDebuggerRanges;
30833084
bool callDebuggerUseMagoGC;
30843085
bool showDArrayLengthInType;
30853086
uint maxArrayElements;
@@ -3096,6 +3097,7 @@ struct MagoOptions
30963097
keyMago.Set("removeLeadingHexZeroes", removeLeadingHexZeroes);
30973098
keyMago.Set("recombineTuples", recombineTuples);
30983099
keyMago.Set("callDebuggerFunctions", callDebuggerFunctions);
3100+
keyMago.Set("callDebuggerRanges", callDebuggerRanges);
30993101
keyMago.Set("callDebuggerUseMagoGC", callDebuggerUseMagoGC);
31003102
keyMago.Set("showDArrayLengthInType", showDArrayLengthInType);
31013103
keyMago.Set("maxArrayElements", maxArrayElements);
@@ -3114,6 +3116,7 @@ struct MagoOptions
31143116
removeLeadingHexZeroes = (keyMago.GetDWORD("removeLeadingHexZeroes", 0) != 0);
31153117
recombineTuples = (keyMago.GetDWORD("recombineTuples", 1) != 0);
31163118
callDebuggerFunctions = (keyMago.GetDWORD("callDebuggerFunctions", 1) != 0);
3119+
callDebuggerRanges = (keyMago.GetDWORD("callDebuggerRanges", 1) != 0);
31173120
callDebuggerUseMagoGC = (keyMago.GetDWORD("callDebuggerUseMagoGC", 1) != 0);
31183121
showDArrayLengthInType = (keyMago.GetDWORD("showDArrayLengthInType", 0) != 0);
31193122
maxArrayElements = keyMago.GetDWORD("maxArrayElements", 1000);
@@ -3138,6 +3141,7 @@ class MagoPropertyPage : ResizablePropertyPage
31383141
AddControl("", mExpandableStrings = new CheckBox(mCanvas, "Expand strings to show array of characters"));
31393142
AddControl("", mHideRefPointers = new CheckBox(mCanvas, "Hide pointers for class references and slices"));
31403143
AddControl("", mCallDebuggerFuncs = new CheckBox(mCanvas, "Call struct/class methods __debug[Overview|Expanded|Visualizer]"));
3144+
AddControl("", mCallDebuggerRange = new CheckBox(mCanvas, "Call range methods to show elements in overview/expansion"));
31413145
AddControl("", mCallDebugSwitchGC = new CheckBox(mCanvas, "Switch GC while executing debugger functions"));
31423146
AddControl("", mShowLengthInType = new CheckBox(mCanvas, "Show length of dynamic array in type column"));
31433147
AddControl("", mRemoveHexZeroes = new CheckBox(mCanvas, "Remove leading zeroes from hex values"));
@@ -3181,6 +3185,7 @@ class MagoPropertyPage : ResizablePropertyPage
31813185

31823186
void EnableControls()
31833187
{
3188+
mCallDebuggerRange.setEnabled(mOptions.callDebuggerFunctions);
31843189
}
31853190

31863191
void SetControls()
@@ -3195,6 +3200,7 @@ class MagoPropertyPage : ResizablePropertyPage
31953200
mRemoveHexZeroes.setChecked(mOptions.removeLeadingHexZeroes);
31963201
mRecombineTuples.setChecked(mOptions.recombineTuples);
31973202
mCallDebuggerFuncs.setChecked(mOptions.callDebuggerFunctions);
3203+
mCallDebuggerRange.setChecked(mOptions.callDebuggerRanges);
31983204
mCallDebugSwitchGC.setChecked(mOptions.callDebuggerUseMagoGC);
31993205
mShowLengthInType.setChecked(mOptions.showDArrayLengthInType);
32003206
mMaxArrayElements.setText(to!string(mOptions.maxArrayElements));
@@ -3212,6 +3218,7 @@ class MagoPropertyPage : ResizablePropertyPage
32123218
changes += changeOption(mRemoveHexZeroes.isChecked(), opts.removeLeadingHexZeroes, refopts.removeLeadingHexZeroes);
32133219
changes += changeOption(mRecombineTuples.isChecked(), opts.recombineTuples, refopts.recombineTuples);
32143220
changes += changeOption(mCallDebuggerFuncs.isChecked(), opts.callDebuggerFunctions, refopts.callDebuggerFunctions);
3221+
changes += changeOption(mCallDebuggerRange.isChecked(), opts.callDebuggerRanges, refopts.callDebuggerRanges);
32153222
changes += changeOption(mCallDebugSwitchGC.isChecked(), opts.callDebuggerUseMagoGC, refopts.callDebuggerUseMagoGC);
32163223
changes += changeOption(mShowLengthInType.isChecked(), opts.showDArrayLengthInType, refopts.showDArrayLengthInType);
32173224

@@ -3232,6 +3239,7 @@ class MagoPropertyPage : ResizablePropertyPage
32323239
CheckBox mRemoveHexZeroes;
32333240
CheckBox mRecombineTuples;
32343241
CheckBox mCallDebuggerFuncs;
3242+
CheckBox mCallDebuggerRange;
32353243
CheckBox mCallDebugSwitchGC;
32363244
CheckBox mShowLengthInType;
32373245
Text mMaxArrayElements;

0 commit comments

Comments
 (0)