[Issue 17448] Move semantics cause memory corruption and cryptic bugs

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17448 --- Comment #28 from Tomer Filiba (weka) --- My point is, @safe is so constrained that it's practically unusable, so I don't consider it a viable solution for this problem. --

[Issue 17448] Move semantics cause memory corruption and cryptic bugs

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17448 --- Comment #27 from Tomer Filiba (weka) --- (In reply to Andrei Alexandrescu from comment #25) > > So... more special cases? > > That's a straight use of scope per DIP 1000, in fact the very design intent: > scope in a function

[Issue 18134] BitArray >>= broken when length % (8 * size_t.sizeof) == 0

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18134 github-bugzi...@puremagic.com changed: What|Removed |Added Status|ASSIGNED|RESOLVED

[Issue 18134] BitArray >>= broken when length % (8 * size_t.sizeof) == 0

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18134 --- Comment #3 from github-bugzi...@puremagic.com --- Commits pushed to master at https://github.com/dlang/phobos https://github.com/dlang/phobos/commit/b211347454b70fdb5a539f3fd8bc82fcec846e70 Fix issue 18134 - BitArray right shift broken if length

[Issue 17448] Move semantics cause memory corruption and cryptic bugs

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17448 Jonathan M Davis changed: What|Removed |Added CC|

[Issue 18541] comparison `==` of two typeid() should always be rewritten as a "is"

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18541 Ketmar Dark changed: What|Removed |Added CC|

[Issue 17448] Move semantics cause memory corruption and cryptic bugs

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17448 --- Comment #26 from Eyal --- What solution is there for this use-case then? We need objects to register themselves (i.e: set out-of-scope pointers to point at them) and RAII-wise have them de-register themselves. While they are

[Issue 1985] import expression should return ubyte[] not string

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=1985 --- Comment #11 from anonymous4 --- I think it's better to replace import expression with intrinsic, say, importText (like std.file.readText). This will also reduce grammar complexity and remove second and rarely used

[Issue 1985] import expression should return ubyte[] not string

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=1985 anonymous4 changed: What|Removed |Added Keywords||spec --

[Issue 18564] core.demangle exception Range violation

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18564 johanenge...@weka.io changed: What|Removed |Added Keywords||industry CC|

[Issue 18564] core.demangle exception Range violation

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18564 johanenge...@weka.io changed: What|Removed |Added Keywords||mangling --

[Issue 9983] inout type can not be used as a parameter for structure template

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=9983 Martin Nowak changed: What|Removed |Added CC||c...@dawg.eu

[Issue 18561] postblit should allow writing const/immutable members just like constructors

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18561 --- Comment #4 from ajiesk...@gmail.com --- (In reply to anonymous4 from comment #3) > This passes: > --- > struct A > { > int a; > this(int b) const { a=b; } > } > int main() > { > const A a; > assert(a.a==0,"0"); > a.__ctor(1);

[Issue 18561] postblit should allow writing const/immutable members just like constructors

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18561 --- Comment #5 from Steven Schveighoffer --- (In reply to anonymous4 from comment #3) > a.__ctor(1); This is another bug. One should only be able to call const __ctor on a struct once, before using it. --

[Issue 18561] postblit should allow writing const/immutable members just like constructors

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18561 --- Comment #3 from anonymous4 --- This passes: --- struct A { int a; this(int b) const { a=b; } } int main() { const A a; assert(a.a==0,"0"); a.__ctor(1); assert(a.a==1,"1"); return 0; } --- --

[Issue 18564] New: core.demangle exception Range violation

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18564 Issue ID: 18564 Summary: core.demangle exception Range violation Product: D Version: D2 Hardware: All OS: All Status: NEW Severity: normal Priority:

[Issue 18563] context pointer inside structs constness problems

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18563 Ketmar Dark changed: What|Removed |Added CC|

[Issue 18557] Types with 0 size should not be usable as aa key types

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18557 Ketmar Dark changed: What|Removed |Added CC|

[Issue 18565] New: std.regex Captures opAssign returns void since v2.079.0

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18565 Issue ID: 18565 Summary: std.regex Captures opAssign returns void since v2.079.0 Product: D Version: D2 Hardware: All OS: All Status: NEW

[Issue 18542] DMD could generate better assembly for common range check idioms

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18542 Ketmar Dark changed: What|Removed |Added CC|

[Issue 17448] Move semantics cause memory corruption and cryptic bugs

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17448 --- Comment #30 from Andrei Alexandrescu --- Indeed it seems we are not supporting registration by address with ease for D value types. There are good reasons for that; by allowing value types to be moved around we avoid a swath

[Issue 18566] New: const on method of nested data type is not applied to variables in context

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18566 Issue ID: 18566 Summary: const on method of nested data type is not applied to variables in context Product: D Version: D2 Hardware: All OS: All

[Issue 18562] expression is not evaluated when accessing manifest constant

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18562 Ketmar Dark changed: What|Removed |Added CC|

[Issue 18541] comparison `==` of two typeid() should always be rewritten as a "is"

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18541 --- Comment #9 from Ketmar Dark --- compiler transforms `==` for objects to virtual call, and dmd cannot devirtualize calls (yet? ;-). so yeah, no inlining. it is quite possible to rewrite the call into `e1 is e1 ||

