Skip to content

Commit a09c183

Browse files
authored
Merge pull request #70 from rainers/master
changes for v0.44rc-2
2 parents d6c3fa3 + a428058 commit a09c183

File tree

15 files changed

+216
-37
lines changed

15 files changed

+216
-37
lines changed

CHANGES

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -850,4 +850,5 @@ unreleased Version 0.44
850850
- new sorting modes "by type" using classification by the semantic engine,
851851
"by declaration", effectively using scopes as discovered by the semantic engine
852852
- without any match, still keep the completion box open with recent items
853-
- less flashing when updating the results
853+
- less flashing when updating the results
854+
- code snippets now added to possible expansions

VERSION

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

doc/Debugging.dd

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,11 @@ $(P The visual studio debuggers obviously had 64-bit support, and mago followed
5656
$(H2 VS 2012-2013 New debug engine)
5757

5858
$(P Starting with Visual Studio 2012, Microsoft introduced a new debugger that replaced
59-
the native debug engine. Unfortunately, it lost some of the capabilities of the
60-
preceding debug engine. This includes displaying variables in the Watch Window and
59+
the native debug engine. Unfortunately, it had some incompatibilites with the
60+
preceding debug engine. This includes displaying D variables in the Watch Window and
6161
interpretation of the visualizer macros in autoexp.dat. The new engine has
62-
extended visualizer capabilities, but these are targeted to C/C++ and don't work with
63-
D syntax.)
62+
extended visualizer capabilities, but these are targeted to C/C++ and don't work well
63+
with D syntax.)
6464

6565
$(P You can switch back to the old debug engine by going to Tools->Options and then under the debugger
6666
settings, turn on native edit and continue. This is a global setting and will also affect your
@@ -69,25 +69,27 @@ C++ projects, though.)
6969
$(P Mago is uneffected by this change.
7070
The VS 2013 debugger engine fixed some of the problems with displaying local variables.)
7171

72+
<a id="concord"></a>
7273
$(H2 VS 2015 Concord extensions)
7374

