Skip to content

Commit 081c8b8

Browse files
authored
Merge pull request #76 from rainers/master
Changes for 0.45-rc1
2 parents 682eca0 + 3f63dbd commit 081c8b8

File tree

7 files changed

+71
-26
lines changed

7 files changed

+71
-26
lines changed

CHANGES

Lines changed: 29 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -867,22 +867,32 @@ Version history
867867

868868
unreleased Version 0.45.0
869869

870-
* fixed Compile and Run/Debug if building through MS-COFF and not having VS selected in sc.ini
871-
* mago: fixed memory leaks that could also prohibit compilation due to PDB file still open
872-
* mago: add debugger options page to allow hiding internal locals and static members
873-
* cv2pdb: added support for AA display in mago
874-
* DParser: added support for function attributes @nogc and scope, align(expression)
875-
* added task list support for files loaded into the editor
876-
* read default DMD installation path from Visual D or DMD registry key, if not available in
877-
VS registry hive
878-
* new project option "Add import paths of project dependencies"
879-
* use generic file system tracking instead of compiler switch -deps=
880-
* fixed tracker.exe not found in VS2015 and VS2017
881-
* /MAPINFO: remove ancient options no longer supported by the MS linker
882-
* separated compile and link into two batches so compile skipped if only link inputs changed
883-
* fix crash when editing dub.json when part of a project
884-
* UCRT version detection: ignore directories that do not start with a digit (e.g. from DDK)
885-
* dependency monitoring: added option to specify files/folders to exclude from dependency check
886-
* mago: can now show registers in expressions
887-
* mago: show static members and base class with different icons
888-
* DParser: cache semantic results until next edit
870+
* mago debugger:
871+
- fixed memory leaks that could also prohibit compilation due to PDB file still open
872+
- add debugger options page to allow hiding internal locals and static members
873+
- can now show registers in expressions
874+
- show static members and base class with different icons
875+
- fixed x64 debugger failing to start
876+
- cv2pdb: added support for AA display in mago
877+
* build system
878+
- use generic file system tracking instead of compiler switch -deps=
879+
- fixed tracker.exe not found in VS2015 and VS2017
880+
- new project option "Add import paths of project dependencies"
881+
- fixed Compile and Run/Debug if building through MS-COFF and not having VS selected in sc.ini
882+
- /MAPINFO: remove ancient options no longer supported by the MS linker
883+
- separated compile and link into two batches so compile skipped if only link inputs changed
884+
- dependency monitoring: added option to specify files/folders to exclude from dependency check
885+
* editor
886+
- fix crash when editing dub.json when part of a project
887+
- added task list support for files loaded into the editor
888+
* installation
889+
- read default DMD installation path from Visual D or DMD registry key, if not available in VS registry hive
890+
- UCRT version detection: ignore directories that do not start with a digit (e.g. from DDK)
891+
- bugzilla Issue 17384: fix default executable search path for LDC/x64 under VS2017
892+
* cpp2d: add missing default to switch(), ensure space between identifiers, fix module name for translated C-files
893+
* DParser seantic engine:
894+
- added support for function attributes @nogc and scope, align(expression)
895+
- cache semantic results until next edit
896+
- break endless loop due to unresolved selective import
897+
- fix for no expansions for symbols from public import in imported module
898+
- try dparser as fallback if goto definition on import fails

TODO

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -163,10 +163,10 @@ Mago:
163163
- string/wstring shown as char/wchar[], but with correct string representation
164164
+ AA indexing
165165
+ AA preview/expand
166-
- new AA implementation
166+
+ new AA implementation
167167
- Array preview
168168
- delegate value/type
169-
- struct preview
169+
+ struct preview
170170
+ verboser output when loading/unloading DLLs
171171
- attach to process
172172
- hardware breakpoints
@@ -226,3 +226,10 @@ Unsorted
226226
- does not rebuild lib if c-file recompiled
227227

228228
- cannot remove deleted project from solution
229+
230+
- dparser: doesn't support qualified name in catch(fqn)
231+
232+
0.45.0
233+
======
234+
- exception on vdextensions: The Visual Studio component cache is out of date
235+

VERSION

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

