Skip to content

Commit

Permalink
dparser: UFCS and mixin analysis are now opt-in
Browse files Browse the repository at this point in the history
support string import dependencies
fixed passing quoted library paths to linker
fixed default library path for x64 (contained spaces, but were not quoted, added default for 8.1 SDK)
  • Loading branch information
rainers committed Nov 29, 2013
1 parent b98ee65 commit f622232
Show file tree
Hide file tree
Showing 26 changed files with 357 additions and 168 deletions.
15 changes: 15 additions & 0 deletions CHANGES
Original file line number Diff line number Diff line change
Expand Up @@ -588,3 +588,18 @@ Version history
- added commands "Collapse unittests" and "Collapse disabled" to the outlining menu
- dviewhelper.dll from cv2pdb now avoids being unloaded after debugger expression evaluation using visualizers
* changed license to Boost

unreleased Version 0.3.38

* updated to cv2pdb 0.28
- support mspdb120.dll from VS 2013
- bugzilla 11537: improved search for appropriate mspdb*.dll if multiple version of VS installed
* updated to mago 0.9
- bugzilla 11547: remove error message when stopping debugging
- bugzilla 11437: debug info rejected if records don't have "recommended" order
* updated dparser to 08f760b6181d1e40a29f3e03a7eafcd40bf4dc34
- added options to enable/disable mixin analysis and UFCS expansions
* added support for string import dependencies (needs dmd 2.065)
* fixed default library path for x64 (contained spaces, but were not quoted,
added default for 8.1 SDK)
* fixed passing quoted library paths to linker
16 changes: 10 additions & 6 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
DMD2 = dmd
# DMD2 = m:\s\d\rainers\windows\bin\dmd.exe
# DMD2 = c:\l\dmd2beta\windows\bin\dmd.exe
DMD2_ = $(DMD2:/=\)
COFFIMPLIB = c:\l\dmc\bin\coffimplib.exe

# avoid trailing '\', it ruins the command line
Expand Down Expand Up @@ -52,7 +53,7 @@ VSI_LIB = $(BINDIR)\vsi.lib
VISUALD = $(BINDIR)\visuald.dll
FMT = OMF

PASS_ENV = "DMD2=$(DMD2)" "WINSDK=$(WINSDK)" "COFFIMPLIB=$(COFFIMPLIB)" FMT=$(FMT)
PASS_ENV = "DMD2=$(DMD2_)" "WINSDK=$(WINSDK)" "COFFIMPLIB=$(COFFIMPLIB)" FMT=$(FMT)

all: dte_idl vsi2d package vdserver_exe $(PIPEDMD_EXE) $(FILEMON_DLL)

Expand All @@ -79,16 +80,16 @@ sdk\vsi\idl\dte90.idl : $(TLB2IDL_EXE) "$(MSENV)\dte90.olb"
$(TLB2IDL_EXE) "$(MSENV)\dte90.olb" $@ "$(IVIEWER)"

$(TLB2IDL_EXE) : tools\tlb2idl.d
$(DMD2) -map $@.map -of$@ tools\tlb2idl.d oleaut32.lib uuid.lib snn.lib kernel32.lib
$(DMD2_) -map $@.map -of$@ tools\tlb2idl.d oleaut32.lib uuid.lib snn.lib kernel32.lib

$(PIPEDMD_EXE) : tools\pipedmd.d
$(DMD2) -map $@.map -of$@ tools\pipedmd.d
$(DMD2_) -map $@.map -of$@ tools\pipedmd.d

$(FILEMON_DLL) : tools\filemonitor.d
$(DMD2) -map $@.map -of$@ -defaultlib=user32.lib -L/ENTRY:_DllMain@12 tools\filemonitor.d
$(DMD2_) -map $@.map -of$@ -defaultlib=user32.lib -L/ENTRY:_DllMain@12 tools\filemonitor.d

$(LARGEADR_EXE) : tools\largeadr.d
$(DMD2) -of$@ tools\largeadr.d
$(DMD2_) -of$@ tools\largeadr.d

##################################
# generate VSI d files from h and idl
Expand All @@ -104,7 +105,7 @@ vsi_dirs:
if not exist sdk\win32\nul md sdk\win32