7475
$(P With the next version of the debug engine supporting "native edit and continue", the fallback to
7576
the old debug engine no longer works in VS 2015. Instead Microsoft
7677
released information about the extensibility of this debug engine (introduced with VS2012) called
7778
$(LINK2 https://github.com/Microsoft/ConcordExtensibilitySamples/wiki/Overview, Concord),
7879
late in 2015. It consists of more modular components than older engines. This allows taking
79-
advantage of most features of the debug engine, but just replace language specific
80+
advantage of most features of the debug engine by just replacing language specific
8081
parts, i.e. the expression evaluator. In addition, debugging mixed languages is no problem
8182
anymore.)
8283

83-
$(P Taking the expression evaluator out of Mago allowed to implement this for D pretty easily:)
84+
$(P Using Mago's expression evaluator allowed to implement this for D pretty easily:)
8485

8586
<div align="center"><img src="images/concord_mark.png" width="90%"/></div>
8687

8788
$(P The debugger engine needs to detect the source language of the code location. This information
8889
is added to the debug information starting with dmd 2.072 when compiled for COFF object
8990
files (-m64 or -m32mscoff) with -g, but not with
90-
-gc, i.e. you should select debug info for Mago even when using the VS debug engine.)
91+
-gc, i.e. you should select debug info for Mago even when using the VS debug engine.) Unfortunately,
92+
LDC does not yet emit this source language information.
9193

9294
<a id="recommendation"></a>
9395
$(H3 Recommendation for VS 2015)
@@ -101,8 +103,8 @@ $(UL
101103
$(LI choose the Visual Studio debugger on the project configuration page Debugging)
102104
)
103105

104-
$(P If you are using the new Visual C/C++ project integration, all you have to do is select debug information
105-
"for D debug engines" on the project configuration page "D Compiler->Code generation".)
106+
$(P If you are using the new $(VDLINK vcxproject, Visual C/C++ project integration), all you have to do is
107+
select debug information "for D debug engines" on the project configuration page "D Compiler->Code generation".)
106108

107109
$(H2 Exceptions)
108110

@@ -112,12 +114,14 @@ is thrown by the debuggee. With earlier versions, you'll have to add an entry wi
112114

113115
$(H3 Exceptions with Mago)
114116

115-
$(P Mago displays exceptions thrown by the debuggee in the output window. You can also stop execution
117+
$(P The Mago debug engine displays exceptions thrown by the debuggee in the output window. You can also stop execution
116118
by enabling the respective box in the Debug->Exception dialog. Due to a bug, you currently cannot
117119
simply enable the "D Exceptions" entry, but must select the specific exceptions while keeping the
118120
"D Exceptions" entry unchecked. So, the dialog should look something like this:)
119121

120122
$(IMG_CENTER images/d_exceptions.png)
121123

124+
Please note that these specific exception settings only apply to the Mago debug engine, not the Concord extension.
125+
122126
Macros:
123127
TITLE=Debugging

doc/StartPage.dd

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,13 @@ $(H2 News)
5454
$(P $(LINK2 VersionHistory.html, Full version history and complete details...)
5555
)
5656

57+
2017-02-06 Version 0.44
58+
$(UL
59+
$(LI $(VDLINK vcxproject, integration) with msbuild and Visual C/C++ projects)
60+
$(LI enhanced $(LINK2 Debugging.html#concord, integration) with the Visual Studio debugger by only adding mago's expression evaluator)
61+
$(LI improvements to completion lists)
62+
)
63+
5764
2015-11-28 Version 0.3.43
5865
$(UL
5966
$(LI improved VS 2015 support)

doc/VersionHistory.dd

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,66 @@
11
Ddoc
22

3+
$(H2 2017-02-08 Version 0.44)
4+
$(UL
5+
$(LI installation
6+
$(UL
7+
$(LI added preliminary support for VS 2017 RC)
8+
$(LI new version scheme removing the gratuitious .3 from the Visual D version)
9+
))
10+
$(LI project management
11+
$(UL
12+
$(LI added integration with msbuild and VC++ projects)
13+
$(LI can now read and write Mono-D project files (but likely to be incomplete because this was
14+
a failed attempt to integrate with msbuild and the VC projects))
15+
$(LI when linking with MS linker, options for the map file broke the command line)
16+
$(LI bugzilla 16063: missing option -L/DLL when linking a DLL with MS linker)
17+
$(LI added $(DOLLAR)(Platform) as a settings macro replacement in addition to $(DOLLAR)(PlatformName))
18+
$(LI changed default output directory to $(DOLLAR)(PlatformName)/$(DOLLAR)(ConfigurationName))
19+
$(LI added x64 configurations to project templates)
20+
$(LI added project template to build with DMD, LDC and GDC for x86 and x64)
21+
$(LI building a library with LDC now always adds "-oq -od=$(DOLLAR)(IntDir)" to the command line)
22+
))
23+
$(LI mago:
24+
$(UL
25+
$(LI bring back support to run on Windows XP)
26+
$(LI display const modifier on type, recover string types)
27+
$(LI add and install Concord debug engine plugin for VS 2012-2015)
28+
))
29+
$(LI cv2pdb:
30+
$(UL
31+
$(LI fix crashes with very long symbols)
32+
$(LI can now be enabled independent of debug engine)
33+
))
34+
$(LI language service
35+
$(UL
36+
$(LI added automatic brace completion)
37+
$(LI dparser: semantic analysis no longer times out after 500ms, but cancels previous requests)
38+
$(LI dparser: improved performance by adding name lookup cache)
39+
$(LI Improvements to completion lists:
40+
$(UL
41+
$(LI completion box no longer pops up if caret has been moved elsewhere)
42+
$(LI new option to disable exact start match (searches case insensitive sub string))
43+
$(LI free functions show different icon than member functions)
44+
$(LI aliases show other icon than variables)
45+
$(LI new sorting modes "by type" using classification by the semantic engine,
46+
"by declaration", effectively using scopes as discovered by the semantic engine)
47+
$(LI without any match, still keep the completion box open to update when deleting the last character)
48+
))
49+
))
50+
$(LI build
51+
$(UL
52+
$(LI now builds with dmd 2.073)
53+
$(LI added AppVeyor integration builds)
54+
$(LI VS SDK 2013 now needed to build Visual D)
55+
))
56+
$(LI miscellaneous
57+
$(UL
58+
$(LI dustmite: error messages written to stderr not grepped)
59+
$(LI menu entries now disabled if they require the focus on a D file, but it is elsewhere)
60+
$(LI reduced idle processing by only updating the active view)
61+
))
62+
)
63+
364
$(H2 2015-11-28 Version 0.3.43)
465
$(UL
566
$(LI installation

doc/vcxproject.dd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ $(IMG_CENTER images/vcxproject_general.png)
1414

1515
$(P A couple of things to note:)
1616
$(UL
17-
$(LI Only COFF files are generated, there is no support for OMF files that DMD geberates for Win32 by default.)
17+
$(LI Only COFF files are generated, there is no support for OMF files that DMD generates for Win32 by default.)
1818
$(LI Selecting the C runtime library is supported starting with DMD 2.073)
1919
$(LI The D project templates include a console application template based on a VC project, but just containing a D file.)
2020
)

doc/visuald.ddoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
VERSION = 0.44
1+
VERSION = 0.44.0
22
ROOT_DIR = http://www.dlang.org/
33
ROOT = http://www.dlang.org
44
BODYCLASS = visuald
0 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)