[Issue 13305] New: Inconsistency in empty class and interface parsing
https://issues.dlang.org/show_bug.cgi?id=13305 Issue ID: 13305 Summary: Inconsistency in empty class and interface parsing Product: D Version: D2 Hardware: All OS: All Status: NEW Severity: normal Priority: P1 Component: DMD Assignee: nob...@puremagic.com Reporter: briancsch...@gmail.com interface A; class B; interface C {} class D {} interface E : C; // Fails class F : C; // Fails interface G : C {} // Passes class H : C {} // Passes Interfaces and classes are only allowed to have ; as their body if they do not inherit from another interface. Why is this? --
[Issue 13305] Inconsistency in empty class and interface parsing
https://issues.dlang.org/show_bug.cgi?id=13305 briancsch...@gmail.com changed: What|Removed |Added Blocks||10233 --
[Issue 10233] [Tracker] Grammar issues
https://issues.dlang.org/show_bug.cgi?id=10233 briancsch...@gmail.com changed: What|Removed |Added Depends on||13305 --
[Issue 10709] reduce 1-function + no seed, wrong type inference
https://issues.dlang.org/show_bug.cgi?id=10709 --- Comment #3 from monarchdo...@gmail.com --- (In reply to Vladimir Panteleev from comment #2) What's the status of this with regards to https://github.com/D-Programming-Language/phobos/pull/2060 ? It should be fixed. Let me double check. --
[Issue 13304] std.algorithm.reduce: Unable to deduce an acceptable seed type with float[]
https://issues.dlang.org/show_bug.cgi?id=13304 monarchdo...@gmail.com changed: What|Removed |Added CC||monarchdo...@gmail.com --- Comment #1 from monarchdo...@gmail.com --- (In reply to Vladimir Panteleev from comment #0) /// test.d /// import std.algorithm; void main() { float[] nums; float sum = reduce!((a,b) = a + b)(nums); } // Introduced in https://github.com/D-Programming-Language/phobos/pull/2060 Seems its a glitch in the way the assertion code is written. The good news is there is no logical fallacy in the algorithm. I'll give it a quick fix. --
[Issue 13304] std.algorithm.reduce: Unable to deduce an acceptable seed type with float[]
https://issues.dlang.org/show_bug.cgi?id=13304 --- Comment #2 from monarchdo...@gmail.com --- (In reply to monarchdodra from comment #1) I'll give it a quick fix. It turns out there is something that is making the compiler complain in my tests, because it is trying to *actually* evaluate the predicate in test (rather than just check compilability). This triggers it, because it complains it has no access to source code. What's funny is that it works fine with string predicate: float sum = reduce!(binaryFun!a + b)(nums); //OK! float sum = reduce!((a,b) = a + b)(nums);//NOPE! This is weird. I wonder if there isn't another related regression or something. I'm gonna try to reduce. --
[Issue 13304] std.algorithm.reduce: Unable to deduce an acceptable seed type with float[]
https://issues.dlang.org/show_bug.cgi?id=13304 --- Comment #3 from monarchdo...@gmail.com --- OK: Is this a rejects valid? // import std.functional; void main(string[] args) { foo!(binaryFun!a + b)(); foo!((a,b) = a + b)(); } void foo(alias pred)() { alias A = Test1!int.Test2!pred; } template Test1(E) { template Test2(alias pred) { } } // Error: template instance Test2!(__lambda2) cannot use local '__lambda2' as parameter to non-global template Test2(alias pred) Error: template instance main.main.foo!((a, b) = a + b) error instantiating It doesn't quite explain the issue, but it still seems strange to me. my lambda doesn't require context, so it shouldn't considered local, should it? Also, I don't understand the issue about Global template. --
[Issue 13306] New: ctRegex compilation fails if an alternative pattern is specified inside a group
https://issues.dlang.org/show_bug.cgi?id=13306 Issue ID: 13306 Summary: ctRegex compilation fails if an alternative pattern is specified inside a group Product: D Version: D2 Hardware: x86 OS: Windows Status: NEW Severity: normal Priority: P1 Component: Phobos Assignee: nob...@puremagic.com Reporter: maxpa...@yahoo.it This little sample code can't get compiled if the ctRegex! version is used (DMD 2.065): =*=*=*=*=*=*=*=* import std.stdio; import std.regex; void main() { auto s0 = `url:http://download.microsoft.com/download/Windows8.1-KB00.msu`; auto s1 = `url:http://download.microsoft.com/download/Windows8.1-KB00.exe`; //~ C:\Bin\DMD2\windows\bin\..\..\src\phobos\std\regex.d-mixin-5885(6214): Error: found 'else' instead of statement //~ auto rx = ctRegex!(`url:(http://download.microsoft.com/download.+?(msu|exe))`); // This works fine as expected, instead... auto rx = regex(`url:(http://download.microsoft.com/download.+?(msu|exe))`); writeln(match(s0, rx).empty()); writeln(match(s1, rx).empty()); } =*=*=*=*=*=*=*=* --
[Issue 13288] rdmd --eval fails because it still imports std.metastrings
https://issues.dlang.org/show_bug.cgi?id=13288 --- Comment #3 from github-bugzi...@puremagic.com --- Commit pushed to master at https://github.com/D-Programming-Language/tools https://github.com/D-Programming-Language/tools/commit/3378196b27b1f6751d1534fbeeb1e52ff64280ba Merge pull request #139 from NilsBossung/13288 fix Issue 13288 - rdmd --eval fails because it still imports std.metastrings --
[Issue 13288] rdmd --eval fails because it still imports std.metastrings
https://issues.dlang.org/show_bug.cgi?id=13288 --- Comment #4 from github-bugzi...@puremagic.com --- Commit pushed to 2.066 at https://github.com/D-Programming-Language/tools https://github.com/D-Programming-Language/tools/commit/3378196b27b1f6751d1534fbeeb1e52ff64280ba Merge pull request #139 from NilsBossung/13288 --
[Issue 12241] Document change to static opCall in changelog
https://issues.dlang.org/show_bug.cgi?id=12241 --- Comment #3 from github-bugzi...@puremagic.com --- Commit pushed to 2.066 at https://github.com/D-Programming-Language/dlang.org https://github.com/D-Programming-Language/dlang.org/commit/8719bac33031084a02bd801365505de37ab41a09 Merge pull request #619 from ntrel/mix-opcall Fix Issue 12241 - Document change to static opCall --
[Issue 10297] Memory safe D spec is out of date
https://issues.dlang.org/show_bug.cgi?id=10297 --- Comment #5 from github-bugzi...@puremagic.com --- Commit pushed to 2.066 at https://github.com/D-Programming-Language/dlang.org https://github.com/D-Programming-Language/dlang.org/commit/08088b61718f07212bc75b051b0ac497e6b6b8b3 Merge pull request #600 from ntrel/update-safe-spec Fix Issue 10297 - Memory safe D spec is out of date --
[Issue 13012] Open bugs chart is missing from http://dlang.org/bugstats.php
https://issues.dlang.org/show_bug.cgi?id=13012 --- Comment #4 from github-bugzi...@puremagic.com --- Commit pushed to 2.066 at https://github.com/D-Programming-Language/dlang.org https://github.com/D-Programming-Language/dlang.org/commit/eaa6f0d0871871354374e7ecf1cf6697d8900abd Merge pull request #614 from quickfur/issue13012 Fix broken bug graph image on bugstats.php --
[Issue 13304] std.algorithm.reduce: Unable to deduce an acceptable seed type with float[]
https://issues.dlang.org/show_bug.cgi?id=13304 --- Comment #4 from Vladimir Panteleev thecybersha...@gmail.com --- (In reply to monarchdodra from comment #3) Error: template instance Test2!(__lambda2) cannot use local '__lambda2' as parameter to non-global template Test2(alias pred) Error: template instance main.main.foo!((a, b) = a + b) error instantiating Try adding static to Test1 or Test2. Probably related to issue 11946. It doesn't quite explain the issue, but it still seems strange to me. my lambda doesn't require context, so it shouldn't considered local, should it? Also, I don't understand the issue about Global template. Yes, doesn't seem right. File it and maybe Kenji will look at it. --
[Issue 11834] std.net.curl: ddoc warnings
https://issues.dlang.org/show_bug.cgi?id=11834 Walter Bright bugzi...@digitalmars.com changed: What|Removed |Added CC||bugzi...@digitalmars.com Component|DMD |Phobos --
[Issue 11834] std.net.curl: ddoc warnings
https://issues.dlang.org/show_bug.cgi?id=11834 --- Comment #3 from github-bugzi...@puremagic.com --- Commit pushed to master at https://github.com/D-Programming-Language/phobos https://github.com/D-Programming-Language/phobos/commit/ff76141da598d8e85e06c11439c449b9fb6e0aef Merge pull request #2427 from quickfur/issue11834 Issue 11834: std.net.curl abuses ddoc params section and causes ddoc warnings --
[Issue 11832] std.datetime: ddoc warnings
https://issues.dlang.org/show_bug.cgi?id=11832 --- Comment #4 from github-bugzi...@puremagic.com --- Commit pushed to master at https://github.com/D-Programming-Language/phobos https://github.com/D-Programming-Language/phobos/commit/105b2c2d9f31219d8eb8eede0a25d6bc375fa5d0 Merge pull request #2426 from quickfur/issue11832 Issue 11832: Fix mismatching param name. --
[Issue 13307] New: AsmTypePrefix documentation is incorrect
https://issues.dlang.org/show_bug.cgi?id=13307 Issue ID: 13307 Summary: AsmTypePrefix documentation is incorrect Product: D Version: D2 Hardware: All OS: All Status: NEW Severity: normal Priority: P1 Component: websites Assignee: nob...@puremagic.com Reporter: briancsch...@gmail.com AsmTypePrefix: near ptr far ptr byte ptr short ptr int ptr word ptr dword ptr qword ptr float ptr double ptr real ptr std.math contains the following line of code: jge short L_largepositive; This is not valid according to the documentation on http://dlang.org/iasm.html because it states that the identifier ptr is required after short. --
[Issue 10233] [Tracker] Grammar issues
https://issues.dlang.org/show_bug.cgi?id=10233 briancsch...@gmail.com changed: What|Removed |Added Depends on||13307 --
[Issue 13307] AsmTypePrefix documentation is incorrect
https://issues.dlang.org/show_bug.cgi?id=13307 briancsch...@gmail.com changed: What|Removed |Added Blocks||10233 --
[Issue 13307] AsmTypePrefix documentation is incorrect
https://issues.dlang.org/show_bug.cgi?id=13307 Orvid King blah38...@gmail.com changed: What|Removed |Added CC||blah38...@gmail.com --- Comment #1 from Orvid King blah38...@gmail.com --- I believe this was intended to be an alias for near ptr, not short ptr. Although there may be another pointer size possible that I'm not currently thinking of. --
[Issue 13307] AsmTypePrefix documentation is incorrect
https://issues.dlang.org/show_bug.cgi?id=13307 --- Comment #2 from Orvid King blah38...@gmail.com --- A small snippet from the ASM parsing in Mono-D: case near: case far: case byte: case short: case int: case word: case dword: case qword: case float: case double: case real: // TODO: Put this information in the AST Step(); if (laKind == Identifier la.Value == ptr) Step(); else if (t.Value != short) SynErr(Identifier, Expected ptr!); else if (!(Parent is AsmStatement.InstructionStatement) || !((AsmStatement.InstructionStatement)Parent).IsJmpFamily) SynErr(Identifier, A short reference is only valid for the jmp family of instructions!); return ParseAsmExpression(Scope, Parent); --
[Issue 13308] AsmPrimaryExp documentation is incorrect
https://issues.dlang.org/show_bug.cgi?id=13308 briancsch...@gmail.com changed: What|Removed |Added Keywords||iasm, spec URL||http://dlang.org/iasm.html Blocks||10233 --
[Issue 13308] New: AsmPrimaryExp documentation is incorrect
https://issues.dlang.org/show_bug.cgi?id=13308 Issue ID: 13308 Summary: AsmPrimaryExp documentation is incorrect Product: D Version: D2 Hardware: All OS: All Status: NEW Severity: normal Priority: P1 Component: websites Assignee: nob...@puremagic.com Reporter: briancsch...@gmail.com AsmPrimaryExp: IntegerLiteral FloatLiteral __LOCAL_SIZE $ Register Register64 DotIdentifier This grammar says nothing about segment overrides. (i.e. : being a valid token in a primary expression.) According to the spec this line in druntime's thread.d is invalid: asm { naked; mov EAX, FS:4; ret; } --
[Issue 10233] [Tracker] Grammar issues
https://issues.dlang.org/show_bug.cgi?id=10233 briancsch...@gmail.com changed: What|Removed |Added Depends on||13308 --
[Issue 13309] New: DMD accepts yet another invalid alias declaration
https://issues.dlang.org/show_bug.cgi?id=13309 Issue ID: 13309 Summary: DMD accepts yet another invalid alias declaration Product: D Version: D2 Hardware: All OS: All Status: NEW Severity: normal Priority: P1 Component: DMD Assignee: nob...@puremagic.com Reporter: briancsch...@gmail.com alias extern(Windows) HRESULT fnNtQuerySystemInformation( uint SystemInformationClass, void* info, uint infoLength, uint* ReturnLength ) nothrow; This does not match any documented form of alias declaration, yet it is accepted by DMD. Maybe this was supposed to be alias fnNtQuerysystemInformation = extern(windows) HRESULT function( uint SystemInformationClass, void* info, uint infoLength, uint* ReturnLength ) nothrow; --
[Issue 13309] DMD accepts yet another invalid alias declaration
https://issues.dlang.org/show_bug.cgi?id=13309 briancsch...@gmail.com changed: What|Removed |Added Keywords||spec Blocks||10233 --
[Issue 10233] [Tracker] Grammar issues
https://issues.dlang.org/show_bug.cgi?id=10233 briancsch...@gmail.com changed: What|Removed |Added Depends on||13309 --
[Issue 13309] DMD accepts yet another invalid alias declaration
https://issues.dlang.org/show_bug.cgi?id=13309 Orvid King blah38...@gmail.com changed: What|Removed |Added CC||blah38...@gmail.com --- Comment #1 from Orvid King blah38...@gmail.com --- Your suggested alternative wouldn't do the same as that declaration currently does, because it would be typed as a pointer to a function rather than a function type itself, which is what the mangled type of the alias is. --
[Issue 13310] New: Old style multiple alias declaration not documented
https://issues.dlang.org/show_bug.cgi?id=13310 Issue ID: 13310 Summary: Old style multiple alias declaration not documented Product: D Version: D2 Hardware: All OS: All Status: NEW Severity: normal Priority: P1 Component: websites Assignee: nob...@puremagic.com Reporter: briancsch...@gmail.com --- alias CHAR* LPCH, LPSTR, PCH, PSTR; --- AliasDeclaration: alias StorageClassesopt BasicType Declarator alias AliasDeclarationX ; AliasDeclarationX: Identifier TemplateParametersopt = StorageClassesopt Type AliasDeclarationX , Identifier TemplateParametersopt = StorageClassesopt Type Obviously AliasDeclarationX doesn't match because there's no = token, so let's try the first rule. This doesn't match because Declarator doesn't allow commas and multiple identifiers. --
[Issue 13310] Old style multiple alias declaration not documented
https://issues.dlang.org/show_bug.cgi?id=13310 briancsch...@gmail.com changed: What|Removed |Added Keywords||accepts-invalid, spec URL||http://dlang.org/declaratio ||n.html#AliasDeclaration Blocks||10233 --
[Issue 10233] [Tracker] Grammar issues
https://issues.dlang.org/show_bug.cgi?id=10233 briancsch...@gmail.com changed: What|Removed |Added Depends on||13310 --
[Issue 13309] DMD accepts yet another invalid alias declaration
https://issues.dlang.org/show_bug.cgi?id=13309 --- Comment #2 from Orvid King blah38...@gmail.com --- To be more precise, the alias declaration, as output in the JSON is: name : fnNtQuerySystemInformation, deco : WNbkPvkPkZi --
[Issue 13310] Old style multiple alias declaration not documented
https://issues.dlang.org/show_bug.cgi?id=13310 --- Comment #1 from briancsch...@gmail.com --- Looking at the D1 documentation, you can find this: AliasDeclaration: alias Decl Decl: BasicType Declarators ; Declarators: DeclaratorInitializer , DeclaratorIdentifierList DeclaratorInitializer: Declarator DeclaratorIdentifierList: DeclaratorIdentifier DeclaratorIdentifier , DeclaratorIdentifierList DeclaratorIdentifier: Identifier It appears that DMD is accepting code that is valid in D1 but not valid in D2 without issuing any sort of deprecation warning or compiler error. --
[Issue 13277] The base class in the JSON output is always unqualified
https://issues.dlang.org/show_bug.cgi?id=13277 Kenji Hara k.hara...@gmail.com changed: What|Removed |Added Keywords||pull Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #1 from Kenji Hara k.hara...@gmail.com --- Pull request: https://github.com/D-Programming-Language/dmd/pull/3867 Merged commit: https://github.com/D-Programming-Language/dmd/commit/790c3fca911b80a084f9628c981658f29ae28d57 --
[Issue 11834] std.net.curl: ddoc warnings
https://issues.dlang.org/show_bug.cgi?id=11834 hst...@quickfur.ath.cx changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --