[Issue 18891] extern(C++) destructor prototype should just link; not generate field/aggregate dtor

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18891

--- Comment #2 from Manu  ---
This happens on my home PC and my work PC too. VS2015.

--


[Issue 18642] VisualD - Demangle link errors?

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18642

--- Comment #6 from Manu  ---
Emailed you the log (building DMD)

--


[Issue 18864] Building 64-bit dmd on Windows results in a debug build. The release build doesn't work.

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18864

--- Comment #3 from Atila Neves  ---
Using digger to build dmd 2.080.0 works and produces a 64-bit binary. Given
that digger uses a relatively old dmd to do so, it would seem the issue arises
when using 2.080.0 to build itself.

--


[Issue 6005] Type name and variable name don't clash

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=6005

Dmitry Olshansky  changed:

   What|Removed |Added

 CC||dmitry.o...@gmail.com
Summary|Type alias - variable name  |Type name and variable name
   |don't clash |don't clash

--


[Issue 5788] Better optimize [] (empty dynamic array literals)

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5788

Dmitry Olshansky  changed:

   What|Removed |Added

   Keywords||bootcamp, performance
 CC||dmitry.o...@gmail.com

--- Comment #4 from Dmitry Olshansky  ---
Still here with DMD 2.080:

 <_D4dbug3fooFZAi>:
   0:   55  push   %rbp
   1:   48 8b ecmov%rsp,%rbp
   4:   31 f6   xor%esi,%esi
   6:   48 8b 3d 00 00 00 00mov0x0(%rip),%rdi# d
<_D4dbug3fooFZAi+0xd>
   d:   e8 00 00 00 00  callq  12 <_D4dbug3fooFZAi+0x12>
  12:   48 89 c2mov%rax,%rdx
  15:   31 c0   xor%eax,%eax
  17:   5d  pop%rbp
  18:   c3  retq
  19:   00 00   add%al,(%rax)
...

Disassembly of section .text._D4dbug3barFZAi:

 <_D4dbug3barFZAi>:
   0:   55  push   %rbp
   1:   48 8b ecmov%rsp,%rbp
   4:   31 c0   xor%eax,%eax
   6:   31 d2   xor%edx,%edx
   8:   5d  pop%rbp
   9:   c3  retq
...

--


[Issue 5714] case ranges in final switches

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5714

Dmitry Olshansky  changed:

   What|Removed |Added

   Keywords||bootcamp
 CC||dmitry.o...@gmail.com

--


[Issue 5688] Poor optimization of (long & 1)

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5688

Dmitry Olshansky  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||dmitry.o...@gmail.com
 Resolution|--- |WORKSFORME

--- Comment #3 from Dmitry Olshansky  ---
Now on 2.080 32-bit it's much better:

   0:   8b 44 24 04 mov0x4(%esp),%eax
   4:   8b 54 24 08 mov0x8(%esp),%edx
   8:   25 01 00 00 00  and$0x1,%eax
   d:   31 d2   xor%edx,%edx
   f:   c2 08 00ret$0x8

And 64-bit (barring the rbp/rsp that can be elided but a different matter):


   0:   55  push   %rbp
   1:   48 8b ecmov%rsp,%rbp
   4:   48 81 e7 01 00 00 00and$0x1,%rdi
   b:   48 89 f8mov%rdi,%rax
   e:   5d  pop%rbp
   f:   c3  retq

--


[Issue 5669] Constructor calls should be valid inside final switch

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5669

Dmitry Olshansky  changed:

   What|Removed |Added

 CC||dmitry.o...@gmail.com

--- Comment #2 from Dmitry Olshansky  ---
Still fails talking about jumps on 2.080

enum SomeEnum { A, B}

class D  {
this(int);
this(string);

this(SomeEnum s) {
final switch(s) {
case SomeEnum.A: this("Hello"); break;
case SomeEnum.B: this(3); break;
}
}
}

--


[Issue 18895] New: VisualD is unable to build dxml project

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18895

  Issue ID: 18895
   Summary: VisualD is unable to build dxml project
   Product: D
   Version: D2
  Hardware: x86
OS: Windows
Status: NEW
  Severity: enhancement
  Priority: P1
 Component: visuald
  Assignee: nob...@puremagic.com
  Reporter: jesse.k.phillip...@gmail.com

