[Issue 17710] Undefined behaviour and non-working casting of overloaded methods invoking overloaded delegates
https://issues.dlang.org/show_bug.cgi?id=17710 Ketmar Dark changed: What|Removed |Added CC||ket...@ketmar.no-ip.org --
[Issue 17711] std.array.byPair should be usable with const AA
https://issues.dlang.org/show_bug.cgi?id=17711 hst...@quickfur.ath.cx changed: What|Removed |Added Keywords||pull --- Comment #1 from hst...@quickfur.ath.cx --- https://github.com/dlang/phobos/pull/5668 --
[Issue 17711] New: std.array.byPair should be usable with const AA
https://issues.dlang.org/show_bug.cgi?id=17711 Issue ID: 17711 Summary: std.array.byPair should be usable with const AA Product: D Version: D2 Hardware: x86_64 OS: Linux Status: NEW Severity: normal Priority: P1 Component: phobos Assignee: nob...@puremagic.com Reporter: hst...@quickfur.ath.cx Code: -- import std.array; const(int[string]) aa = [ "abc": 123 ]; auto r = aa.byPair; -- This code ought to compile, but doesn't, because const(int[string]) does not match the function declaration `auto byPair(K,V)(Value[Key] aa)`. However, the implementation actually supports iterating over const AA's just fine. We just need to declare the function differently so that it will match a const AA type: -- auto byPair(AA : V[K], V, K)(AA aa) -- --
[Issue 15759] chunks should work with only an input range
https://issues.dlang.org/show_bug.cgi?id=15759 github-bugzi...@puremagic.com changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --
[Issue 15759] chunks should work with only an input range
https://issues.dlang.org/show_bug.cgi?id=15759 --- Comment #2 from github-bugzi...@puremagic.com --- Commit pushed to master at https://github.com/dlang/phobos https://github.com/dlang/phobos/commit/6826427ba55b9ae9a0f64f4489c359a851e08087 Fix issue 15759: Extend std.range.chunks to work with non-forward input ranges. Add input range example. --
[Issue 9287] DMD should read from stdin when an input file is "-"
https://issues.dlang.org/show_bug.cgi?id=9287 --- Comment #6 from github-bugzi...@puremagic.com --- Commits pushed to master at https://github.com/dlang/dmd https://github.com/dlang/dmd/commit/7d1813309a8c89c8349672ba37a8c15f9d5a42a2 Fix issue 9287 - implement reading source from stdin. https://github.com/dlang/dmd/commit/28daf534a405e9a07d42afb8f978d8746be7b89a Merge pull request #6880 from quickfur/stdin Issue 9287 - Implement -stdin. merged-on-behalf-of: unknown --
[Issue 17686] [REG2.075.0] Covariant return types doesn't work with override in some cases
https://issues.dlang.org/show_bug.cgi?id=17686 --- Comment #5 from github-bugzi...@puremagic.com --- Commits pushed to master at https://github.com/dlang/dmd https://github.com/dlang/dmd/commit/1fb7bd7fd889941c818cba6b1eb277e90e61dc9c Fix issue 17686: [REG2.075.0] Covariant return types doesn't work with override in some cases https://github.com/dlang/dmd/commit/413466c796851fae4fb147bb7b3c9bd5da13355b Merge pull request #7033 from Kozzi11/Issue17686 --
[Issue 17676] [REG 2.075] bad inlining of functions with multiple return statements
https://issues.dlang.org/show_bug.cgi?id=17676 --- Comment #8 from github-bugzi...@puremagic.com --- Commits pushed to master at https://github.com/dlang/dmd https://github.com/dlang/dmd/commit/d48421509341bfb43ac48cd3b971948f4b55f57b fix issue 17676: do not inline function with multiple return values as statements https://github.com/dlang/dmd/commit/95dba7d707437aa68a21f1e048dac6e18bde043a Merge pull request #7029 from rainers/issue_17676 --
[Issue 16230] core.atomic.atomicLoad removes shared from aggregate types too eagerly
https://issues.dlang.org/show_bug.cgi?id=16230 --- Comment #2 from github-bugzi...@puremagic.com --- Commits pushed to master at https://github.com/dlang/phobos https://github.com/dlang/phobos/commit/7e87d0646a3c2177e41253c7b9c3fca09c6fb08f prepare for fix of druntime issue 16230 https://github.com/dlang/phobos/commit/b97aa79fb60bdba7a8ab08cf7341b077a5b5efba Merge pull request #5665 from aG0aep6G/16230 prepare for fix of druntime issue 16230 merged-on-behalf-of: Petar Kirov --
[Issue 982] Codeview: symbols of enum type are declared integer
https://issues.dlang.org/show_bug.cgi?id=982 anonymous4 changed: What|Removed |Added Keywords||symdeb --
[Issue 17710] New: Undefined behaviour and non-working casting of overloaded methods invoking overloaded delegates
https://issues.dlang.org/show_bug.cgi?id=17710 Issue ID: 17710 Summary: Undefined behaviour and non-working casting of overloaded methods invoking overloaded delegates Product: D Version: D2 Hardware: x86 OS: Linux Status: NEW Severity: enhancement Priority: P1 Component: dmd Assignee: nob...@puremagic.com Reporter: kamil.sub...@nexwell.eu Created attachment 1652 --> https://issues.dlang.org/attachment.cgi?id=1652&action=edit Sample code presenting the bug. Sample code to present the case (also in the attachment): // alias BoolFirst = void delegate(bool b, string s); alias StringFirst = void delegate(string s, bool b); class Caller { void call(BoolFirst bs) { bs(true, "text"); } void call(StringFirst sb) { sb("text", true); } } class Writer { import std.stdio; void write(bool b, string s) { writeln("bool+string:", b, "/", s); } void write(string s, bool b) { writeln("string+bool:", s, "/", b); } } void main() { new Caller().call(&new Writer().write); } // The call in main() is ambiguous, but nevertheless the code compiles and the program runs the "string+bool" variant. Swapping write() methods in the source file causes calling "bool+string" variant. Casting call(cast(StringFirst) &w.write) compiles, although is not necessary, because not casting works the same way, but casting call(cast(BoolFirst) &w.write) - which should help in calling bool+string variant - does not compile, and the compiler says that "Caller.call called with argument types (void delegate(bool b, string s)) matches both (...)", which is untrue. Moreover, swapping write() methods again causes the exact opposite behaviour: cast(BoolFirst) compiles, but is useless, and cast(StringFirst) does not compile at all. --