$(VSI2D_EXE) : $(VSI2D_SRC)
$(DMD2) -d -map $@.map -of$@ -version=vsi $(VSI2D_SRC)
$(DMD2_) -d -map $@.map -of$@ -version=vsi $(VSI2D_SRC)

sdk\vsi_sources: $(VSI2D_EXE)
$(VSI2D_EXE) -vsi="$(VSISDK)" -win="$(WINSDK)\Include" -dte="$(DTE_IDL_PATH)" -sdk=sdk
Expand Down Expand Up @@ -138,6 +139,9 @@ dparser:
mago:
cd ..\..\mago && devenv /Build "Release|Win32" magodbg.sln

cv2pdb:
cd ..\..\cv2pdb\trunk && devenv /Build "Release|Win32" src\cv2pdb.sln

##################################
# create installer

Expand Down
4 changes: 3 additions & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#define VERSION_MAJOR 0
#define VERSION_MINOR 3
#define VERSION_REVISION 37
#define VERSION_REVISION 38
#define VERSION_BETA -beta
#define VERSION_BUILD 1
33 changes: 15 additions & 18 deletions doc/StartPage.dd
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,19 @@ $(H2 News)
$(LINK2 VersionHistory.html, Full version history and complete details...)
$(BR)

2013-11-02 Version 0.3.37
$(UL
$(LI Installer now supports VS 2013, updated to cv2pdb 0.27, mago 0.8, fixes x64 deubgger in VS 2012 Shell)
$(LI improvements to "Compile and Run")
$(LI improvements to syntax/coverage highlighting)
$(LI DParser engine now used by default, updated to recent version)
$(LI single file options now available per project configuration)
$(LI added global option to display the reason for building a target)
$(LI added different options for executable and library search paths to be used for Win32/x64)
$(LI link dependencies can now also be monitored for the 32-bit MS linker)
$(LI added commands "Collapse unittests" and "Collapse disabled" to the outlining menu)
)

