[Issue 16049] core.sys.windows structs have wrong sizes and aligns
https://issues.dlang.org/show_bug.cgi?id=16049 --- Comment #2 from j...@red.email.ne.jp --- (In reply to jiki from comment #1) > done > https://github.com/dlang/druntime/pull/1576 Note that I deferred to commit a module MMSYSTEM because it gets many conflicts with/without my previous commit #1574 for issue 15959. --
[Issue 16050] New: Template type parameter "action at at a distance"
https://issues.dlang.org/show_bug.cgi?id=16050 Issue ID: 16050 Summary: Template type parameter "action at at a distance" Product: D Version: D2 Hardware: All OS: Linux Status: NEW Severity: normal Priority: P1 Component: dmd Assignee: nob...@puremagic.com Reporter: thomas.bock...@gmail.com "vit" on the D.lang forum found this bug: http://forum.dlang.org/post/fiaqxpgaxttgifnky...@forum.dlang.org Starting with the following declarations: --- class Type { } class Foo(T : const T) { alias X = T; } alias Bar(T : Foo!Ts, Ts...) = Ts[0]; --- This will print "immutable(Type): --- alias F1 = Foo!(immutable(Type)); alias F2 = Foo!Type; pragma(msg, "Bar: ", Bar!(Foo!Type)); // Bar: immutable(Type) --- But this will print just "Type": --- alias F1 = Foo!Type; alias F2 = Foo!(immutable(Type)); pragma(msg, "Bar: ", Bar!(Foo!Type)); // Bar: Type --- The type of Bar!(Foo!Type) should not be effected by the existence or order of F1 and F2 above. --
[Issue 14084] cartesianProduct length is not defined
https://issues.dlang.org/show_bug.cgi?id=14084 --- Comment #1 from hst...@quickfur.ath.cx --- One issue with defining .length in cartesianProduct is that the length grows exponentially with the number of arguments, and it's unclear what .length should return if it overflows size_t. --
[Issue 15939] GC.collect causes deadlock in multi-threaded environment
https://issues.dlang.org/show_bug.cgi?id=15939 Artem Tarasovchanged: What|Removed |Added CC||lomerei...@gmail.com --- Comment #15 from Artem Tarasov --- I'm apparently bumping into the same problem. Here's the last stack trace that I've received from a user, very similar to the one posted here: https://gist.github.com/rtnh/e2eab6afa7c0a37dbc96578d0f73c540 The prominent kernel bug mentioned here has been ruled out already. Another hint I've got is that reportedly 'error doesn't happen on XenServer hypervisors, only on KVM' (full discussion is taking place at https://github.com/lomereiter/sambamba/issues/189) --
[Issue 14519] Get rid of unicode validation in string processing
https://issues.dlang.org/show_bug.cgi?id=14519 --- Comment #38 from Martin Nowak--- (In reply to Vladimir Panteleev from comment #36) > Question, is there any overhead in actually verifying the validity of UTF-8 > streams, or is all overhead related to error handling (i.e. inability to be > nothrow)? I think it's fairly measurable b/c you need to add lots of additional checks and branches (though highly predictable ones). While my initial decode implementation https://github.com/MartinNowak/phobos/blob/1b0edb728c/std/utf.d#L577-L651 was transmogrify into 200 lines in the meantime https://github.com/dlang/phobos/blob/acafd848d8/std/utf.d#L1167-L1369, you can still use it to benchmark validation. I did run a lot of benchmarks when introducing that function, and the code path for decoding just remains slow, even with the throwing code path removed out of normal control flow. --
[Issue 15831] IFTI voldemort type exploding bloat
https://issues.dlang.org/show_bug.cgi?id=15831 Rainer Schuetzechanged: What|Removed |Added CC||r.sagita...@gmx.de --- Comment #4 from Rainer Schuetze --- I tried to untangle the name of the 1.s.s.s.s.s case. Replacing testexpansion with E, I get E.s!(E.s!(E.s!(E.s!(E.s!(int).s(int).Result) .s (E.s!(int).s(int).Result) .Result) .s (E.s!(E.s!(int).s(int).Result) .s (E.s!(int).s(int).Result) .Result) .Result) .s (E.s!(E.s!(E.s!(int).s(int).Result) .s (E.s!(int).s(int).Result) .Result) .s (E.s!(E.s!(int).s(int).Result) .s (E.s!(int).s(int).Result) .Result) .Result) .Result) .s (E.s!(E.s!(E.s!(E.s!(int).s(int).Result) .s (E.s!(int).s(int).Result) .Result) .s (E.s!(E.s!(int).s(int).Result) .s (E.s!(int).s(int).Result) .Result) .Result) .s (E.s!(E.s!(E.s!(int).s(int).Result) .s (E.s!(int).s(int).Result) .Result) .s (E.s!(E.s!(int).s(int).Result) .s (E.s!(int).s(int).Result) .Result) .Result) .Result) .Result.foo() Each step has a mangling of "E.s!(T).s(T).Result" with T being the template argument. The length explosion comes from the type being listed twice. This is not caused by the Voldemort return type, but the eponymous template that is created by the function template. --
[Issue 16049] core.sys.windows structs have wrong sizes and aligns
https://issues.dlang.org/show_bug.cgi?id=16049 j...@red.email.ne.jp changed: What|Removed |Added Keywords||pull --- Comment #1 from j...@red.email.ne.jp --- done https://github.com/dlang/druntime/pull/1576 --
[Issue 15607] [ICE] CTFE internal error: bad compare on accessing default-initialized static immutable array of array
https://issues.dlang.org/show_bug.cgi?id=15607 --- Comment #8 from Walter Bright--- https://github.com/dlang/dmd/pull/5796 --