Created attachment 1697
  --> https://issues.dlang.org/attachment.cgi?id=1697=edit
The VisualD details log

I utilized DUB to build the solution/project file for visuald.

I get the attached error when attempting to build.


dub version: 1.9.0-beta.1
OS Platform and distribution: Windows 8
compiler version v2.080.0-beta.1

--


[Issue 5283] Increase granularity of unit tests so that all unittest blocks in a module run even after another block fails

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5283

--- Comment #2 from Jonathan M Davis  ---
(In reply to Dmitry Olshansky from comment #1)
> Jonathan, do you customizable test runner that D currently has still not
> addresses this? Including ready-made cutomizations such as unit-threaded and
> friends on dub.

Personally, I only ever use the built-in test runners, and I have no clue what
improvements have been made since I reported this (though I'm sure that the
behavior for the default test runner is the same). Based on what I've seen
Atila say about unit-threaded, I _think_ it's the case that he's able to use
__traits(getUnittests, ...) (or something like that anyway) to access each
unittest block directly and run it, in which case, presumably means that he can
make it run any combination of tests he wants, but I don't know. I'm fairly
certain that ___traits bit that he uses didn't exist when this was reported.

If other test runners can indeed run all of the tests in a module now, then
there really isn't any reason to leave this open, but the default test runner
has worked well enough for me that I haven't bothered to mess with others, so I
don't know what they can or can't do in this regard.

--


[Issue 5636] Array ops use lexicographic comparison instead of vector-style element-wise

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5636

Dmitry Olshansky  changed:

   What|Removed |Added

 CC||dmitry.o...@gmail.com
Summary|Array ops broken for|Array ops use lexicographic
   |comparisons |comparison instead of
   ||vector-style element-wise

--


[Issue 5603] More initialization functions for dynamic arrays

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5603

Dmitry Olshansky  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||dmitry.o...@gmail.com
  Component|dmd |phobos
 Resolution|--- |WORKSFORME
Summary|Initialization syntax for   |More initialization
   |dynamic arrays  |functions for dynamic
   ||arrays

--- Comment #5 from Dmitry Olshansky  ---
And now we have uninitializedArray. It seems to be mostly moot now as taking
any simple RA range and calling .array on it should suffice.

iota(100).array; // 0..100 in array

replicate(42, 1000); // 1000 42's


https://dlang.org/phobos/std_array.html#uninitializedArray

Safe version of the above as well:

https://dlang.org/phobos/std_array.html#.minimallyInitializedArray

So all of that was fixed long time ago, but since title is enhancement for some
syntax it didn't cut it.

--


[Issue 5540] Probable bug-hiding redundancies

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5540

Dmitry Olshansky  changed:

   What|Removed |Added

 CC||dmitry.o...@gmail.com

--- Comment #8 from Dmitry Olshansky  ---
I think indeed for expressions that are trivially true (or false) there must be
an error in the context of || and &&. x == x and x != x is a popular mistake.

Except for true/false literals as they are often used for debugging and
disabling parts of program explicitly. It's a balancing act but a lot of vlaue
to be had.

On the other hand I'd really just give this to dscanner or simillar lint. I
tried dscanner right now but it doesn't seem to pick it up.

--


[Issue 5540] Probable bug-hiding redundancies

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5540

Dmitry Olshansky  changed:

   What|Removed |Added

   Keywords||bootcamp

--


[Issue 5445] DMD does not look for ".dmd.conf" in HOME dir

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5445

Mike Franklin  changed:

   What|Removed |Added

   Keywords||bootcamp, preapproved,
   ||trivial
 CC||slavo5...@yahoo.com

--


[Issue 5515] std.conv.to for safer enum casts

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5515

Dmitry Olshansky  changed:

   What|Removed |Added

 Status|REOPENED|RESOLVED
 CC||dmitry.o...@gmail.com
 Resolution|--- |FIXED

--- Comment #6 from Dmitry Olshansky  ---
import std.conv: to;
import std.algorithm: map;
enum Foo : char { A='a', B='b', C='c' }
void main() {
auto foos = "abcabcabc".map!(to!Foo)();
}


Compiles today, that was the last of it.

--


[Issue 5503] Forward declarations for nested mutually recursive functions

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5503

Dmitry Olshansky  changed:

   What|Removed |Added

 CC||dmitry.o...@gmail.com

--


[Issue 5445] DMD does not look for ".dmd.conf" in HOME dir

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5445

Dmitry Olshansky  changed:

   What|Removed |Added

 CC||dmitry.o...@gmail.com

--


[Issue 5436] tightening auto decl spec

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5436

Dmitry Olshansky  changed:

   What|Removed |Added

   Keywords||spec
 CC||dmitry.o...@gmail.com

--


[Issue 5431] Allow bang in template declarations

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5431

Dmitry Olshansky  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||dmitry.o...@gmail.com
 Resolution|--- |WONTFIX

--- Comment #1 from Dmitry Olshansky  ---
This is a set of highly dubious advantages for essentially introducing a syntax
change across all of the langauge.

Easier to read? - Bleh, 7 years in, everybdoy loves the current one.

Parser lookahead is trivial, and parsing speed it not even remotely the
bottlneck. Lexing surprisingly is importnant, but parsing is mostly meh.

Simpler syntax for 1 parameter is not enough benefit and it we'd have to stick
with both for an enternity until code is migrated to "superior" syntax.

So, a clear WONTFIX.

--


[Issue 5413] (diagnostic): No notification that warnings are treated as errors

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5413

Dmitry Olshansky  changed:

   What|Removed |Added

 CC||dmitry.o...@gmail.com

--


[Issue 5409] Disallow (!x & y)

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5409

Dmitry Olshansky  changed:

   What|Removed |Added

   Keywords||bootcamp
 CC||dmitry.o...@gmail.com

--- Comment #9 from Dmitry Olshansky  ---
Seems like a natural extension to our & and && being not allowed in the same
expression w/o parens.

--


[Issue 5325] Mutable references to const/immutable/shared classes

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5325

Dmitry Olshansky  changed:

   What|Removed |Added

 CC||dmitry.o...@gmail.com

--


[Issue 5309] Add language support for external D symbols refs

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5309

Dmitry Olshansky  changed:

   What|Removed |Added

 CC||dmitry.o...@gmail.com

--- Comment #2 from Dmitry Olshansky  ---
I believe I've seen a general mechanism for that such as __ident("any string "
~ "expressions") that would also work beautifully.

