Skip to content

Commit fb6450c

Browse files
authored
Merge pull request #299 from rainers/master
changes for Visual D 1.4.1-beta1
2 parents cdf4c76 + 0f6be1e commit fb6450c

20 files changed

+149
-95
lines changed

CHANGES

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
This is the CHANGES file for visuald, a
33
Visual Studio package providing both project management and language services
44

5-
Copyright (c) 2010-2013 by Rainer Schuetze, All Rights Reserved
5+
Copyright (c) 2010-2025 by Rainer Schuetze, All Rights Reserved
66

77
Version history
88
---------------
@@ -1406,3 +1406,11 @@ Version history
14061406
* mago: fixed showing intellisense information in tool tip while debugging in VS2022
14071407
* mago: expression evaluator now resolves identifiers of named enumerator types
14081408
* full installer now bundled with DMD 2.110.0 and LDC 1.40.0
1409+
1410+
2025-04-20 version 1.4.1-beta1
1411+
* dmdserver: updated to frontend of DMD 2.111.0
1412+
* full installer now bundled with DMD 2.111.0 and LDC 1.40.1
1413+
* updated to build with dmd-2.111
1414+
* mago: fixed display of AA key in expanded view
1415+
* issue #291: allow overriding the default compiler executable path in the VC project settings
1416+
* issue #296: VC project integration: added support to build for ARM64 with LDC

README.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ Copyright (c) 2010-2025 by Rainer Schuetze, All Rights Reserved
99
Visual D aims at providing seamless integration of the D programming language
1010
into Visual Studio.
1111

12-
For installer download, more documentation and build instructions, please visit http://rainers.github.io/visuald/visuald/StartPage.html.
13-
Use forum http://forum.dlang.org/group/digitalmars.D.ide for questions and the D bug tracker https://issues.dlang.org/ to report issues.
12+
For installer download, more documentation and build instructions, please visit https://rainers.github.io/visuald/visuald/StartPage.html.
13+
Use forum https://forum.dlang.org/group/ide for questions and the D bug tracker https://github.com/dlang/visuald/issues to report issues.
1414

1515

1616
Major Features
@@ -22,7 +22,7 @@ Major Features
2222
- custom build commands
2323
- pre/post custom build steps
2424
- automatic dependency generation
25-
- automatic link between dependend projects
25+
- automatic link between dependent projects
2626
- new project templates
2727

2828
* Integration with VC projects
@@ -81,7 +81,7 @@ For more details, see the full text of the license in the file LICENSE_1.0.txt.
8181

8282
The installer comes with a number of additional products:
8383
- cv2pdb: https://github.com/rainers/cv2pdb by Rainer Schuetze
84-
- mago: http://dsource.org/projects/mago_debugger by Aldo Nunez
84+
- mago: https://github.com/rainers/mago by Aldo Nunez/Rainer Schuetze
8585
- DParser: https://github.com/aBothe/D_Parser by Alexander Bothe
8686

8787
Installation
@@ -113,17 +113,17 @@ In a nutshell:
113113
- build project "VisualD"
114114

115115
For more information, visit
116-
http://rainers.github.io/visuald/visuald/BuildFromSource.html
116+
https://rainers.github.io/visuald/visuald/BuildFromSource.html
117117