visuald/completion.d

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ import sdk.port.vsi;
4444
import sdk.win32.commctrl;
4545
import sdk.vsi.textmgr;
4646
import sdk.vsi.textmgr2;
47+
import sdk.vsi.textmgr121;
4748
import sdk.vsi.vsshell;
4849
import sdk.win32.wtypes;
4950

@@ -704,7 +705,7 @@ class Declarations
704705
}
705706
}
706707

707-
class CompletionSet : DisposingComObject, IVsCompletionSet, IVsCompletionSetEx
708+
class CompletionSet : DisposingComObject, IVsCompletionSet, IVsCompletionSet3, IVsCompletionSetEx
708709
{
709710
HIMAGELIST mImageList;
710711
bool mDisplayed;
@@ -733,6 +734,14 @@ class CompletionSet : DisposingComObject, IVsCompletionSet, IVsCompletionSetEx
733734
return S_OK;
734735
if(queryInterface!(IVsCompletionSet) (this, riid, pvObject))
735736
return S_OK;
737+
738+
version(none) if(*riid == uuid_IVsCompletionSet3)
739+
{
740+
*pvObject = cast(void*)cast(IVsCompletionSet3)this;
741+
AddRef();
742+
return S_OK;
743+
}
744+
736745
if(*riid == uuid_IVsCoTaskMemFreeMyStrings) // avoid log message, implement?
737746
return E_NOTIMPL;
738747
return super.QueryInterface(riid, pvObject);
@@ -1022,6 +1031,7 @@ class CompletionSet : DisposingComObject, IVsCompletionSet, IVsCompletionSetEx
10221031

10231032
override int GetFilterLevel(int* iFilterLevel)
10241033
{
1034+
// if implementaed, adds tabs "Common" and "All"
10251035
mixin(LogCallMix2);
10261036

10271037
*iFilterLevel = 0;
@@ -1039,6 +1049,23 @@ class CompletionSet : DisposingComObject, IVsCompletionSet, IVsCompletionSetEx
10391049
+/
10401050
return S_OK;
10411051
}
1052+
1053+
// IVsCompletionSet3 adds icons on the right side of the completion list
1054+
override HRESULT GetContextIcon(in int iIndex, int *piGlyph)
1055+
{
1056+
mixin(LogCallMix);
1057+
1058+
*piGlyph = CSIMG_MEMBER;
1059+
return S_OK;
1060+
}
1061+
1062+
override HRESULT GetContextImageList (HANDLE *phImageList)
1063+
{
1064+
mixin(LogCallMix);
1065+
1066+
*phImageList = cast(HANDLE)mImageList;
1067+
return S_OK;
1068+
}
10421069
}
10431070

10441071
//-------------------------------------------------------------------------------------

visuald/dpackage.d

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1647,7 +1647,7 @@ class GlobalOptions
16471647
GDC.ExeSearchPath = r"$(GDCInstallDir)bin;$(VSINSTALLDIR)Common7\IDE;" ~ sdkBinDir;
16481648
GDC.ExeSearchPath64 = GDC.ExeSearchPath;
16491649
LDC.ExeSearchPath = r"$(LDCInstallDir)bin;" ~ getVCDir("bin", false) ~ r";$(VSINSTALLDIR)Common7\IDE;" ~ sdkBinDir;
1650-
LDC.ExeSearchPath64 = r"$(LDCInstallDir)bin;" ~ getVCDir("bin", true) ~ r";" ~ sdkBinDir;
1650+
LDC.ExeSearchPath64 = r"$(LDCInstallDir)bin;" ~ getVCDir("bin", true) ~ r";$(VSINSTALLDIR)Common7\IDE;" ~ sdkBinDir;
16511651

16521652
DMD.LibSearchPath64 = getDefaultLibPathCOFF64();
16531653
LDC.LibSearchPath64 = DMD.LibSearchPath64;

visuald/viewfilter.d

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1351,7 +1351,8 @@ else
13511351
hr = OpenFileInSolution(imp, -1, 0, file, false);
13521352
}
13531353
}
1354-
return hr;
1354+
if (hr == S_OK)
1355+
return hr;
13551356
}
13561357

13571358
if(Package.GetGlobalOptions().semanticGotoDef)

0 commit comments

Comments
 (0)