www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - D-Scanner 0.1.0-beta3 and DCD 0.3.0-beta4

reply "Brian Schott" <briancschott gmail.com> writes:
New betas are available for both tools. Hopefully no more bugs 
will be found. I plan to tag these as non-beta this Saturday.

https://github.com/Hackerpilot/Dscanner/tree/0.1.0-beta3
https://github.com/Hackerpilot/DCD/tree/0.3.0-beta4

D-Scanner changes:
* #92: Windows batch file not in sync with posix build script
* Various DDoc fixes
* Fixed various static analysis checks
* Removed some files that should not have been checked in
* #97: DDoc fix
* #98: Fixed typos
* #101: Fix bug in token identifier generation
* #102: Update lexer API
* #104: Fix TokenID implementation
* #105: Emit warning for deprecated base class protection syntax
* #106: Add linkage attribute parsing support to alias 
declarations
* #107: Clean up the lexer generator API
* #108: D-Scanner is now on dub!
* #111: New static analysis rule warns about dead foreach loops
* #112: Fixed issue causing AST output to be incorrect for 
left-associative expressions
* #113: Fixed segfault in dead foreach loop detection
* #115: Fixed parser issue that caused the "low" member of a case 
range statement AST node to not be set
* #116: "version = foo;" is now treated as a declaration and not 
a statement
* #118: Allow function attributes in lambda expression
* #119: Allow typeof expression in template mixin
* #120: Check for constructor args in new anon class expression
* Fixed an issue causing stdx.lexer to fail if no 
"possibleDefaultTokens" were supplied
* #121: Fixed issue causing struct member initializers to not be 
stored
* #122: Distinguish between conditional declaration and statement
* Enhanced lexer string interning to be lock-free
* Parser can now use allocators from std.allocator
* #130: Static analysis checks are now run in parallel
* Attach doc comments to alias declarations
* Fix static analysis crash caused by number literals with 
suffixes
* #139: Fixed lexer issue with named character entities in 
character literals
* #138: Parser now supports opCall-style syntax on types

DCD changes:
* #103: "object" is now always added to the internal list of 
imported modules.
   Aliases like "string" now work as expected without import 
statements.
* #104: Vim plugin enhancements
* #105: Server crash on non-existant import paths
* #107: .classinfo is no longer shown in autocomplete lists for 
structs
* #108: Drastic performance improvements
* DDoc and refactoring work
* Updated list of __traits for 2.065 compiler release
* Update to D-Scanner 0.1.0-beta3 to get various lexer, parser, 
and AST fixes

Thanks to the various people who have contributed to these 
projects:
https://github.com/Hackerpilot/Dscanner/graphs/contributors
https://github.com/Hackerpilot/DCD/graphs/contributors
Mar 05 2014
next sibling parent "Mike" <none none.com> writes:
On Wednesday, 5 March 2014 at 08:37:28 UTC, Brian Schott wrote:
 New betas are available for both tools. Hopefully no more bugs 
 will be found. I plan to tag these as non-beta this Saturday.
Thank you, this is a valuable tool for me. Mike
Mar 05 2014
prev sibling parent reply "Jussi Jumppanen" <jussij zeusedit.com> writes:
On Wednesday, 5 March 2014 at 08:37:28 UTC, Brian Schott wrote:
 New betas are available for both tools. Hopefully no more bugs 
 will be found. I plan to tag these as non-beta this Saturday.

 https://github.com/Hackerpilot/Dscanner/tree/0.1.0-beta3
 https://github.com/Hackerpilot/DCD/tree/0.3.0-beta4
On building this zip file: https://github.com/Hackerpilot/DCD/archive/0.3.0-beta4.zip It generates this compiler error: D:\projects\dcd\DCD>build.bat D:\projects\dcd\DCD>dmd -wi client.d messages.d stupidlog.d msgpack-d/src/msgpack.d -Imsgpack-d/src -release -inline -noboundscheck -O -ofdcd-client.exe D:\projects\dcd\DCD>dmd actypes.d conversion/astconverter.d conversion/first.d conversion/second.d conversion/third.d autocomplete.d constants.d messages.d modulecache.d semantic.d server.d stupidlog.d dscanner/stdx/d/ast.d dscanner/stdx/d/entities.d dscanner/stdx/d/lexer.d dscanner/stdx/d/parser.d dscanner/stdx/lexer.d dscanner/stdx/allocator.d dscanner/formatter.d msgpack-d/src/msgpack.d -Imsgpack-d/src -Idscanner -wi -g -O -release -noboundscheck -inline -ofdcd-server.exe modulecache.d(138): Error: cannot implicitly convert expression (f.size()) of type ulong to uint Cheers Jussi
Mar 06 2014
next sibling parent reply "develop32" <develop32 gmail.com> writes:
On Thursday, 6 March 2014 at 13:36:46 UTC, Jussi Jumppanen wrote:
     modulecache.d(138): Error: cannot implicitly convert 
 expression (f.size()) of type ulong to uint
I fixed that by adding cast(size_t) at that location. But after fixing that problem the build still fails, I had to remove -g flag in build.bat file. I assume it was added by mistake? The problem appears on Windows 7 32bit.
Mar 06 2014
parent "Brian Schott" <briancschott gmail.com> writes:
On Thursday, 6 March 2014 at 14:13:57 UTC, develop32 wrote:
 On Thursday, 6 March 2014 at 13:36:46 UTC, Jussi Jumppanen 
 wrote:
    modulecache.d(138): Error: cannot implicitly convert 
 expression (f.size()) of type ulong to uint
