Thread overview |
---|
September 21, 2017 [Issue 17845] [ICE] backend\cgcod.c 1677 static foreach | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=17845 Mr. Smith <mrsmith33@yandex.ru> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |ice -- |
September 21, 2017 [Issue 17845] [ICE] backend\cgcod.c 1677 static foreach | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=17845 --- Comment #1 from Mr. Smith <mrsmith33@yandex.ru> --- This crashes with the same error --- void main() { struct Row { @Column!Row((ref Row r, scope SinkT s){ s("test"); }) uint fileSize; } auto formatters = parseRowInfo!Row; } alias SinkT = void delegate(const(char)[]); alias Formatter(Row) = void delegate(ref Row row, scope SinkT sink); struct Column(Row) { Formatter!Row formatter; } Formatter!Row[] parseRowInfo(Row)() { import std.traits; Formatter!Row[] formatters; alias symbols = getSymbolsByUDA!(Row, Column!Row); foreach(i; 0..symbols.length) { formatters ~= getUDAs!(symbols, Column!Row)[0].formatter; } return formatters; } --- -- |
September 21, 2017 [Issue 17845] [ICE] backend\cgcod.c 1677 | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=17845 Mr. Smith <mrsmith33@yandex.ru> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|[ICE] backend\cgcod.c 1677 |[ICE] backend\cgcod.c 1677 |static foreach | -- |
September 21, 2017 [Issue 17845] [ICE] backend\cgcod.c 1677 | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=17845 --- Comment #2 from Mr. Smith <mrsmith33@yandex.ru> --- Looks like the problem is with the use of delegate. When switching to function it works. --- void main() { struct Row { @Column!Row((ref Row r, scope SinkT s){ s("test"); }) uint fileSize; } auto formatters = parseRowInfo!Row; } alias SinkT = void delegate(const(char)[]); // Internal error: ddmd\backend\cgcod.c 1677 when function -> delegate alias Formatter(Row) = void function(ref Row row, scope SinkT sink); struct Column(Row) { Formatter!Row formatter; } Formatter!Row[] parseRowInfo(Row)() { import std.traits; Formatter!Row[] formatters; Row r; foreach(string memberName; __traits(allMembers, Row)) { foreach(attr; __traits(getAttributes, __traits(getMember, r, memberName))) { static if (is(typeof(attr) == Column!Row)) { formatters ~= attr.formatter; } } } return formatters; } --- -- |
September 21, 2017 [Issue 17845] [ICE] backend\cgcod.c 1677 | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=17845 Mr. Smith <mrsmith33@yandex.ru> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |mrsmith33@yandex.ru -- |
May 31, 2019 [Issue 17845] [ICE] backend\cgcod.c 1677 | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=17845 Basile-z <b2.temp@gmx.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |b2.temp@gmx.com Hardware|x86_64 |All Resolution|--- |WORKSFORME OS|Windows |All --- Comment #3 from Basile-z <b2.temp@gmx.com> --- All platform were affected, it was fixed since 2.072.2 : https://run.dlang.io/is/ppM9hz -- |
March 21, 2020 [Issue 17845] [ICE] backend\cgcod.c 1677 | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=17845 Basile-z <b2.temp@gmx.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC|b2.temp@gmx.com | -- |
Copyright © 1999-2021 by the D Language Foundation