[Issue 14020] [ICE] generateEmptyFunction(C, func...) is unsupported parameter for C++ template, from typecons.BlackHole
https://issues.dlang.org/show_bug.cgi?id=14020 Iain Buclaw changed: What|Removed |Added CC||ibuc...@gdcproject.org --- Comment #1 from Iain Buclaw --- Error is now: Internal Compiler Error: C++ generateEmptyFunction(C, func...) template alias parameter is not supported The compiler exits gracefully, but the diagnostic means it should have been caught earlier. --
[Issue 13667] ICE with inout and alias this
https://issues.dlang.org/show_bug.cgi?id=13667 Iain Buclaw changed: What|Removed |Added CC||ibuc...@gdcproject.org --- Comment #1 from Iain Buclaw --- More specifically, stack overflow. --
[Issue 6523] Vector slice assign of a struct with opAssign
https://issues.dlang.org/show_bug.cgi?id=6523 Iain Buclaw changed: What|Removed |Added Status|RESOLVED|REOPENED Resolution|DUPLICATE |--- --- Comment #2 from Iain Buclaw --- Oops, wrong bug. --
[Issue 9327] alias this declaration and unknown identifiers lead to segmentation fault
https://issues.dlang.org/show_bug.cgi?id=9327 Iain Buclaw changed: What|Removed |Added Status|NEW |RESOLVED CC||ibuc...@gdcproject.org Resolution|--- |DUPLICATE --- Comment #2 from Iain Buclaw --- Fixed by https://github.com/dlang/dmd/pull/6969 *** This issue has been marked as a duplicate of issue 17380 *** --
[Issue 17380] Compiler segfaults on undefined symbol
https://issues.dlang.org/show_bug.cgi?id=17380 Iain Buclaw changed: What|Removed |Added CC||tvwhit...@gmail.com --- Comment #7 from Iain Buclaw --- *** Issue 9327 has been marked as a duplicate of this issue. *** --
[Issue 6523] Vector slice assign of a struct with opAssign
https://issues.dlang.org/show_bug.cgi?id=6523 Iain Buclaw changed: What|Removed |Added Status|NEW |RESOLVED CC||ibuc...@gdcproject.org Resolution|--- |DUPLICATE --- Comment #1 from Iain Buclaw --- Fixed by https://github.com/dlang/dmd/pull/6969 *** This issue has been marked as a duplicate of issue 17380 *** --
[Issue 17380] Compiler segfaults on undefined symbol
https://issues.dlang.org/show_bug.cgi?id=17380 Iain Buclaw changed: What|Removed |Added CC||bearophile_h...@eml.cc --- Comment #6 from Iain Buclaw --- *** Issue 6523 has been marked as a duplicate of this issue. *** --
[Issue 6401] infinite loop with -inline in gflow.c:accumaecpx
https://issues.dlang.org/show_bug.cgi?id=6401 --- Comment #6 from Iain Buclaw --- Somewhat reduced test: --- enum LIBRARY { GTK } struct Linker { static void link(T)(ref T funct, string symbol, LIBRARY[] libraries ...) { } } static this() { static foreach(i; 0 .. 10_000) Linker.link(somefunc, "somefunc", LIBRARY.GTK); } void function() c_somefunc; alias c_somefunc somefunc; --- To prove that this isn't too much of a contrived test, I checked the compile times of other compilers. dmd -O -release -inline | 3 minutes 12 seconds. gdc -O2 -frelease | 6 seconds. ldc -O2 -release| 8 seconds. Actually, the dmd compiler segfaults, I assume because I managed to hit a stack overflow. --
[Issue 13919] typeof(T.init[].front.init) crashes compiler for T = std.container.Array!int
https://issues.dlang.org/show_bug.cgi?id=13919 Nathan S. changed: What|Removed |Added Status|NEW |RESOLVED CC||n8sh.second...@hotmail.com Resolution|--- |WORKSFORME --- Comment #2 from Nathan S. --- Verified working with DMD v2.082.0. --
[Issue 13687] Virtual call in the interface's precondition is dispatched to the wrong vtbl entry
https://issues.dlang.org/show_bug.cgi?id=13687 Nathan S. changed: What|Removed |Added Status|NEW |RESOLVED CC||n8sh.second...@hotmail.com Resolution|--- |WORKSFORME --- Comment #1 from Nathan S. --- Tested with DMD 2.082.0. Program output was "42" as desired. --
[Issue 13549] Local functions don't take outer function attributes
https://issues.dlang.org/show_bug.cgi?id=13549 Nathan S. changed: What|Removed |Added Status|NEW |RESOLVED CC||n8sh.second...@hotmail.com Resolution|--- |WORKSFORME --- Comment #2 from Nathan S. --- Tested with DMD 2.082.0. Example code compiles without error. --
[Issue 13466] Refused Tuple.Types syntax in some cases
https://issues.dlang.org/show_bug.cgi?id=13466 Nathan S. changed: What|Removed |Added Status|NEW |RESOLVED CC||n8sh.second...@hotmail.com Resolution|--- |WORKSFORME --- Comment #1 from Nathan S. --- Tested with DMD 2.082.0. Example code compiles without error. --
[Issue 13453] Allow appending string literal to any width string
https://issues.dlang.org/show_bug.cgi?id=13453 Nathan S. changed: What|Removed |Added Status|NEW |RESOLVED CC||n8sh.second...@hotmail.com Resolution|--- |WORKSFORME --- Comment #1 from Nathan S. --- Tested with DMD 2.082.0. The feature works as desired. --
[Issue 13051] Cannot use function literal inside struct initializer
https://issues.dlang.org/show_bug.cgi?id=13051 Jonathan Marler changed: What|Removed |Added Resolution|WORKSFORME |FIXED --- Comment #3 from Jonathan Marler --- Thanks for checking Nathan. I just tried this as well, works on dmd 2.082, but not 2.079, so something must have come in between those 2 version to fix this. --
[Issue 13318] Error: cannot have e.tuple
https://issues.dlang.org/show_bug.cgi?id=13318 Nathan S. changed: What|Removed |Added Status|NEW |RESOLVED CC||n8sh.second...@hotmail.com Resolution|--- |WORKSFORME --- Comment #1 from Nathan S. --- Working as of DMD v2.082.0. --
[Issue 6401] infinite loop with -inline in gflow.c:accumaecpx
https://issues.dlang.org/show_bug.cgi?id=6401 --- Comment #5 from Iain Buclaw --- I can't reproduce an infinite loop, but... $ time ../../generated/linux/release/64/dmd -v -release -O -inline -m64 -Isrc -c src/gtkc/gtk.d real1m38.327s user1m37.710s sys 0m0.512s Getting close to two minutes compilation time. --
[Issue 6401] infinite loop with -inline in gflow.c:accumaecpx
https://issues.dlang.org/show_bug.cgi?id=6401 Iain Buclaw changed: What|Removed |Added CC||ibuc...@gdcproject.org --- Comment #4 from Iain Buclaw --- Some notes for Walter. The bottleneck is the `static this()` in gtk.d starting line 36. This function itself is over 3800 lines long. Notable problematic functions. 1. dmd/backend/gflow.d: initDNunambigVectors() This function is a massive bottleneck, as you're effectively doing: --- // In initDNunambigVectors() foreach (uint i; 0 .. go.deftop) { // In fillInDNunambig() foreach (uint i; 0 .. go.deftop) { // ... } } --- In the unreduced test, go.deftop = 25144. You are also calling this function twice in dmd/backend/go.d:optfunc. The main entrypoint being constprop(). 2. dmd/backend/gother.d: accumda() Suffers from a similar problem. It is recursively called 25144 times in the OTbinary path. 3. dmd/backend/gflow.d: accumaecpx(): Likewise, it is recursively called - 56572 times in the first iteration (before accumda). - 28286 times in a second iteration (after accumda). 4. dmd/backend/gdag.d: aewalk(): Likewise, it is recursively called 50287 times. --
[Issue 13106] Auto ref error when using argument tuple in non-template function
https://issues.dlang.org/show_bug.cgi?id=13106 Nathan S. changed: What|Removed |Added Status|NEW |RESOLVED CC||n8sh.second...@hotmail.com Resolution|--- |INVALID --- Comment #1 from Nathan S. --- This isn't related to tuples. This won't compile because only function templates may have `auto ref` parameters. https://dlang.org/spec/template.html#auto-ref-parameters --
[Issue 13051] Cannot use function literal inside struct initializer
https://issues.dlang.org/show_bug.cgi?id=13051 Nathan S. changed: What|Removed |Added Status|NEW |RESOLVED CC||n8sh.second...@hotmail.com Resolution|--- |WORKSFORME --- Comment #2 from Nathan S. --- Tested the code in the bug report. It compiles fine. --
[Issue 8859] Solaris port of the toolchain
https://issues.dlang.org/show_bug.cgi?id=8859 Issue 8859 depends on issue 13048, which changed state. Issue 13048 Summary: Solaris no longer needs -mt during linking https://issues.dlang.org/show_bug.cgi?id=13048 What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --
[Issue 13048] Solaris no longer needs -mt during linking
https://issues.dlang.org/show_bug.cgi?id=13048 Nathan S. changed: What|Removed |Added Status|NEW |RESOLVED CC||n8sh.second...@hotmail.com Resolution|--- |FIXED --- Comment #2 from Nathan S. --- Fixed by PR #3718 but not auto-closed. --
[Issue 18089] AArch64: Need Quadruple float support in CTFE hashOf / core.internal.convert.parse
https://issues.dlang.org/show_bug.cgi?id=18089 Nathan S. changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --
[Issue 18089] AArch64: Need Quadruple float support in CTFE hashOf / core.internal.convert.parse
https://issues.dlang.org/show_bug.cgi?id=18089 Nathan S. changed: What|Removed |Added CC||n8sh.second...@hotmail.com --- Comment #4 from Nathan S. --- Fixed by https://github.com/dlang/druntime/pull/2257 --
[Issue 19298] C preprocessor directive is not supported - confusing warning message
https://issues.dlang.org/show_bug.cgi?id=19298 Vladimir Panteleev changed: What|Removed |Added Keywords||diagnostic --
[Issue 19298] New: C preprocessor directive is not supported - confusing warning message
https://issues.dlang.org/show_bug.cgi?id=19298 Issue ID: 19298 Summary: C preprocessor directive is not supported - confusing warning message Product: D Version: D2 Hardware: All OS: All Status: NEW Severity: normal Priority: P1 Component: dmd Assignee: nob...@puremagic.com Reporter: freeslav...@gmail.com Having a file /** * --- # Comment * --- */ void main() { } Trying to get documentation as dmd -o- -w -Dddocs main.d Leads to the warning (1): Warning: C preprocessor directive #Comment is not supported I understand that it's supposed to be a valid D code inside DDoc comment, but dmd should at least report the file name where error happened. Also the meaning of the number in parentheses is not obvious. I found a similar issue https://issues.dlang.org/show_bug.cgi?id=18836 marked as solved but dmd needs improvements on reporting this error: report the file name and position of so-called directive in the code, so users could find the cause of warning. --
[Issue 6777] alias this disables casting for classes
https://issues.dlang.org/show_bug.cgi?id=6777 --- Comment #13 from Steven Schveighoffer --- (In reply to Walter Bright from comment #12) > The problem comes from the idea that having an alias this means that > operations not supported by the class get forwarded to the alias this. Since > opCast() can override what explicit casts do for a class reference, the > alias this needs to be respected (even if it doesn't provide an opCast(), it > still can be cast). But the only mechanism to use dynamic casting is to cast to the requested type. This is expected functionality in the class instance, and in my opinion, default functionality should override any alias this functionality. Same thing with cast(void *). This is expected functionality. I don't know of any other mechanism that overrides existing functionality from an alias this'd type, especially when that functionality is not intentionally specified. For example, I would be really surprised if you had: struct S { int x; } struct T { int y; S s; alias s this; } auto t = T(5, S(2)); and this failed because it's trying to call the S implicit constructor instead of the T implicit constructor. --
[Issue 19297] JSONValue of signed and unsigned equal values is not equal
https://issues.dlang.org/show_bug.cgi?id=19297 FeepingCreature changed: What|Removed |Added Severity|enhancement |normal --
[Issue 19297] New: JSONValue of signed and unsigned equal values is not equal
https://issues.dlang.org/show_bug.cgi?id=19297 Issue ID: 19297 Summary: JSONValue of signed and unsigned equal values is not equal Product: D Version: D2 Hardware: x86_64 OS: Linux Status: NEW Severity: enhancement Priority: P1 Component: phobos Assignee: nob...@puremagic.com Reporter: default_357-l...@yahoo.de Repro: assert(JSONValue([].length) == JSONValue(0)); JSONValue treats them as two different types because one is signed and one is unsigned. Which is of course nonsense and against spec. JSON doesn't even have unsigned types; strictly speaking you're supposed to just use doubles for ints, like JS does. But if there have to be integers in JSONValue, they should work with doubles, and they *certainly* should work with *themselves*. --
[Issue 18015] [Reg 2.075] link failure unknown [0] section `' in group [.group]
https://issues.dlang.org/show_bug.cgi?id=18015 --- Comment #7 from Ludovit Lucenic --- Hello guys, if this is of any help, I found out, that commenting out > align(8) from before the definition of > struct Json in vibe.d's vibe.data.json module fixes the linkage. Anyway, value of align(1,2,4) will just work; values from 8 through 128 break the linkage. --- Correction to above comments (dash instead of dot): `> dub fetch vibe-d --version=0.7.32` --
[Issue 19296] ICE on Unknown member type in struct returned from function
https://issues.dlang.org/show_bug.cgi?id=19296 Simen Kjaeraas changed: What|Removed |Added Keywords||ice CC||simen.kja...@gmail.com Summary|CTFE internal error:|ICE on Unknown member type |ErrorExp|in struct returned from ||function --- Comment #1 from Simen Kjaeraas --- Reduced: S[] arr = [s()]; S s() { return S.init; } struct S { UnknownType fail; } --
[Issue 19296] New: CTFE internal error: ErrorExp
https://issues.dlang.org/show_bug.cgi?id=19296 Issue ID: 19296 Summary: CTFE internal error: ErrorExp Product: D Version: D2 Hardware: x86_64 OS: Windows Status: NEW Severity: major Priority: P1 Component: dmd Assignee: nob...@puremagic.com Reporter: mrsmit...@yandex.ru Non-reduced code https://gist.github.com/MrSmith33/d8b2ecdbab7b16aa1f1238959e8b78a0 Error: CTFE internal error: ErrorExp in `D:\bug_dmd.d(2932)` --- ERROR: This is a compiler bug. Please report it via https://issues.dlang.org/enter_bug.cgi with, preferably, a reduced, reproducible example and the information below. DustMite (https://github.com/CyberShadow/DustMite/wiki) can help with the reduction. --- DMD v2.082.0 predefs DigitalMars Windows LittleEndian D_Version2 all D_SIMD D_InlineAsm_X86_64 X86_64 Win64 CRuntime_Microsoft D_LP64 unittest assert D_ModuleInfo D_Exceptions D_TypeInfo D_HardFloat binaryC:\Soft\dmd2\windows\bin\dmd.exe version v2.082.0 configC:\Soft\dmd2\windows\bin\sc.ini DFLAGS-IC:\Soft\dmd2\windows\bin\..\..\src\phobos -IC:\Soft\dmd2\windows\bin\..\..\src\druntime\import -L/OPT:NOICF --- object.Error@(0): Illegal Instruction 0x004483DC 0x004B2662 0x00406B8E 0x00593561 0x004488B1 0x005786E2 0x004E227C 0x00682FC7 0x0045CC1F 0x77E82309 in RtlRandom 0x00582D31 0x77E77614 in RtlAllocateHeap --