I fixed that by adding cast(size_t) at that location. But after fixing that problem the build still fails, I had to remove -g flag in build.bat file. I assume it was added by mistake? The problem appears on Windows 7 32bit.
Is this a compiler bug? The -g switch should not break anything. I left it there because this is a beta and I'd prefer that people be able to give me useful bug reports more easily.
Mar 06 2014
prev sibling parent reply "Brian Schott" <briancschott gmail.com> writes:
On Thursday, 6 March 2014 at 13:36:46 UTC, Jussi Jumppanen wrote:
     modulecache.d(138): Error: cannot implicitly convert 
 expression (f.size()) of type ulong to uint

 Cheers Jussi
This is fixed on the master branch and will be included in the next beta / final release.
Mar 06 2014
parent reply "Jussi Jumppanen" <jussij zeusedit.com> writes:
On Thursday, 6 March 2014 at 19:11:19 UTC, Brian Schott wrote:
 This is fixed on the master branch and will be included in the
 next beta / final release.
The master branch zip file fixed the compile issue but the linker now fails with this link error: OPTLINK (R) for Win32 Release 8.00.15 Copyright (C) Digital Mars 1989-2013 All rights reserved. http://www.digitalmars.com/ctg/optlink.html dcd-server.obj(dcd-server) Error 42: Symbol Undefined __aligned_malloc dcd-server.obj(dcd-server) Error 42: Symbol Undefined __aligned_free dcd-server.obj(dcd-server) Error 42: Symbol Undefined __aligned_realloc --- errorlevel 3 The project was build as follows: D:\projects\dcd\DCD>dmd actypes.d conversion/astconverter.d conversion/first.d conversion/second.d conversion/third.d au tocomplete.d constants.d messages.d modulecache.d semantic.d server.d stupidlog.d dscanner/stdx/d/ast.d dscanner/stdx/d/ entities.d dscanner/stdx/d/lexer.d dscanner/stdx/d/parser.d dscanner/stdx/lexer.d dscanner/stdx/allocator.d dscanner/for matter.d msgpack-d/src/msgpack.d -Imsgpack-d/src -Idscanner -wi -g -O -release -noboundscheck -inline -ofdcd-server.exe Using this version of the compiler: DMD32 D Compiler v2.065 Copyright (c) 1999-2013 by Digital Mars written by Walter Bright Documentation: http://dlang.org/ Usage: dmd files.d ... { -switch } Cheers Jussi
Mar 06 2014
parent reply "Jussi Jumppanen" <jussij zeusedit.com> writes:
As develop32 mention earlier in this, running the build with the 
-g option causes this linker error:

     D:\projects\dcd\DCD>dmd actypes.d conversion/astconverter.d 
conversion/first.d conversion/second.d conversion/third.d au
     tocomplete.d constants.d messages.d modulecache.d semantic.d 
server.d stupidlog.d dscanner/stdx/d/ast.d dscanner/stdx/d/
     entities.d dscanner/stdx/d/lexer.d dscanner/stdx/d/parser.d 
dscanner/stdx/lexer.d dscanner/stdx/allocator.d dscanner/for
     matter.d msgpack-d/src/msgpack.d -Imsgpack-d/src -Idscanner 
-wi -O -release -noboundscheck -inline -g -ofdcd-server.exe
     OPTLINK (R) for Win32  Release 8.00.15
     Copyright (C) Digital Mars 1989-2013  All rights reserved.
     http://www.digitalmars.com/ctg/optlink.html
     dcd-server.obj(dcd-server)
      Error 42: Symbol Undefined __aligned_malloc
     dcd-server.obj(dcd-server)
      Error 42: Symbol Undefined __aligned_free
     dcd-server.obj(dcd-server)
      Error 42: Symbol Undefined __aligned_realloc
     --- errorlevel 3

Without the -g option the link goes fine:

     D:\projects\dcd\DCD>dmd actypes.d conversion/astconverter.d 
conversion/first.d conversion/second.d conversion/third.d au
     tocomplete.d constants.d messages.d modulecache.d semantic.d 
server.d stupidlog.d dscanner/stdx/d/ast.d dscanner/stdx/d/
     entities.d dscanner/stdx/d/lexer.d dscanner/stdx/d/parser.d 
dscanner/stdx/lexer.d dscanner/stdx/allocator.d dscanner/for
     matter.d msgpack-d/src/msgpack.d -Imsgpack-d/src -Idscanner 
-wi -O -release -noboundscheck -inline -ofdcd-server.exe

Cheers Jussi
Mar 09 2014
parent "Jussi Jumppanen" <jussij zeusedit.com> writes:
The latest Zeus IDE beta adds support for DCD document comment 
completion.

Zeus already has support for DCD goto definition, brace and dot 
completion.

For more details refer to this link:

http://www.zeusedit.com/zforum/viewtopic.php?p=10795

NOTE: Zeus is shareware, runs natively on the Windows and can run 
on Linux using Wine.

Jussi Jumppanen
Author: Zeus Editor
Mar 20 2014