[Issue 19728] AliasSeq in UDA errors
https://issues.dlang.org/show_bug.cgi?id=19728 Dlang Bot changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #4 from Dlang Bot --- dlang/dmd pull request #11160 "Fix Issues 19728, 20093 - AliasSeq in UDA errors" was merged into stable: - 3ae76de5a11379fcd137106ffaf5caaa3325f698 by Boris Carvajal: Fix Issues 19728, 20093 - AliasSeq in UDA errors https://github.com/dlang/dmd/pull/11160 --
[Issue 20093] Error: cannot form tuple of tuples
https://issues.dlang.org/show_bug.cgi?id=20093 Dlang Bot changed: What|Removed |Added Resolution|DUPLICATE |FIXED --- Comment #3 from Dlang Bot --- dlang/dmd pull request #11160 "Fix Issues 19728, 20093 - AliasSeq in UDA errors" was merged into stable: - 3ae76de5a11379fcd137106ffaf5caaa3325f698 by Boris Carvajal: Fix Issues 19728, 20093 - AliasSeq in UDA errors https://github.com/dlang/dmd/pull/11160 --
[Issue 20852] core.sys.posix.sys.wait missing definitions on FreeBSD
https://issues.dlang.org/show_bug.cgi?id=20852 Dlang Bot changed: What|Removed |Added Status|REOPENED|RESOLVED Resolution|--- |FIXED --- Comment #5 from Dlang Bot --- dlang/druntime pull request #3115 "Fix issue 20852: core.sys.posix.sys.wait missing definitions on FreeBSD" was merged into master: - 4b70715194b6cbed8d77dda59df5faf5dfbda49f by Sergei Akhmatdinov: Fix issue 20852: core.sys.posix.sys.wait missing definitions on FreeBSD Upon further testing with the Vibe.d suite, it appears that the entire idtype_t struct from sys/wait.h is required for some parts of eventcore to compile. This commit adds all of the missing id types. After adding the missing id types, Vibe.d tests pass as intended. https://github.com/dlang/druntime/pull/3115 --
[Issue 20862] Segfault on repeated GC.qalloc calls
https://issues.dlang.org/show_bug.cgi?id=20862 kinke changed: What|Removed |Added CC||ki...@gmx.net --- Comment #3 from kinke --- (In reply to moonlightsentinel from comment #0) > The following code causes a segfault in the GC (tested on 2.092.0): > > === > void main() > { > import core.memory; > > string[] arr; > > foreach (_; 0 .. 3) // first two iterations pass > { > immutable len = arr.length; > > auto bi = GC.qalloc(string.sizeof); > arr = (cast(string*) bi.base)[0 .. len]; > > arr = arr.ptr[0 .. len + 1]; > arr[] = []; > } > } Isn't that code clearly writing out of bounds? It's allocating a single slice for each iteration, but writing 1, 2, 3 empty slices into it, and probably overwrites GC-internal data. --
[Issue 20862] Segfault on repeated GC.qalloc calls
https://issues.dlang.org/show_bug.cgi?id=20862 moonlightsenti...@disroot.org changed: What|Removed |Added Hardware|All |x86_64 --- Comment #2 from moonlightsenti...@disroot.org --- Passes with -m32 but fails for -m64 --
[Issue 20862] Segfault on repeated GC.qalloc calls
https://issues.dlang.org/show_bug.cgi?id=20862 --- Comment #1 from moonlightsenti...@disroot.org --- Full stack trace: Program received signal SIGSEGV, Segmentation fault. _D2gc4impl12conservativeQw3Gcx10smallAllocMFNbmKmkxC8TypeInfoZPv (this=..., ti=0x7ffeda68, bits=0, alloc_size=@0x7ffedae8: 16, size=16) at src/gc/impl/conservative/gc.d:1686 1686auto biti = (p - pool.baseAddr) >> pool.shiftBy; (gdb) bt #0 _D2gc4impl12conservativeQw3Gcx10smallAllocMFNbmKmkxC8TypeInfoZPv (this=..., ti=0x7ffeda68, bits=0, alloc_size=@0x7ffedae8: 16, size=16) at src/gc/impl/conservative/gc.d:1686 #1 0x0807ff73 in _D2gc4impl12conservativeQw14ConservativeGC__T9runLockedS_DQCeQCeQCcQCnQBs12mallocNoSyncMFNbmkKmxC8TypeInfoZPvS_DQEgQEgQEeQEp10mallocTimelS_DQFiQFiQFgQFr10numMallocslTmTkTmTxQCzZQFcMFNbKmKkKmKxQDsZQDl (this=0x84ac0a0, _param_3=@0x7ffedb08: 0x0, _param_2=@0x7ffedae8: 16, _param_1=@0x7ffedb10: 0, _param_0=@0x7ffedb18: 16) at src/gc/impl/conservative/gc.d:1627 #2 0x08072bcf in _D2gc4impl12conservativeQw14ConservativeGC6qallocMFNbmkxC8TypeInfoZS4core6memory8BlkInfo_ ( this=0x84ac0a0, __HID14=0x7ffedbf0, ti=0x0, bits=0, size=16) at src/gc/impl/conservative/gc.d:417 #3 0x0803f283 in gc_qalloc (__HID19=0x7ffedbf0, sz=16, ba=0, ti=0x0) at src/gc/proxy.d:36 #4 0x0803ed77 in _D4core6memory2GC6qallocFNaNbmkxC8TypeInfoZSQBqQBo8BlkInfo_ (__HID3=0x7ffedbf0, ti=0x0, ba=0, sz=16) at src/core/memory.d:523 #5 0x0803eb55 in D main () at d_do_test.d:11 --
[Issue 20862] New: Segfault on repeated GC.qalloc calls
https://issues.dlang.org/show_bug.cgi?id=20862 Issue ID: 20862 Summary: Segfault on repeated GC.qalloc calls Product: D Version: D2 Hardware: All OS: All Status: NEW Severity: major Priority: P1 Component: druntime Assignee: nob...@puremagic.com Reporter: moonlightsenti...@disroot.org The following code causes a segfault in the GC (tested on 2.092.0): === void main() { import core.memory; string[] arr; foreach (_; 0 .. 3) // first two iterations pass { immutable len = arr.length; auto bi = GC.qalloc(string.sizeof); arr = (cast(string*) bi.base)[0 .. len]; arr = arr.ptr[0 .. len + 1]; arr[] = []; } } === gdb: Program received signal SIGSEGV, Segmentation fault. 0x08067be6 in _D2gc4impl12conservativeQw3Gcx10smallAllocMFNbmKmkxC8TypeInfoZPv () --
[Issue 20756] ImplicitConversionTargets ignores interface inheritance
https://issues.dlang.org/show_bug.cgi?id=20756 --- Comment #3 from FeepingCreature --- I would argue that then the documentation is another bug. A template called "ImplicitConversionTargets" can be reasonably expected to return implicit conversion targets. --
[Issue 12520] Comparing two TypeTuples with == does not compile for no arguments
https://issues.dlang.org/show_bug.cgi?id=12520 Dlang Bot changed: What|Removed |Added Keywords||pull --- Comment #1 from Dlang Bot --- @NilsLankila created dlang/dmd pull request #11187 "fix issue 12520 - allow comparison of empty tuples to tuples that con…" fixing this issue: - fix issue 12520 - allow comparison of empty tuples to tuples that contain values Empty tuples are represented as `TypeTuple` while tuples containing values as `TupleExp`. As a consequence, comparing them using `==` was not allowed. https://github.com/dlang/dmd/pull/11187 --
[Issue 13372] traits parent does not work on eponymous templates
https://issues.dlang.org/show_bug.cgi?id=13372 Adam D. Ruppe changed: What|Removed |Added CC||destructiona...@gmail.com --- Comment #5 from Adam D. Ruppe --- Here's something related I just came upon: template wrap(string foo) { enum wrap = foo; } pragma(msg, __traits(parent, wrap!"lol")); // says lol pragma(msg, __traits(parent, __traits(parent, wrap!"lol"))); // says argument "lol" has no parent So in the first one, it appears it evaluates to the outer template which is then instantly evaluated back to the enum literal. Then the second one sees the literal and says literals have no parents. Quite bizarre indeed. --
[Issue 20762] __traits(isSame) is underspecified for enums and literals
https://issues.dlang.org/show_bug.cgi?id=20762 --- Comment #2 from Adam D. Ruppe --- But, on the other hand: @(1) enum e = 1; pragma(msg, __traits(getAttributes, e)); is currently legal meaning e indeed has a distinct identity from 1. So perhaps the spec does need clarification rather than the implementation. --
[Issue 20762] __traits(isSame) is underspecified for enums and literals
https://issues.dlang.org/show_bug.cgi?id=20762 Adam D. Ruppe changed: What|Removed |Added CC||destructiona...@gmail.com --- Comment #1 from Adam D. Ruppe --- I'm of the opinion that the current behavior of `static assert(__traits(isSame, x, 1));` is buggy because of that line in the spec. It also affects eponymous templates which are otherwise indistinguishable from the literal (which is a good thing - major optimization opportunity in the compiler by taking advantage of this). But either way, it needs to be very clearly defined. --
[Issue 20852] core.sys.posix.sys.wait missing definitions on FreeBSD
https://issues.dlang.org/show_bug.cgi?id=20852 --- Comment #4 from Dlang Bot --- @sakhmatd created dlang/druntime pull request #3115 "Fix issue 20852: core.sys.posix.sys.wait missing definitions on FreeBSD" fixing this issue: - Fix issue 20852: core.sys.posix.sys.wait missing definitions on FreeBSD Upon further testing with the Vibe.d suite, it appears that the entire idtype_t struct from sys/wait.h is required for some parts of eventcore to compile. This commit adds all of the missing id types. After adding the missing id types, Vibe.d tests pass as intended. https://github.com/dlang/druntime/pull/3115 --
[Issue 20852] core.sys.posix.sys.wait missing definitions on FreeBSD
https://issues.dlang.org/show_bug.cgi?id=20852 Sergei Akhmatdinov changed: What|Removed |Added Status|RESOLVED|REOPENED Resolution|FIXED |--- --- Comment #3 from Sergei Akhmatdinov --- Upon further testing with the Vibe.d suite, it appears that the entire idtype_t struct from sys/wait.h is required for some parts of eventcore to compile. After adding the missing id types, Vibe.d tests pass as intended. --
[Issue 20756] ImplicitConversionTargets ignores interface inheritance
https://issues.dlang.org/show_bug.cgi?id=20756 Nathan S. changed: What|Removed |Added CC||n8sh.second...@hotmail.com Hardware|x86_64 |All OS|Linux |All Severity|minor |enhancement --- Comment #2 from Nathan S. --- Changed from 'bug' to 'enhancement' since the behavior of ImplicitConversionTargets is correct for its documentation: ``` If the type is not a built-in value type or a class derived from `Object`, the an empty $(REF AliasSeq,std,meta) is returned. ``` --
[Issue 12471] Struct of arrays in Phobos
https://issues.dlang.org/show_bug.cgi?id=12471 Basile-z changed: What|Removed |Added Component|dmd |phobos --
[Issue 12285] Allow local symbols in alias parameter to non-static templates when both have same scope
https://issues.dlang.org/show_bug.cgi?id=12285 Basile-z changed: What|Removed |Added Status|NEW |RESOLVED CC||b2.t...@gmx.com Resolution|--- |WORKSFORME --- Comment #2 from Basile-z --- works since 2.087.1. --
[Issue 12230] methods do not bind templates via alias parameter
https://issues.dlang.org/show_bug.cgi?id=12230 Issue 12230 depends on issue 12285, which changed state. Issue 12285 Summary: Allow local symbols in alias parameter to non-static templates when both have same scope https://issues.dlang.org/show_bug.cgi?id=12285 What|Removed |Added Status|NEW |RESOLVED Resolution|--- |WORKSFORME --
[Issue 10587] __traits(getAttributes) doesn't work on incomplete templated types
https://issues.dlang.org/show_bug.cgi?id=10587 Basile-z changed: What|Removed |Added Status|NEW |RESOLVED CC||b2.t...@gmx.com Resolution|--- |WORKSFORME --- Comment #1 from Basile-z --- working as expected since v2.065.0 --
[Issue 20861] New: Interface implementations are not checked when code gen is skipped
https://issues.dlang.org/show_bug.cgi?id=20861 Issue ID: 20861 Summary: Interface implementations are not checked when code gen is skipped Product: D Version: D2 Hardware: All OS: All Status: NEW Severity: critical Priority: P1 Component: dmd Assignee: nob...@puremagic.com Reporter: d...@me.com The following code should fail to compile but doesn't when code gen is skipped, i.e. the `-o-` flag is used: interface Foo { void foo(); } class Bar : Foo { } The reason being that the check if a class implements all methods of an interface is performed when generating code for the vtable. --
[Issue 20860] OpDispatch does not work for structs with constructor and destructor
https://issues.dlang.org/show_bug.cgi?id=20860 --- Comment #2 from Szabo Bogdan --- Oh... I see ... Since this is an really old regression, I don't think it will be fixed until the next release. --
[Issue 11717] CTFE: non-constant value with array and vector ops.
https://issues.dlang.org/show_bug.cgi?id=11717 Basile-z changed: What|Removed |Added CC||b2.t...@gmx.com Summary|CTFE: [ICE] non-constant|CTFE: non-constant value |value with array and vector |with array and vector ops. |ops.| --
[Issue 14071] ICE: backend/gloop.c 862
https://issues.dlang.org/show_bug.cgi?id=14071 Basile-z changed: What|Removed |Added Keywords||ice Status|NEW |RESOLVED CC||b2.t...@gmx.com Resolution|--- |WORKSFORME --- Comment #3 from Basile-z --- the only problem described by OP was an ICE and it's gone (verifeid again today) so it can be closed. --
[Issue 20860] OpDispatch does not work for structs with constructor and destructor
https://issues.dlang.org/show_bug.cgi?id=20860 Basile-z changed: What|Removed |Added Hardware|x86_64 |All OS|Linux |All Severity|enhancement |regression --- Comment #1 from Basile-z --- that's an old regression (2.065). Curiously that works when you remove the parens of the call ( A(3).test; ) --
[Issue 20860] New: OpDispatch does not work for structs with constructor and destructor
https://issues.dlang.org/show_bug.cgi?id=20860 Issue ID: 20860 Summary: OpDispatch does not work for structs with constructor and destructor Product: D Version: D2 Hardware: x86_64 OS: Linux Status: NEW Severity: enhancement Priority: P1 Component: dmd Assignee: nob...@puremagic.com Reporter: cont...@szabobogdan.com It looks like opDispatch does not work in this case: ``` struct A { this(int a) {} /// void opDispatch(string methodName, Params...)(Params params) { } ~this() {} } void main() { A(3).test(); } ``` --
[Issue 19486] http://code.dlang.org/login does not redirect to https
https://issues.dlang.org/show_bug.cgi?id=19486 Basile-z changed: What|Removed |Added Status|NEW |RESOLVED CC||b2.t...@gmx.com Resolution|--- |WORKSFORME --
[Issue 7908] Array operations fail when compiled with -d flag
https://issues.dlang.org/show_bug.cgi?id=7908 Basile-z changed: What|Removed |Added Status|NEW |RESOLVED CC||b2.t...@gmx.com Resolution|--- |WORKSFORME --- Comment #3 from Basile-z --- fixed since v2.063 according to run.dlang.io --
[Issue 10303] Constraining interfaces with some std.traits methods causes crash
https://issues.dlang.org/show_bug.cgi?id=10303 Basile-z changed: What|Removed |Added Keywords||ice Status|NEW |RESOLVED CC||b2.t...@gmx.com Hardware|x86 |All Resolution|--- |WORKSFORME OS|Linux |All --- Comment #1 from Basile-z --- according to run.dalng.io this is fixed since v2.067.1. --
[Issue 14128] AliasDeclaration allows expressions, causing false code for ThisExp
https://issues.dlang.org/show_bug.cgi?id=14128 Basile-z changed: What|Removed |Added Keywords||wrong-code --
[Issue 14128] AliasDeclaration allows expressions, causing false code for ThisExp
https://issues.dlang.org/show_bug.cgi?id=14128 Basile-z changed: What|Removed |Added Summary|wrong alias |AliasDeclaration allows ||expressions, causing false ||code for ThisExp --
[Issue 19786] alias to __traits(getMember) wrongfully always binds to this
https://issues.dlang.org/show_bug.cgi?id=19786 Basile-z changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |DUPLICATE --- Comment #7 from Basile-z --- you were right in https://issues.dlang.org/show_bug.cgi?id=19786#c3 RazvanN. *** This issue has been marked as a duplicate of issue 14128 *** --
[Issue 14128] wrong alias
https://issues.dlang.org/show_bug.cgi?id=14128 Basile-z changed: What|Removed |Added CC||edi33...@gmail.com --- Comment #2 from Basile-z --- *** Issue 19786 has been marked as a duplicate of this issue. *** --
[Issue 14128] wrong alias
https://issues.dlang.org/show_bug.cgi?id=14128 Basile-z changed: What|Removed |Added See Also||https://issues.dlang.org/sh ||ow_bug.cgi?id=19786 --
[Issue 14128] wrong alias
https://issues.dlang.org/show_bug.cgi?id=14128 Basile-z changed: What|Removed |Added Keywords||accepts-invalid CC||b2.t...@gmx.com Hardware|x86_64 |All OS|Linux |All --
[Issue 19786] alias to __traits(getMember) wrongfully always binds to this
https://issues.dlang.org/show_bug.cgi?id=19786 Basile-z changed: What|Removed |Added CC||b2.t...@gmx.com See Also||https://issues.dlang.org/sh ||ow_bug.cgi?id=14128 --
[Issue 14128] wrong alias
https://issues.dlang.org/show_bug.cgi?id=14128 --- Comment #1 from Basile-z --- reduced a bit: --- struct Foo { int v; void test(Foo that) const { alias a = this.v; alias b = that.v; assert (&a !is &b); } } void main () { Foo a = Foo(1); Foo b = Foo(2); a.test(b); } --- The problem is that `that.v` is an expression and this should not be allowed as alias RHS. The compiler think that the current `this` is also the one required for `that`. --
[Issue 3031] scoped static var conflicts
https://issues.dlang.org/show_bug.cgi?id=3031 Basile-z changed: What|Removed |Added See Also||https://issues.dlang.org/sh ||ow_bug.cgi?id=13617 --
[Issue 13617] alias with scopes
https://issues.dlang.org/show_bug.cgi?id=13617 Basile-z changed: What|Removed |Added See Also||https://issues.dlang.org/sh ||ow_bug.cgi?id=3031 --
[Issue 13617] alias with scopes
https://issues.dlang.org/show_bug.cgi?id=13617 Basile-z changed: What|Removed |Added CC||b2.t...@gmx.com --
[Issue 20817] valigrind shows that parseJSON() generates errors relating to uninitialised values
https://issues.dlang.org/show_bug.cgi?id=20817 Basile-z changed: What|Removed |Added CC||b2.t...@gmx.com Component|dmd |phobos Hardware|x86 |All Summary|parseJSON() generates |valigrind shows that |errors relating to |parseJSON() generates |uninitialised values|errors relating to ||uninitialised values OS|Linux |All --- Comment #3 from Basile-z --- The report is valid. I also see the same report (+ a 112 bytes leak) on x86_64. But this is either a druntime bug (GC) or phobos (std.json) --