[Issue 18560] find on infinite ranges is broken

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18560 Ketmar Dark changed: What|Removed |Added CC|

[Issue 18567] New: immutability hole related to context pointers accessed through const pure methods

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18567 Issue ID: 18567 Summary: immutability hole related to context pointers accessed through const pure methods Product: D Version: D2 Hardware: All OS: All

[Issue 18564] core.demangle exception Range violation

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18564 --- Comment #1 from Rainer Schuetze --- Did you try latest dmd master? There have been a couple of recent fixes that look similar, e.g. https://issues.dlang.org/show_bug.cgi?id=18300 and

[Issue 17961] std.uni does not compile with -unittest -dip1000

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17961 --- Comment #11 from Carsten Bl├╝ggel --- (In reply to hsteoh from comment #10) > Link: https://github.com/dlang/phobos/pull/6041 Due to lack of acceptance I closed PR https://github.com/dlang/phobos/pull/6041. Maybe

[Issue 14242] destruction of static arrays with elaborate destructor elements does not propagate attributes

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14242 Mike Franklin changed: What|Removed |Added Status|NEW |RESOLVED

[Issue 18560] New: find on infinite ranges is broken

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18560 Issue ID: 18560 Summary: find on infinite ranges is broken Product: D Version: D2 Hardware: x86_64 OS: Linux Status: NEW Severity: enhancement

[Issue 18560] find on infinite ranges is broken

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18560 FeepingCreature changed: What|Removed |Added Severity|enhancement |normal --

[Issue 18560] find on infinite ranges is broken

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18560 --- Comment #1 from FeepingCreature --- The actual problem seems to be that expression.empty actually presumes that expression terminates. So when .all checks for find.empty, it fails to account for the case that find does

[Issue 17448] Move semantics cause memory corruption and cryptic bugs

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17448 --- Comment #25 from Andrei Alexandrescu --- (In reply to Tomer Filiba (weka) from comment #24) > > We should address this situation by having writeln take scope inputs. It > > does > > not escape any pointers. > > So... more

[Issue 18562] expression is not evaluated when accessing manifest constant

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18562 FeepingCreature changed: What|Removed |Added Keywords||wrong-code --

[Issue 18563] New: context pointer inside structs constness problems

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18563 Issue ID: 18563 Summary: context pointer inside structs constness problems Product: D Version: D2 Hardware: x86_64 OS: Linux Status: NEW Severity: enhancement

[Issue 17448] Move semantics cause memory corruption and cryptic bugs

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17448 --- Comment #24 from Tomer Filiba (weka) --- > We should address this situation by having writeln take scope inputs. It does > not escape any pointers. So... more special cases? > I think immovability is a red herring. The problem

[Issue 17448] Move semantics cause memory corruption and cryptic bugs

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17448 --- Comment #23 from Andrei Alexandrescu --- (In reply to Tomer Filiba (weka) from comment #21) > Walter, the @safe-ty aspects of the issue are one thing. In real code, @safe > is hardly workable, i.e. > > void main() { > int

[Issue 18560] find on infinite ranges is broken

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18560 --- Comment #2 from FeepingCreature --- No, this is the actual problem! struct Struct { enum Enum = 5; } bool fooEvaluated; Struct foo() { fooEvaluated = true; return Struct(); } assert(foo().Enum == 5);

[Issue 18562] New: expression is not evaluated when accessing manifest constant

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18562 Issue ID: 18562 Summary: expression is not evaluated when accessing manifest constant Product: D Version: D2 Hardware: x86_64 OS: Linux Status: NEW

[Issue 18560] find on infinite ranges is broken

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18560 ag0ae...@gmail.com changed: What|Removed |Added Keywords||wrong-code CC|

[Issue 18561] postblit should allow writing const/immutable members just like constructors

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18561 Steven Schveighoffer changed: What|Removed |Added Hardware|x86 |All

[Issue 18561] postblit should allow writing const/immutable members just like constructors

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18561 Steven Schveighoffer changed: What|Removed |Added Status|RESOLVED|REOPENED

[Issue 18561] New: postblit behaves inconsistently with constants

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18561 Issue ID: 18561 Summary: postblit behaves inconsistently with constants Product: D Version: D2 Hardware: x86 OS: Windows Status: NEW Severity: enhancement

[Issue 18551] Improve hint for "does not override any function

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18551 --- Comment #2 from github-bugzi...@puremagic.com --- Commits pushed to master at https://github.com/dlang/dmd https://github.com/dlang/dmd/commit/89243bdc93ef220f85e53d18a0c8521fc43afead Fix Issue 18551 - Improve hint for does not override any

[Issue 18561] postblit behaves inconsistently with constants

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18561 ag0ae...@gmail.com changed: What|Removed |Added Status|NEW |RESOLVED CC|

[Issue 18357] can break immutable with postblit

2018-03-06 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18357 ag0ae...@gmail.com changed: What|Removed |Added CC||ajiesk...@gmail.com --- Comment #1 from