2013-05-10 $(LINK2 News36.html, Version 0.3.36)
$(UL
$(LI updated to new features of the language and tooling as of dmd 2.062)
Expand All @@ -63,28 +76,12 @@ $(UL
$(LI added option "Colorize coverage from .LST file" to highlight lines from code coverage output)
)

2012-12-03 Version 0.3.35
$(UL
$(LI a number of bugfixes and improvements to the build system, e.g.
$(UL
$(LI new linker option to disable using global and standard library search paths)
$(LI added preliminary support for upcoming dmd win64 compiler)
$(LI added console application project template with configurations for DMD and GDC for Win32 and x86)
)
)
$(LI added build project to build Visual D from VS itself without the need to modify makefiles)
$(LI goto definition now uses semantic analysis to find declaration)
$(LI semantic analysis now enabled by default (removed experimental status))
$(LI now installed as an "extension" to VS 2010 and VS 2012)
$(LI fixed spurious crashes due to bug in precise garbage collection)
)

$(LINK2 VersionHistory.html, more...)

$(H2 Download)

$(P The latest installer can be downloaded
$(LINK2 http:/www.dsource.org/projects/visuald/browser/downloads/VisualD-v0.3.36.exe?format=raw&FixForIE=.exe, here).
$(P The latest installer can also be downloaded
$(LINK2 http:/www.dsource.org/projects/visuald/browser/downloads/VisualD-v0.3.37.exe?format=raw&FixForIE=.exe, here).
You can find older versions and some additional files in
the $(LINK2 http:/www.dsource.org/projects/visuald/browser/downloads/, download directory).)

Expand Down
69 changes: 69 additions & 0 deletions doc/VersionHistory.dd
Original file line number Diff line number Diff line change
@@ -1,5 +1,74 @@
Ddoc

2013-11-02 Version 0.3.37
$(UL
$(LI installer:
$(UL
$(LI fixed regression: VS 2010/2012 extension pkgdef files almost empty)
$(LI now has workaround for x64 debugger of Visual Studio 2012 Shell )
$(LI installs cv2pdb 0.27 which fixes a crash when converting DWARF from GDC 4.8)
$(LI installs mago 0.8 with pdb and embedded breakpoints support )
$(LI installer now picks up dmd2 folder from DMD installation)
$(LI added support for VS 2013 to installer, removed VS.NET 2003)
))
$(LI "Compile and Run":
$(UL
$(LI no longer adds "--main" automatically)
$(LI removed some other implicite command line options that confused rdmd)
$(LI fixed quotes in --eval arguments)
$(LI didn't save file if it is not part of a project in the solution)
))
$(LI syntax/coverage highlighting
$(UL
$(LI editor always started with coverage highlighting enabled)
$(LI Colorize coverage:
$(UL
$(LI disabled if lst file older than source file or deleted)
$(LI tweaked line number translation)
$(LI now searches for coverage generated files in last execution folders)
$(LI added new command "Delete Coverage Files")
))
$(LI after changing the "Colored types" the current editor did not update immediately)
$(LI user type colorizer settings were forgotten after editing options)
$(LI keywords can now also be colored by adding them to the "Colored types")
))
$(LI DParser
$(UL
$(LI updated to $(LINK2 https://github.com/aBothe/D_Parser/commit/72f1bc54f2426954f463f03b215e044174fc1468, recent version))
$(LI enabled mixin analysis)
$(LI pass deprecation flag to engine)
$(LI DParser engine now used by default if installed)
))
$(LI vdserver
$(UL
$(LI add __FUNCTION__, __PRETTY_FUNCTION__ and __MODULE__ as keywords and primary expression)
$(LI add __parameters as specification in is-expression)
))
$(LI build system
$(UL
$(LI fixed building with -op and source files on different drive than project)
$(LI added file options per configuration)
$(LI fixed invoking bad command when no files to compile, but additional arguments set)
$(LI added global option to display the reason for building a target)
$(LI fixed custom build rules executed twice sometimes)
$(LI fixed sc.ini evaluation, added support for sections [Environment32] and [Environment64] )
$(LI link dependencies can now also be monitored for the 32-bit MS linker)
$(LI added VCINSTALLDIR to the list of available macros)
$(LI added different options for executable and library search paths to be used for Win32/x64)
$(LI x64: linker settings from sc.ini can be overwritten )
$(LI x64: linker no longer invoked through dmd)
))
$(LI miscellaneous
$(UL
$(LI added command "Open Folder in Windows Explorer" to project and folder context menu)
$(LI goto definition now falls back to JSON information if semantic analysis yields no result)
$(LI improved indentation after opening parenthesis to follow next token)
$(LI added commands "Collapse unittests" and "Collapse disabled" to the outlining menu)
$(LI dviewhelper.dll from cv2pdb now avoids being unloaded after debugger expression evaluation using visualizers)
))
$(LI changed license to Boost)
)

2013-05-10 $(DDLINK News36,Version 0.3.36)
$(UL
$(LI added debug settings to new DMD/GDC project template )
Expand Down
11 changes: 10 additions & 1 deletion nsis/visuald.nsi
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,21 @@
!searchparse /file ../version "#define VERSION_MAJOR " VERSION_MAJOR
!searchparse /file ../version "#define VERSION_MINOR " VERSION_MINOR
!searchparse /file ../version "#define VERSION_REVISION " VERSION_REVISION
!searchparse /file ../version "#define VERSION_BETA " VERSION_BETA
!searchparse /file ../version "#define VERSION_BUILD " VERSION_BUILD

!searchreplace VERSION_MAJOR ${VERSION_MAJOR} " " ""
!searchreplace VERSION_MINOR ${VERSION_MINOR} " " ""
!searchreplace VERSION_REVISION ${VERSION_REVISION} " " ""
!searchreplace VERSION_BETA ${VERSION_BETA} " " ""
!searchreplace VERSION_BUILD ${VERSION_BUILD} " " ""

!if "${VERSION_BUILD}" == "0"
!define VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_REVISION}"
!else
!define VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_REVISION}${VERSION_BETA}${VERSION_BUILD}"
!endif

!define VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_REVISION}"
!echo "VERSION = ${VERSION}"
!define AUTHOR "Rainer Schuetze"
!define APPNAME "VisualD"
Expand Down
Loading

0 comments on commit f622232

Please sign in to comment.