--


[Issue 5283] Increase granularity of unit tests so that all unittest blocks in a module run even after another block fails

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5283

Dmitry Olshansky  changed:

   What|Removed |Added

 CC||dmitry.o...@gmail.com

--- Comment #1 from Dmitry Olshansky  ---
Jonathan, do you customizable test runner that D currently has still not
addresses this? Including ready-made cutomizations such as unit-threaded and
friends on dub.

--


[Issue 5282] Optimize array comparison which use memcmp to something better and remove unnecessary indirections.

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5282

Dmitry Olshansky  changed:

   What|Removed |Added

 CC||dmitry.o...@gmail.com

--- Comment #8 from Dmitry Olshansky  ---
Should be better now with recent templated array ops. Need to double-check this
later.

--


[Issue 1578] Allow AA literals to initialize static variables

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=1578

Dmitry Olshansky  changed:

   What|Removed |Added

 CC||bearophile_h...@eml.cc

--- Comment #5 from Dmitry Olshansky  ---
*** Issue 5279 has been marked as a duplicate of this issue. ***

--


[Issue 5279] Function-static associative arrays

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5279

Dmitry Olshansky  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||dmitry.o...@gmail.com
 Resolution|--- |DUPLICATE

--- Comment #8 from Dmitry Olshansky  ---
There is already an enhancement for AAs to be initializable at global scope,
including const/immutable.

*** This issue has been marked as a duplicate of issue 1578 ***

--


[Issue 18642] VisualD - Demangle link errors?

2018-05-22 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18642

--- Comment #5 from Rainer Schuetze  ---
> Trying to build DMD, I get a different error:
>2>C:\Program Files (x86)\VisualD\msbuild\dcompile.targets(134,15): error 
>MSB4030:

Should be fixed in the new build.

>Oops! Installed and now I get this:
>1>   Link:

Hmm, works here. Can you send me the build log with "diagnostic" verbosity?

--