118118
More Information
119119
----------------
120120
For more information on installation, a quick tour of Visual D with some
121121
screen shots and feedback, please visit the project home for Visual D at
122-
[http://rainers.github.io/visuald/visuald/StartPage.html](http://rainers.github.io/visuald/visuald/StartPage.html).
122+
(https://rainers.github.io/visuald/visuald/StartPage.html).
123123

124-
There's a forum dedicated to IDE discussions (http://forum.dlang.org/group/digitalmars.D.ide), where you can leave your comments and suggestions.
125-
Bug reports can be filed to the [D bugzilla database](https://issues.dlang.org/enter_bug.cgi?product=D)
126-
for Component VisualD.
124+
There's a forum dedicated to IDE discussions (https://forum.dlang.org/group/digitalmars.D.ide), where you can leave your comments and suggestions.
125+
Bug reports can be filed to the [issues](https://github.com/dlang/visuald/issues)
126+
of the repository.
127127

128128
Have fun,
129129
Rainer Schuetze

VERSION

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#define VERSION_MAJOR 1
22
#define VERSION_MINOR 4
3-
#define VERSION_REVISION 0
4-
#define VERSION_BETA
5-
#define VERSION_BUILD 0
3+
#define VERSION_REVISION 1
4+
#define VERSION_BETA -beta
5+
#define VERSION_BUILD 1

msbuild/dbuild/CompileDOpt.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -161,11 +161,12 @@ public string CodeGeneration
161161
get { return GetStringProperty("CodeGeneration"); }
162162
set
163163
{
164-
string[][] switchMap = new string[3][]
164+
string[][] switchMap = new string[4][]
165165
{
166166
new string[2] { "32BitsMS-COFF", "-m32mscoff" },
167167
new string[2] { "32Bits", "-m32" },
168-
new string[2] { "64Bits", "-m64" }
168+
new string[2] { "64Bits", "-m64" },
169+
new string[2] { "ARM64", "-march=arm64" }
169170
};
170171

171172
SetEnumProperty("CodeGeneration", "Code Generation",

msbuild/dcompile.targets

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -371,6 +371,7 @@
371371
<Link>
372372
<AdditionalLibraryDirectories Condition="'$(Platform)' == 'Win32'">$(LDCInstallDir)\lib32;%(Link.AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
373373
<AdditionalLibraryDirectories Condition="'$(Platform)' == 'x64'">$(LDCInstallDir)\lib64;%(Link.AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
374+
<AdditionalLibraryDirectories Condition="'$(Platform)' == 'ARM64'">$(LDCInstallDir)\libarm64;%(Link.AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
374375
<AdditionalDependencies>$(DRuntimeLibs);$(CRuntimeLibs);%(Link.AdditionalDependencies)</AdditionalDependencies>
375376
</Link>
376377
</ItemGroup>

msbuild/dcompile_defaults.props

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,8 @@
131131
<CodeGeneration Condition="'$(DCompiler)|$(Platform)' == 'DMD|Win32'">32BitsMS-COFF</CodeGeneration>
132132
<CodeGeneration Condition="'$(DCompiler)|$(Platform)' == 'LDC|Win32'">32Bits</CodeGeneration>
133133
<CodeGeneration Condition="'$(Platform)' == 'X64'">64Bits</CodeGeneration>
134-
<CodeGeneration Condition="'$(Platform)' != 'Win32' and '$(Platform)' != 'X64'">echo DMD not supported on this platform
134+
<CodeGeneration Condition="'$(Platform)' == 'ARM64'">ARM64</CodeGeneration>
135+
<CodeGeneration Condition="'$(Platform)' != 'Win32' and '$(Platform)' != 'X64' and '$(Platform)' != 'ARM64'">echo DMD not supported on this platform
135136
exit 1</CodeGeneration>
136137

137138

msbuild/dmd.xml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,10 @@
8282
</BoolProperty>
8383
<BoolProperty Name="LowMem" Category="General" DisplayName="Enable garbage collection for the compiler"
8484
Description="Uses less memory for the compilation at the cost of slower compilation. (-lowmem)" Switch="-lowmem" />
85+
<StringProperty Name="CompilerExe" Category="General" DisplayName="Compiler executable" IncludeInCommandLine="False"
86+
Description="Path to the compiler executable." />
8587

86-
<!-- =============== Messages =============== -->
88+
<!-- =============== Messages =============== -->
8789
<EnumProperty Name="Warnings" Category="Messages" DisplayName="Enable warnings" Description="Enable display of warnings. (-w, -wi)">
8890
<EnumValue Name="None" DisplayName="None" />
8991
<EnumValue Name="Info" DisplayName="warnings as messages (compilation will continue)" Switch="-wi" />
@@ -237,12 +239,12 @@
237239
Description="write browse information to this JSON file." Switch="-Xf" />
238240

239241
<!-- =============== invisible =============== -->
240-
<StringProperty Name="CompilerExe" DisplayName="Command Line" Visible="False" IncludeInCommandLine="False" />
241242
<BoolProperty Name="DoNotLink" DisplayName="Do Not Link" Visible="False" IncludeInCommandLine="True" Switch="-c" />
242243
<EnumProperty Name="CodeGeneration" DisplayName="Code Generation" Visible="False" IncludeInCommandLine="True" >
243244
<EnumValue Name="32BitsMS-COFF" DisplayName="Generate 32 bit code and write MS-COFF object files" Switch="-m32mscoff" />
244245
<EnumValue Name="32Bits" DisplayName="Generate 32 bit code" Switch="-m32" />
245246
<EnumValue Name="64Bits" DisplayName="Generate 64 bit code" Switch="-m64" />
247+
<EnumValue Name="ARM64" DisplayName="Generate ARM64 code" Switch="-march=arm64" />
246248
</EnumProperty>
247249
<StringProperty Subtype="AdditionalOptions" Name="AdditionalOptions" Category="Command Line"
248250
DisplayName="Additional Options" Description="Additional Options" />

msbuild/ldc.xml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,10 @@
8282
</BoolProperty>
8383
<BoolProperty Name="LowMem" Category="General" DisplayName="Enable garbage collection for the compiler"
8484
Description="Uses less memory for the compilation at the cost of slower compilation. (-lowmem)" Switch="-lowmem" />
85+
<StringProperty Name="CompilerExe" Category="General" DisplayName="Compiler executable" IncludeInCommandLine="False"
86+
Description="Path to the compiler executable." />
8587

86-
<!-- =============== Messages =============== -->
88+
<!-- =============== Messages =============== -->
8789
<EnumProperty Name="Warnings" Category="Messages" DisplayName="Enable warnings" Description="Enable display of warnings. (-w, -wi)">
8890
<EnumValue Name="None" DisplayName="None" />
8991
<EnumValue Name="Info" DisplayName="warnings as messages (compilation will continue)" Switch="-wi" />
@@ -234,6 +236,7 @@
234236
<EnumValue Name="32BitsMS-COFF" DisplayName="Generate 32 bit code and write MS-COFF object files" Switch="-m32mscoff" />
235237
<EnumValue Name="32Bits" DisplayName="Generate 32 bit code" Switch="-m32" />
236238
<EnumValue Name="64Bits" DisplayName="Generate 64 bit code" Switch="-m64" />
239+
<EnumValue Name="ARM64" DisplayName="Generate ARM64 code" Switch="-march=arm64" />
237240
</EnumProperty>
238241
<StringProperty Subtype="AdditionalOptions" Name="AdditionalOptions" Category="Command Line"
239242
DisplayName="Additional Options" Description="Additional Options" />

nsis/visuald.nsi

Lines changed: 12 additions & 3 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.110.0"
32+
!define DMD_VERSION "2.111.0"
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.40.0"
37+
!define LDC_VERSION "1.40.1"
3838
!define LDC_SRC c:\d\ldc2-${LDC_VERSION}-windows-multilib
3939

4040
; define VS2019 to include VS2019 support
@@ -387,7 +387,7 @@ ${MementoSection} "Install DMD" SecDMD
387387
!define DmdBaseDir "$CompilerInstallDir\dmd-${DMD_VERSION}"
388388
${SetOutPath} "${DmdBaseDir}"
389389
File /r ${DMD_SRC}\html
390-
File /r ${DMD_SRC}\samples
390+
;File /r ${DMD_SRC}\samples
391391
File /r ${DMD_SRC}\src
392392
File /r ${DMD_SRC}\windows
393393
File ${DMD_SRC}\license.txt
@@ -745,6 +745,8 @@ ${MementoSectionEnd}
745745
!endif
746746

747747
!macro RegisterPlatform Vxxx Platform
748+
!define UniqueID ${__LINE__}
749+
IfFileExists '${Vxxx}\Platforms\${Platform}' +1 NoPlatformDir_${UniqueID}
748750
${SetOutPath} "${Vxxx}\Platforms\${Platform}\ImportBefore\Default"
749751
${File} ..\msbuild\ImportBefore\Default\ d.props
750752
${SetOutPath} "${Vxxx}\Platforms\${Platform}\ImportBefore"
@@ -754,6 +756,8 @@ ${MementoSectionEnd}
754756
${SetOutPath} "${Vxxx}\Platforms\${Platform}\ImportAfter"
755757
${File} ..\msbuild\ImportAfter\ d.targets
756758
${File} ..\msbuild\ImportAfter\ general_d.targets
759+
NoPlatformDir_${UniqueID}:
760+
!undef UniqueID
757761
!macroend
758762
!define RegisterPlatform "!insertmacro RegisterPlatform"
759763

@@ -792,6 +796,7 @@ ${MementoSection} "MSBuild integration" SecMSBuild
792796
StrCmp $1 "" NoVS2022
793797
${RegisterPlatform} "$1\MsBuild\Microsoft\VC\v170" "x64"
794798
${RegisterPlatform} "$1\MsBuild\Microsoft\VC\v170" "Win32"
799+
${RegisterPlatform} "$1\MsBuild\Microsoft\VC\v170" "ARM64"
795800
${RegisterIcons} "17.0"
796801

797802
!define V170_GENERAL_XML "$1\MsBuild\Microsoft\VC\v170\1033\general.xml"
@@ -809,6 +814,7 @@ ${MementoSection} "MSBuild integration" SecMSBuild
809814
StrCmp $1 "" NoVS2022_2
810815
${RegisterPlatform} "$1\MsBuild\Microsoft\VC\v170" "x64"
811816
${RegisterPlatform} "$1\MsBuild\Microsoft\VC\v170" "Win32"
817+
${RegisterPlatform} "$1\MsBuild\Microsoft\VC\v170" "ARM64"
812818
${RegisterIcons} "17.0"
813819

814820
!define V170_GENERAL_XML_2 "$1\MsBuild\Microsoft\VC\v170\1033\general.xml"
@@ -826,6 +832,7 @@ ${MementoSection} "MSBuild integration" SecMSBuild
826832
StrCmp $1 "" NoVS2022_3
827833
${RegisterPlatform} "$1\MsBuild\Microsoft\VC\v170" "x64"
828834
${RegisterPlatform} "$1\MsBuild\Microsoft\VC\v170" "Win32"
835+
${RegisterPlatform} "$1\MsBuild\Microsoft\VC\v170" "ARM64"
829836
${RegisterIcons} "17.0"
830837

831838
!define V170_GENERAL_XML_3 "$1\MsBuild\Microsoft\VC\v170\1033\general.xml"
@@ -843,6 +850,7 @@ ${MementoSection} "MSBuild integration" SecMSBuild
843850
StrCmp $1 "" NoVS2022_4
844851
${RegisterPlatform} "$1\MsBuild\Microsoft\VC\v170" "x64"
845852
${RegisterPlatform} "$1\MsBuild\Microsoft\VC\v170" "Win32"
853+
${RegisterPlatform} "$1\MsBuild\Microsoft\VC\v170" "ARM64"
846854
${RegisterIcons} "17.0"
847855

848856
!define V170_GENERAL_XML_4 "$1\MsBuild\Microsoft\VC\v170\1033\general.xml"
@@ -859,6 +867,7 @@ ${MementoSection} "MSBuild integration" SecMSBuild
859867
StrCmp $1 "" NoVS2022BT
860868
${RegisterPlatform} "$1\Common7\IDE\VC\VCTargets" "x64"
861869
${RegisterPlatform} "$1\Common7\IDE\VC\VCTargets" "Win32"
870+
${RegisterPlatform} "$1\Common7\IDE\VC\VCTargets" "ARM64"
862871
${RegisterIcons} "17.0"
863872

864873
!define V170BT_GENERAL_XML "$1\Common7\IDE\VC\VCTargets\1033\general.xml"

stdext/com.d

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -57,14 +57,6 @@ C newCom(C, T...)(T arguments) if(is(C : ComObject) && T.length > 0)
5757

5858
class ComObject : IUnknown
5959
{
60-
version(none)
61-
@disable new(size_t size)
62-
{
63-
assert(false); // should not be called because we don't have enough type info
64-
void* p = gc_malloc(size, 1, typeid(ComObject)); // BlkAttr.FINALIZE
65-
return p;
66-
}
67-
6860
extern (Windows):
6961
override HRESULT QueryInterface(const IID* riid, void** ppv)
7062
{

0 commit comments

Comments
 (0)