[Issue 17215] [Reg 2.073] ICE(cgcod.c:findreg) with SIMD and -O -inline

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17215

--- Comment #6 from github-bugzi...@puremagic.com ---
Commits pushed to stable at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/46d1948f4c4f05143729f9849b4edefe01b1a02e
fix Issue 17215 -  ICE(cgcod.c:findreg) with SIMD and -O -inline

- caused by assigning 2*REGSIZE XMM vectors partially
- only triggers since SROA sees this 8 bytes access

https://github.com/dlang/dmd/commit/b054a20d288db623c91ccbb9f2fb1e9f64e5f100
Merge pull request #6566 from MartinNowak/fix17215

fix Issue 17215 -  ICE(cgcod.c:findreg) with SIMD and -O -inline

--


[Issue 17225] override abstract function by abstract function

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17225

--- Comment #1 from Satoshi  ---
*abstract class Bar : Foo { 



interesting... It works on this simple example, but in more complex code nope.
I'll try to find why.

--


[Issue 17225] New: override abstract function by abstract function

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17225

  Issue ID: 17225
   Summary: override abstract function by abstract function
   Product: D
   Version: D2
  Hardware: x86_64
OS: Linux
Status: NEW
  Severity: normal
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: sato...@rikarin.org

abstract class Foo {
void test();
}


abstract class Bar {
override void test();
}


test does not override any function... 

It should be acceptable usage of override keyword.

--


[Issue 16590] Wrong di generation for ref methods

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16590

--- Comment #15 from Satoshi  ---
() @trusted {


}();


is generated as:
() {

}();

--


[Issue 16590] Wrong di generation for ref methods

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16590

Satoshi  changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|FIXED   |---

--- Comment #14 from Satoshi  ---
I found more bugs.

return attribute is generated as prefix, but it's not valid for compiler.
generated:
ref return rename()() {...}

should be:
ref rename()() return { ... }


next bug:
generated:
if (a < 2 | b > 7)

should be:
if ((a < 2) | (b > 7))

--


[Issue 17049] [scope] class references are not escape checked like pointers

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17049

--- Comment #7 from Martin Nowak  ---
And this is supposed to not work?

struct Handle { int a; }

static @safe Handle get2(return ref scope S _this)
{
return Handle(1);
}

struct S
{
}

Handle escape() @safe
{
S s;
auto h = s.get2();
return h; // works
}

--


[Issue 17049] [scope] class references are not escape checked like pointers

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17049

--- Comment #6 from Martin Nowak  ---
And the same is supposed to work for foreign pointers?

static @safe float* get2(return ref scope S _this)
{
return convert(&_this);
}

@trusted float* convert(S* s) { return cast(float*)s; }

struct S
{
}

float* escape() @safe
{
S s;
auto pf = s.get2();
return pf; // works
}

Error: scope variable pf may not be returned


--


[Issue 17049] [scope] class references are not escape checked like pointers

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17049

--- Comment #5 from Martin Nowak  ---
(In reply to Martin Nowak from comment #4)
> return ps1; // works
  silenty escapes !!!
> // return ps2; // doesn't work
  correctly errors on escape !!!
> }

--


[Issue 17049] [scope] class references are not escape checked like pointers

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17049

--- Comment #4 from Martin Nowak  ---
There is a difference from member functions to free function.

static @safe S* get2(return ref scope S _this)
{
return &_this;
}

struct S
{
@safe S* get1() return scope
{
return 
}
}

S* escape() @safe
{
S s;
auto ps1 = s.get1();
auto ps2 = s.get2();
return ps1; // works
// return ps2; // doesn't work
}

--


[Issue 17224] Foreach documentation still refers to TypeTuples, rather than AliasSequences

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17224

Brad Anderson  changed:

   What|Removed |Added

 CC|e...@gnuk.net|

--


[Issue 17224] Foreach documentation still refers to TypeTuples, rather than AliasSequences

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17224

Brad Anderson  changed:

   What|Removed |Added

 CC||e...@gnuk.net
Summary|[The D Bug Tracker] |Foreach documentation still
   ||refers to TypeTuples,
   ||rather than AliasSequences

--


[Issue 17224] New: [The D Bug Tracker]

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17224

  Issue ID: 17224
   Summary: [The D Bug Tracker]
   Product: D
   Version: D2
  Hardware: All
   URL: http://dlang.org/
OS: All
Status: NEW
  Severity: minor
  Priority: P3
 Component: dlang.org
  Assignee: nob...@puremagic.com
  Reporter: unbeliever...@gmail.com

Foreach documentation (https://dlang.org/spec/statement.html#ForeachStatement)
still refers to TypeTuples, rather than AliasSequences.

--


[Issue 17049] [scope] class references are not escape checked like pointers

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17049

Martin Nowak  changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|INVALID |---

--- Comment #3 from Martin Nowak  ---
Remember how we agreed on that the compiler shouldn't be too smart when
inferring whether the return value could alias any of the arguments.
This is crucial to support ownership idioms such as unique, where the container
could for example just wrap an int handle.
Use-after-free for handles is no different from dangling pointers, just as
unsafe and able to corrupt memory.

struct S
{
float* ptr; // needs a pointer for the compiler to attach the lifetime of
get's return value to S
@safe P get() return scope;
}

P escape() @safe
{
scope S s; // need to explicitly declare this as scope for the compiler to
infer get's return value as scope
P p = s.get();
return p;
}

//

Here is a simpler example on why this is broken.

struct S
{
@safe S* get() return scope
{
return 
}
}

S* escape() @safe
{
S s;
auto ps = s.get();
return ps;
}

In `auto ps = s.get()` the compiler should conservatively assume that ps points
to s, simply b/c the signature (w/ return scope) would allow to do so. Even if
the return type is seemingly unrelated to the passed in scope arguments type
conversions may be done by @trusted functions that are intransparent for the
compiler.

--


[Issue 17111] DMD accepts switch statement with non-const case variables

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17111

--- Comment #3 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/84fcc60ae769015e5a2acfbc73881e7808799e48
Fix issue 17111 - More robust detection of variables used as case exp.

https://github.com/dlang/dmd/commit/e15fb01c75e09934c4a89098062df605d9e5427f
Merge pull request #6477 from LemonBoy/b17111

--


[Issue 17168] Shift left operator causes segfault when compiling with -O flag

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17168

--- Comment #4 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/dec45d735143737b499f9ce105b74b13b71f3a73
fix Issue 17168

https://github.com/dlang/dmd/commit/7b48c5b05b735182376e6bbd3382afef6072cec8
Merge pull request #6529 from UplinkCoder/fix_elshl

--


[Issue 17169] New default ddoc theme merges all paragraphs except the first

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17169

--- Comment #6 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/5fcb2ea18bf9434624b8163d80a14f8782639483
Fix issue 17169 - New default ddoc theme merges all paragraphs except the first

https://github.com/dlang/dmd/commit/56ca1da4a46b87d87437abc740c89dbb0af3a8ba
Merge pull request #6538 from jacob-carlborg/issue_17169

--


[Issue 4682] [CTFE] Run-time Vs Compile-time of int.min % -1

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=4682

--- Comment #3 from github-bugzi...@puremagic.com ---
Commit pushed to newCTFE at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/a4cedfa2a50fdf81e0b67a7acdbb2d872e88
add test case for Issue 4682

--


[Issue 16483] ICE in expression.d from typeof

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16483

--- Comment #4 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/3f94ea1ecba10d663faca0d4bc814057e40dbd70
Fix issue 16483 - Prevent an ICE with lambdas as template parameter

https://github.com/dlang/dmd/commit/254c25928bb5dc64fad12fbf5731db9864e5a8b7
Merge pull request #6451 from LemonBoy/b16483

--


[Issue 14859] static declared array with more than 16MB size should be allowed in struct and class declaration

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14859

--- Comment #4 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/07855a2f94e216b65a342dc06a7d6f1d6bcafb8f
reboot #6081: Fix issue 14859 - 16MiB size limit for static array

https://github.com/dlang/dmd/commit/14ba1f62e7f1be6668feddd14d20de4837875585
Merge pull request #6503 from WalterBright/fix14859

--


[Issue 17117] [REG2.073] erroneous "escaping reference to local variable"

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17117

--- Comment #7 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/4a4dcf23830e9066a70cb1c381d97306f2bb5bbc
fix Issue 17117 - erroneous 'escaping reference to local variable'

https://github.com/dlang/dmd/commit/ad85be95ea42be37ccae2ad6133b0b058929fe3e
Merge pull request #6488 from WalterBright/fix17117

--


[Issue 17057] trait "allMembers" incorrectly includes imports

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17057

--- Comment #2 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/912252b50277b95964981ef197d708db662b6554
Fix Issue 17057 - Added test file

https://github.com/dlang/dmd/commit/6280bb4437c05f418e852dad65c7f09ae2b43dd7
Merge pull request #6505 from RazvanN7/Issue_17057

--


[Issue 17143] [REG2.072.0] Declaration is already defined on global enum = tuple(...).expand declaration

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17143

--- Comment #3 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/555a9a1f5e105b6e815b0a54218de04e36289e38
Fix Issue 17143 - [REG2.072.0] Declaration is already defined on global enum =
tuple(...).expand declaration

https://github.com/dlang/dmd/commit/093a53aa46e41da58525cc556e071c1ae3d46c84
Merge pull request #6517 from epi/fix-17143

--


[Issue 17130] [Reg 2.074] ambiguous implicit super call when inheriting core.sync.mutex.Mutex

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17130

--- Comment #9 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/db81df0b6db19f5808e551a01730c15d341dc981
fix Issue 17130 - ambiguous implicit super call

https://github.com/dlang/dmd/commit/5262d78df2d2b4b3ee1fffc3393a5d57b535a481
Merge pull request #6513 from MartinNowak/fix17130

https://github.com/dlang/dmd/commit/cfeb41ae8db207d708b48155760a52dba0c57791
fix Issue 17130 - ambiguous implicit super call

https://github.com/dlang/dmd/commit/69182dac5d7e4ba0f32377715f24ccf910d2f333
Merge pull request #6541 from MartinNowak/fix17130

--


[Issue 15428] __traits(compiles, super()) cause error "multiple constructor calls" later

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15428

--- Comment #5 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/d23913c8971766a461e2a973dd9c7fccbad90793
Fix issue 15428 - Properly detach the temporary scope for compiles()

https://github.com/dlang/dmd/commit/0689490b0f40d2cfbf9492925fde28f1a3b2e312
Merge pull request #6462 from LemonBoy/b15428

--


[Issue 17123] [REG 2.073] Issues with return @safe inference

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17123

--- Comment #7 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/74f7a29935fe55a718a7bb92248e3c455bb4e105
fix Issue 17123 - [REG 2.073] Issues with return @safe inference

https://github.com/dlang/dmd/commit/dc279ec2003e4f4847fc9ebe1713bb99a2da99d9
Merge pull request #6497 from WalterBright/fix1707-stable

https://github.com/dlang/dmd/commit/7dd10aaf145981ce994e17abece5d90765222625
fix Issue 17123 - [REG 2.073] Issues with return @safe inference

--


[Issue 15676] The compiler does not preserve @disable while generating .di files

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15676

--- Comment #3 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/b2aa1ead04afb58e35513bfda439614125c656d4
Fix issue 15676 - Don't omit the attributes for the postblit constructor

https://github.com/dlang/dmd/commit/1205ca40e87b11d4a5f4a6e09b2a16eb8c3956e9
Merge pull request #6463 from LemonBoy/b15676

--


[Issue 17223] New: Inconsistency between opDispatch explicit/implicit usage

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17223

  Issue ID: 17223
   Summary: Inconsistency between opDispatch explicit/implicit
usage
   Product: D
   Version: D2
  Hardware: All
OS: All
Status: NEW
  Severity: major
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: john.loughran.col...@gmail.com

alias AliasSeq(TL ...) = TL;
int n;
struct S
{
alias A = AliasSeq!(n, int);
template opDispatch(string name)
{
alias this_ = this;
alias opDispatch = AliasSeq!(__traits(getMember, this_, "A"));
}
}

alias b = S.opDispatch!"B"; // OK
alias a = S.B; // Error: alias test.a cannot alias an expression tuple(n,
(int))

--


[Issue 17215] [Reg 2.073] ICE(cgcod.c:findreg) with SIMD and -O -inline

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17215

Martin Nowak  changed:

   What|Removed |Added

   Keywords||pull

--- Comment #5 from Martin Nowak  ---
https://github.com/dlang/dmd/pull/6566

--


[Issue 11703] Typedef properties should not be of the original type

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=11703

--- Comment #2 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/5fedf3503d73cead36a33260ba3efcc39847b8ce
fix issue 11703, Typedef properties should not be of the original type

https://github.com/dlang/phobos/commit/5da61cafac754ba63d45028b38913eeef937d934
Merge pull request #5059 from BBasile/issue-11703

--


[Issue 8471] std.stdio.readf should be @trusted

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=8471

github-bugzi...@puremagic.com changed:

   What|Removed |Added

 Status|REOPENED|RESOLVED
 Resolution|--- |FIXED

--


[Issue 16442] FrontTransversal fails with empty ranges

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16442

--- Comment #2 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/41c2d14658817419cb335a42656130b7aa2959f6
Fix Issue 16442 - FrontTransversal fails with empty ranges

https://github.com/dlang/phobos/commit/68c77e1358050443ac295a60812055a56c70ff84
Merge pull request #5091 from RazvanN7/Issue_16442

--


[Issue 8260] * used three or more times on an array inside std.format.formattedRead and not guarded by template constraint

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=8260

--- Comment #5 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/c34561b284efcf4eb54701e78f3a04813f710437
Fix issue #8260 - allow only pointers as formattedRead parameters

https://github.com/dlang/phobos/commit/c07c3cea3343137b3f3a49c345707fbb8f0b2ba2
Merge pull request #5040 from byebye/issue_8260

--


[Issue 17196] [Reg 2.074] isUnsigned!bool now true

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17196

--- Comment #5 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/58c91e1a2cbe0658a114bac87ebaed05fd630f88
Issue 17196 - [Reg 2.074] isUnsigned!bool now true

https://github.com/dlang/phobos/commit/166ae7dde3b0c4f38be9957943f3f63175803988
Merge pull request #5170 from wilzbach/fix-17196

--


[Issue 17177] AutoImplement fails on function overload sets with "cannot infer type from overloaded function symbol"

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17177

--- Comment #3 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/085902b3d68fe692d020b6b0c31c63deb2a5d987
fix issue 17177.  AutoImplement fails on function overload sets with "cannot
infer type from overloaded function symbol".

https://github.com/dlang/phobos/commit/ef0dffab0d49ba7f069fd3c82173823310fda7ab
Merge pull request #5119 from aermicioi/issue_17177

--


[Issue 16824] std.experimental.allocator.dispose leaks memory for arrays of more than 1 dimension

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16824

--- Comment #13 from github-bugzi...@puremagic.com ---
Commit pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/64a0814ae426749a70decc5382b2fb3365a52a3e
Issue 16824: fix experimental makeMultidimensionalArray API

--


[Issue 17154] std.conv.toChars doesn't support $ in slicing

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17154

--- Comment #4 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/d5ae07f0f125bdefe92b4035dfb35f613dbf9a8a
Fix Issue 17154 - Added opDollar to std.conv.toChars

https://github.com/dlang/phobos/commit/d8ca218d540a1c938bb36f70f0ee36388bce85aa
Merge pull request #5081 from dlang/JackStouffer-patch-2

--


[Issue 17139] [BLOCKING] dscanner needs to handle 'scope' function attributes

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17139

--- Comment #4 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/4fab50175481d9b1c00ae168c444580de92f258c
fix issue 17139 - dscanner needs to handle 'scope' function attributes

https://github.com/dlang/phobos/commit/72a2b2eb93b30806d4fa0cb162f24091fdfb651e
Merge pull request #5085 from BBasile/issue-17139

--


[Issue 17215] [Reg 2.073] ICE(cgcod.c:findreg) with SIMD and -O -inline

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17215

Martin Nowak  changed:

   What|Removed |Added

Summary|ICE(cgcod.c:findreg) with   |[Reg 2.073]
   |SIMD and -O -inline |ICE(cgcod.c:findreg) with
   ||SIMD and -O -inline
   Severity|major   |regression

--


[Issue 16470] Segfault with negative array length

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16470

--- Comment #6 from github-bugzi...@puremagic.com ---
Commit pushed to newCTFE at https://github.com/dlang/druntime

https://github.com/dlang/druntime/commit/2d38937e3ff6597a143e83cf2d2d38c76b117d56
Fix issue 16470: Segfault with negative array length

--


[Issue 17161] [REG 2.072.2] Massive Regex Slowdown

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17161

--- Comment #8 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/5a2491a847beb035b37ee2a270029499065b1919
Fix Issue 17161 - Revert all changes to std.regex from 2.072.2 onwards

https://github.com/dlang/phobos/commit/c4f4cfeda6ba60e2df6eef05bc1f8946982e9a99
Merge pull request #5113 from JackStouffer/revert-regex

--


[Issue 17153] std.container.array.Array cannot be used in @nogc code

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17153

--- Comment #2 from github-bugzi...@puremagic.com ---
Commit pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/2a97fb42345ff1f238510e0ca03c08497d530d53
Merge pull request #5036 from JackStouffer/nogc-Array

--


[Issue 9615] std.conv.parse!(T[]) fails on trailing comma

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=9615

--- Comment #3 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/307675ad75230efa5bd7d6c5cb4ea38b7a23694d
fix issue 9615, std.conv.parse!(T[]) should allow a trailing comma

https://github.com/dlang/phobos/commit/781ea571b03b1cdc3246bbea4820a4f0242d215e
Merge pull request #5061 from BBasile/issue-9615

--


[Issue 16999] takeOne popFront/Back does not pop the source range

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16999

--- Comment #2 from github-bugzi...@puremagic.com ---
Commit pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/d60f32c3b92a44e6b9b7f6e9183b298c47d1f71d
Merge pull request #4984 from dukc/takeOneFix

--


[Issue 17215] ICE(cgcod.c:findreg) with SIMD and -O -inline

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17215

--- Comment #4 from Martin Nowak  ---
Digger points to https://github.com/dlang/dmd/pull/6176 for having introduced
this.

--


[Issue 17116] std.typecons.ReplaceType is not able to process const delegate

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17116

--- Comment #3 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/181db425c9f19b0fa20f0c2c6cd9287922a640ae
fix issue 17116 - std.typecons.ReplaceType is not able to process const
delegate

https://github.com/dlang/phobos/commit/78be8eef4a597b9bd0e241402b32344601fb6570
Merge pull request #5060 from BBasile/issue-17116

--


[Issue 17222] New: assert in compiler caused by opDispatch

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17222

  Issue ID: 17222
   Summary: assert in compiler caused by opDispatch
   Product: D
   Version: D2
  Hardware: All
OS: All
Status: NEW
  Severity: major
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: john.loughran.col...@gmail.com

Dustmite reduced from a slightly modified phobos, testing with a debug build of
dmd git HEAD:

template AliasSeq() { }

template Proxy(alias a)
{
template opDispatch(string name)
{
static if (__traits(isTemplate, mixin("a."~name)))
template opDispatch(T ...)
{
alias opDispatch = AliasSeq!(mixin("a."~name~"!(T)"));
}
}
}

unittest
{
class Foo
{
T ifti1(T)(T) { }
}
class Hoge
{
Foo foo;
mixin Proxy!foo;
}

Hoge.ifti1;
}

$ dmd -unittest std/typecons.d
core.exception.AssertError@dinterpret.d(714): Assertion failure

??:? _d_assert [0x717377]
??:? void ddmd.dinterpret.__assert(int) [0x54cf7e]
??:? _Z13ctfeInterpretP10Expression [0x53b395]
??:? _ZN10Expression13ctfeInterpretEv [0x581288]
??:? _ZN16TemplateInstance14semanticTiargsE3LocP5ScopeP5ArrayIP10RootObjectEi
[0x57188b]
??:? _ZN16TemplateInstance14semanticTiargsEP5Scope [0x571c8d]
??:? _ZN16TemplateInstance8semanticEP5ScopeP5ArrayIP10ExpressionE [0x56f0f0]
??:? _ZN16TemplateInstance8semanticEP5Scope [0x56fedf]
??:? _ZN12TypeInstance7resolveE3LocP5ScopePP10ExpressionPP4TypePP7Dsymbolb
[0x5eab95]
??:? _ZN12TypeInstance9toDsymbolEP5Scope [0x5ead85]
??:? _ZN16AliasDeclaration13aliasSemanticEP5Scope [0x530274]
??:? _ZN16AliasDeclaration8semanticEP5Scope [0x530049]
??:? _ZN16TemplateInstance13expandMembersEP5Scope [0x5739c1]
??:? _ZN16TemplateInstance16tryExpandMembersEP5Scope [0x573a36]
??:? _ZN16TemplateInstance8semanticEP5ScopeP5ArrayIP10ExpressionE [0x56f7c7]
??:? int ddmd.dtemplate.functionResolve(ddmd.declaration.Match*,
ddmd.dsymbol.Dsymbol, ddmd.globals.Loc, ddmd.dscope.Scope*,
ddmd.root.array.Array!(ddmd.root.rootobject.RootObject).Array*,
ddmd.mtype.Type,
ddmd.root.array.Array!(ddmd.expression.Expression).Array*).applyTemplate(ddmd.dtemplate.TemplateDeclaration)
[0x5676df]
??:? int ddmd.dtemplate.functionResolve(ddmd.declaration.Match*,
ddmd.dsymbol.Dsymbol, ddmd.globals.Loc, ddmd.dscope.Scope*,
ddmd.root.array.Array!(ddmd.root.rootobject.RootObject).Array*,
ddmd.mtype.Type,
ddmd.root.array.Array!(ddmd.expression.Expression).Array*).__lambda10(ddmd.dsymbol.Dsymbol)
[0x5681aa]
??:? int ddmd.func.overloadApply(ddmd.dsymbol.Dsymbol, scope int
delegate(ddmd.dsymbol.Dsymbol)) [0x5b0bbf]
??:? void ddmd.dtemplate.functionResolve(ddmd.declaration.Match*,
ddmd.dsymbol.Dsymbol, ddmd.globals.Loc, ddmd.dscope.Scope*,
ddmd.root.array.Array!(ddmd.root.rootobject.RootObject).Array*,
ddmd.mtype.Type, ddmd.root.array.Array!(ddmd.expression.Expression).Array*)
[0x566d69]
??:?
_Z15resolveFuncCall3LocP5ScopeP7DsymbolP5ArrayIP10RootObjectEP4TypePS4_IP10ExpressionEi
[0x5b0e94]
??:? _Z18resolvePropertiesXP5ScopeP10ExpressionS2_ [0x57a0ac]
??:? _Z17resolvePropertiesP5ScopeP10Expression [0x57a4de]
??:? _ZN24StatementSemanticVisitor5visitEP12ExpStatement [0x61ea81]
??:? _ZN12ExpStatement6acceptEP7Visitor [0x6132b9]
??:? ddmd.statement.Statement
ddmd.statementsem.semantic(ddmd.statement.Statement, ddmd.dscope.Scope*)
[0x62c242]
??:? _ZN24StatementSemanticVisitor5visitEP17CompoundStatement [0x61ed05]
??:? _ZN17CompoundStatement6acceptEP7Visitor [0x613a31]
??:? ddmd.statement.Statement
ddmd.statementsem.semantic(ddmd.statement.Statement, ddmd.dscope.Scope*)
[0x62c242]
??:? _ZN15FuncDeclaration9semantic3EP5Scope [0x5aa12f]
??:? _ZN6Module9semantic3EP5Scope [0x552781]
??:? int ddmd.mars.tryMain(ulong, const(char)**) [0x5d9a2f]
??:? _Dmain [0x5da6f6]
??:? _D2rt6dmain211_d_run_mainUiPPaPUAAaZiZ6runAllMFZ9__lambda1MFZv [0x7190be]
??:? void rt.dmain2._d_run_main(int, char**, extern (C) int
function(char[][])*).tryExec(scope void delegate()) [0x719004]
??:? void rt.dmain2._d_run_main(int, char**, extern (C) int
function(char[][])*).runAll() [0x71907a]
??:? void rt.dmain2._d_run_main(int, char**, extern (C) int
function(char[][])*).tryExec(scope void delegate()) [0x719004]
??:? _d_run_main [0x718f7e]
??:? main [0x5dae97]
??:? __libc_start_main [0xe3f0c290]

--


[Issue 16991] Make writeln documentation palatable

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=16991

--- Comment #3 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/d7f6cc337e9ad1d122aa721d5862d113f6ab709c
Fix Issue 16991 - Make writeln documentation palatable

https://github.com/dlang/phobos/commit/93222f0be436c851b9f032ff2ee0f759c333cafc
Merge pull request #5134 from JackStouffer/stdio-docs

--


[Issue 17176] https://dlang.org/phobos/std_stdio.html#.File.tmpfile broken link

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17176

--- Comment #4 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/565ab34cb0e83ba8149812bf6c580a1becc1ab1d
fix issue 17176 - https://dlang.org/phobos/std_stdio.html#.File.tmpfile broken
link

https://github.com/dlang/phobos/commit/175082dc034226bacce463a1b5979f93daf807ab
Merge pull request #5118 from aG0aep6G/17176

--


[Issue 10900] Mersenne Twister should have a 64-bit (ulong) version

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=10900

--- Comment #2 from github-bugzi...@puremagic.com ---
Commit pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/45c515f267b687032b6672921d28b5c7938f6154
Add 64-bit implementation of MersenneTwisterEngine

--


[Issue 17217] std.net.isemail.isEmail doesn't work with non char arrays

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17217

--- Comment #3 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/a91b610ce18e0477ed9b9757e619797f93baaa77
Fix issue 17217 - std.net.isemail.isEmail doesn't work with non char arrays

https://github.com/dlang/phobos/commit/c32240a5fe1316972fb57c70ed1780f6bcbedc07
Merge pull request #5173 from JackStouffer/issue17217

--


[Issue 17195] [Reg 2.074] isFloatingPoint!cfloat is now true

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17195

--- Comment #3 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/76dd6fe33baffb1ecfc14a192634f0ec51fb7345
Issue 17195 - [Reg 2.074] isFloatingPoint!cfloat is now true

https://github.com/dlang/phobos/commit/d67d487199a2340bd83326e4db5b0e1a5ea425de
Merge pull request #5171 from wilzbach/fix-17195

--


[Issue 8471] std.stdio.readf should be @trusted

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=8471

--- Comment #16 from github-bugzi...@puremagic.com ---
Commits pushed to newCTFE at https://github.com/dlang/phobos

https://github.com/dlang/phobos/commit/882a1fb8f62b872f3463e9fca2b2e1e04d36effb
Fix issue #8471 - allow only pointers as readf parameters

https://github.com/dlang/phobos/commit/0059fc3263b9ebd62ef7c6c7b3eed4b20f313364
Merge pull request #5076 from byebye/issue_8471

--


[Issue 17196] [Reg 2.074] isUnsigned!bool now true

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17196

--- Comment #4 from Martin Nowak  ---
Opened issue 17221 for the compiler change.

--


[Issue 17221] New: __traits(isUnsigned, bool/char) should be false

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17221

  Issue ID: 17221
   Summary: __traits(isUnsigned, bool/char) should be false
   Product: D
   Version: D2
  Hardware: x86_64
OS: Linux
Status: NEW
  Severity: enhancement
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: c...@dawg.eu

See issue 17196, it doesn't make much sense to treat bool and chars as
unsigned. This would need to be deprecated before being changed.

--


[Issue 17220] invalid code with -m32 -inline and struct that's size_t.sizeof x the size of an assigned enum value

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17220

Martin Nowak  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Martin Nowak  ---
This got accidentally fixed by
https://github.com/dlang/dmd/pull/6410/files#diff-0630e1297bdecef97aded9af2ddb879cL4041.

Seems like the problem was indeed a CSE which caused that no code was generated
for `mov cl, 8`, but the following `gen1(c3, 0xF3)` didn't deal with c3 being
CNIL, hence the code wasn't appended/emitted.

--


[Issue 17195] [Reg 2.074] isFloatingPoint!cfloat is now true

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17195

Martin Nowak  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--


[Issue 17196] [Reg 2.074] isUnsigned!bool now true

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17196

Martin Nowak  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--


[Issue 17220] invalid code with -m32 -inline and struct that's size_t.sizeof x the size of an assigned enum value

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17220

--- Comment #3 from Martin Nowak  ---
The cmp runs on the `lhs` symbol, while only the `val` symbol get's
initialized.
Not sure, but seems like the copy got elided.

Here is the assembly for when the size of BCValue != size_t.sizeof *
BCTypeEnum.i32

mov cl, 8   ; 0018 _ B1, 08
mov byte ptr [rbp-78H], cl  ; 001A _ 88. 4D, 88
lea rsi, [rbp-78H]  ; 001D _ 48: 8D. 75, 88
lea rdi, [rbp-38H]  ; 0021 _ 48: 8D. 7D, C8
mov cl, 7   ; 0025 _ B1, 07
rep movsq   ; 0027 _ F3 48: A5
cmp byte ptr [rbp-38H], 8   ; 002A _ 80. 7D, C8, 08
jz  ?_003   ; 002E _ 74, 0A

Apparently the `mov cl, 8` instruction is a CSE in the bug case, no idea why
the rep movsq get's omitted b/c of that though.

--


[Issue 17215] ICE(cgcod.c:findreg) with SIMD and -O -inline

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17215

--- Comment #3 from Martin Nowak  ---
cat > bug.d << CODE
alias vec = __vector(int[4]);

vec binop(vec a)
{
vec b = a;
return b;
}
CODE
dmd -c -O bug

Internal error: backend/cgcod.c 1659


Further reduced, no longer requires -inline.

--


[Issue 17182] dconf.org's thankyou page is missing

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17182

John Colvin  changed:

   What|Removed |Added

 CC||john.loughran.colvin@gmail.
   ||com

--- Comment #2 from John Colvin  ---
Same for me. Obviously I know it'll be fine one way or another seeing as I've
paid, but it might be a bit off-putting for people to pay and then get
redirected to an error page.

--


[Issue 17220] invalid code with -m32 -inline and struct that's size_t.sizeof x the size of an assigned enum value

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17220

Martin Nowak  changed:

   What|Removed |Added

   Hardware|x86_64  |All
Summary|invalid code with -m32  |invalid code with -m32
   |-inline and struct that's   |-inline and struct that's
   |4x the size of an assigned  |size_t.sizeof x the size of
   |enum value  |an assigned enum value
 OS|All |Linux

--- Comment #2 from Martin Nowak  ---
Ah thanks for size_t.sizeof times enum value finding.
This is easily the weirdest backend bug I've seen so far.

--


[Issue 17215] ICE(cgcod.c:findreg) with SIMD and -O -inline

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17215

Martin Nowak  changed:

   What|Removed |Added

   Hardware|All |x86_64
 OS|All |Linux

--- Comment #2 from Martin Nowak  ---
Ah yes calling convention, it's definitely failing on linux x86_64.
https://dpaste.dzfl.pl/449dd3669728

--


[Issue 17197] Link failure with -m64 on Windows

2017-02-24 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17197

Rainer Schuetze  changed:

   What|Removed |Added

 CC||r.sagita...@gmx.de

--- Comment #1 from Rainer Schuetze  ---
You are right that -msmode should be added, but it probably isn't going to make
a lot of difference since the actual encoding is often hard to guess. In my
tests the names displayed in linker messages are never correct for non-ASCII
characters (there are no exceptions, though). Could you provide an example that
raises the exception?

To avoid the exception from occuring, pipedmd should probably never assume
correct UTF-8.

--