[Issue 17697] Ddoc: get rid of `_` detection in URLs
https://issues.dlang.org/show_bug.cgi?id=17697 Adam D. Ruppe changed: What|Removed |Added CC||destructiona...@gmail.com --- Comment #1 from Adam D. Ruppe --- The correct solution is to get rid of the utterly counterproductive identifier highlighting entirely, then remove the useless _ suppression entirely. --
[Issue 17697] Ddoc: get rid of `_` detection in URLs
https://issues.dlang.org/show_bug.cgi?id=17697 Walter Bright changed: What|Removed |Added Keywords||ddoc --
[Issue 17697] New: Ddoc: get rid of `_` detection in URLs
https://issues.dlang.org/show_bug.cgi?id=17697 Issue ID: 17697 Summary: Ddoc: get rid of `_` detection in URLs Product: D Version: D2 Hardware: All OS: All Status: NEW Severity: enhancement Priority: P1 Component: dmd Assignee: nob...@puremagic.com Reporter: bugzi...@digitalmars.com For example, /* http://website.com/_abc */ module abc; The _ is needed to prevent Ddoc from highlighting the abc. But this makes the URL unusable from a text editor. The solution is to get rid of _ detection inside of URLs. --
[Issue 17696] dlclose() not guaranteed to unload the library
https://issues.dlang.org/show_bug.cgi?id=17696 Iain Buclaw changed: What|Removed |Added CC||ibuc...@gdcproject.org --- Comment #1 from Iain Buclaw --- GCC internals note, there's flag_gnu_unique. But actually it seems pretty silly turning it off explicitly. --
[Issue 17696] New: dlclose() not guaranteed to unload the library
https://issues.dlang.org/show_bug.cgi?id=17696 Issue ID: 17696 Summary: dlclose() not guaranteed to unload the library Product: D Version: D2 Hardware: All OS: Linux Status: NEW Severity: blocker Priority: P1 Component: druntime Assignee: nob...@puremagic.com Reporter: ibuc...@gdcproject.org There's a broken test in druntime. Discovered after making a change in gdc to put ClassInfo symbols in the comdat (yeah I know, but I am yet to receive any duplicate symbol bug reports). https://github.com/dlang/druntime/blob/master/test/shared/src/load.d#L136-L139 Old gdc behaviour: --- $ readelf -Ws lib.o | grep MyFinal 113: 078a38 FUNCGLOBAL DEFAULT 16 _D3lib11MyFinalizer6__dtorMFZv 117: 16 OBJECT GLOBAL DEFAULT 28 _D3lib11MyFinalizer6__initZ 118: 001040 OBJECT GLOBAL DEFAULT 28 _D3lib11MyFinalizer6__vtblZ 119: 152 OBJECT GLOBAL DEFAULT 30 _D3lib11MyFinalizer7__ClassZ 125: 0040 4112 OBJECT GLOBAL DEFAULT 28 _D3lib14MyFinalizerBig6__initZ 126: 105040 OBJECT GLOBAL DEFAULT 28 _D3lib14MyFinalizerBig6__vtblZ 127: 00a0 152 OBJECT GLOBAL DEFAULT 30 _D3lib14MyFinalizerBig7__ClassZ --- New gdc behaviour: --- $ readelf -Ws lib.o | grep MyFinal 124: 078a38 FUNCGLOBAL DEFAULT 22 _D3lib11MyFinalizer6__dtorMFZv 128: 16 OBJECT WEAK DEFAULT 34 _D3lib11MyFinalizer6__initZ 129: 40 OBJECT WEAK DEFAULT 38 _D3lib11MyFinalizer6__vtblZ 130: 152 OBJECT UNIQUE DEFAULT 36 _D3lib11MyFinalizer7__ClassZ 136: 4112 OBJECT WEAK DEFAULT 40 _D3lib14MyFinalizerBig6__initZ 137: 40 OBJECT WEAK DEFAULT 44 _D3lib14MyFinalizerBig6__vtblZ 138: 152 OBJECT UNIQUE DEFAULT 42 _D3lib14MyFinalizerBig7__ClassZ --- Current dmd behaviour: --- $ readelf -Ws lib.o | grep MyFinal 105: 34 FUNCGLOBAL DEFAULT 70 _D3lib11MyFinalizer6__dtorMFZv 106: 16 OBJECT WEAK DEFAULT 72 _D3lib11MyFinalizer6__initZ 107: 168 OBJECT WEAK DEFAULT 73 _D3lib11MyFinalizer7__ClassZ 108: 40 OBJECT WEAK DEFAULT 75 _D3lib11MyFinalizer6__vtblZ 109: 4112 OBJECT WEAK DEFAULT 78 _D3lib14MyFinalizerBig6__initZ 110: 176 OBJECT WEAK DEFAULT 79 _D3lib14MyFinalizerBig7__ClassZ 111: 40 OBJECT WEAK DEFAULT 81 _D3lib14MyFinalizerBig6__vtblZ --- Notice that dmd marks the __Class symbol as a weak @object, but gdc marks it as a weak @gnu_unique_object. This subtle difference means that when calling dlopen() on lib.so, it is marked as DF_1_NODELETE - meaning "not unloadable", and will never be unloaded no matter how many times you call dlclose(). Looking at the documentation: http://pubs.opengroup.org/onlinepubs/007904975/functions/dlclose.html === Although a dlclose() operation is not required to remove structures from an address space, neither is an implementation prohibited from doing so. === The druntime test should probably be fixed up, as it may not necessary always be true. In the meantime, I'll have a look at possibly a fix on my side, something that errs towards --no-gnu-unique, however if its not an agnostic fix, then there's no point in trying to do that. https://cygwin.com/ml/binutils/2011-10/msg00276.html --
[Issue 17695] [Reg 2.076] ICE with vector negation
https://issues.dlang.org/show_bug.cgi?id=17695 --- Comment #2 from github-bugzi...@puremagic.com --- Commits pushed to master at https://github.com/dlang/dmd https://github.com/dlang/dmd/commit/7ceb34a633518c75e61f858fde1fa3eb4d7c6300 fix Issue 17695 - [Reg 2.076] ICE with vector negation https://github.com/dlang/dmd/commit/6dc8c01c246c3633077ed2e7bc9d17fb0a79d896 Merge pull request #7035 from WalterBright/fix17695 fix Issue 17695 - [Reg 2.076] ICE with vector negation merged-on-behalf-of: Martin Nowak --
[Issue 17695] [Reg 2.076] ICE with vector negation
https://issues.dlang.org/show_bug.cgi?id=17695 Walter Bright changed: What|Removed |Added CC||bugzi...@digitalmars.com --- Comment #1 from Walter Bright --- https://github.com/dlang/dmd/pull/7035 --
[Issue 17680] Broken ddmd source links in documentation
https://issues.dlang.org/show_bug.cgi?id=17680 --- Comment #3 from github-bugzi...@puremagic.com --- Commits pushed to master at https://github.com/dlang/dlang.org https://github.com/dlang/dlang.org/commit/fc7a8aeadeaf3782ffd60e802d705bf7ac0f3e0d Issue 17680 - fix DMDSRC https://github.com/dlang/dlang.org/commit/f2ecd76842a28bfa15acf72460a77f93010bcfdd Merge pull request #1843 from wilzbach/fix-17680 Issue 17680 - fix DMDSRC merged-on-behalf-of: MetaLang --
[Issue 17695] New: [Reg 2.076] ICE with vector negation
https://issues.dlang.org/show_bug.cgi?id=17695 Issue ID: 17695 Summary: [Reg 2.076] ICE with vector negation Product: D Version: D2 Hardware: x86_64 OS: Linux Status: NEW Severity: regression Priority: P3 Component: dmd Assignee: nob...@puremagic.com Reporter: c...@dawg.eu cat > bug.d << CODE void bug(__vector(ubyte[16]) a) { auto b = -a; } CODE dmd -c -O bug.d el:0x19531a0 cnt=0 const TYunsigned char[16] 0LL+0LL Internal error: ddmd/backend/el.c 3034 Happens with DMD64 D Compiler v2.075.0-master-234b414 Introduced by https://github.com/dlang/dmd/pull/7019. --
[Issue 17694] traits compiles fails for property of property
https://issues.dlang.org/show_bug.cgi?id=17694 Steven Schveighoffer changed: What|Removed |Added Status|NEW |RESOLVED CC||schvei...@yahoo.com Resolution|--- |INVALID --- Comment #1 from Steven Schveighoffer --- Actually, the issue is that the thing you are checking isn't valid syntax. For example: TBounds.Margins.Left; Error: need 'this' for 'Margins' of type '@property TBounds()' What you need is either the typeof, or to use an instance instead of the type itself: mixin(`static assert(__traits(compiles, TButton.init.Margins.Left));`); mixin(`static assert(__traits(compiles, typeof(TButton.Margins.Left)));`); --
[Issue 17694] New: traits compiles fails for property of property
https://issues.dlang.org/show_bug.cgi?id=17694 Issue ID: 17694 Summary: traits compiles fails for property of property Product: D Version: D2 Hardware: All OS: All Status: NEW Severity: normal Priority: P1 Component: dmd Assignee: nob...@puremagic.com Reporter: an...@s-e-a-p.de While the first assertion works, the second assertion fails. I expect it should work, as the statement "typeof(TButton.Margins.Left) l;" works fine class TButton { @property TBounds Margins() { return null; } } class TBounds { @property float Left() { return 0.0; } } void main() { mixin(`static assert(__traits(compiles, TButton.Margins));`); // OK mixin(`static assert(__traits(compiles, TButton.Margins.Left));`); // FAILS } --
[Issue 16416] Phobos std.uni out of date (should be updated to latest Unicode standard)
https://issues.dlang.org/show_bug.cgi?id=16416 Dmitry Olshansky changed: What|Removed |Added CC||dmitry.o...@gmail.com Assignee|nob...@puremagic.com|dmitry.o...@gmail.com --
[Issue 17681] [Function setTimes] additional function touch(f)
https://issues.dlang.org/show_bug.cgi?id=17681 Steven Schveighoffer changed: What|Removed |Added CC||schvei...@yahoo.com --- Comment #2 from Steven Schveighoffer --- I think a function setTimes(filename) or setTimesCurrent(filename) would be a useful addition. The setTimes function is cross platform and so is handy to use in platform agnostic code. It would be nice to have support for this in there somehow. --
[Issue 17692] Filtering a struct instance's .tupleof loses contained this reference
https://issues.dlang.org/show_bug.cgi?id=17692 Vladimir Panteleev changed: What|Removed |Added Hardware|x86_64 |All OS|Linux |All --
[Issue 17690] [REG2.066.0] scope guards leak declarations
https://issues.dlang.org/show_bug.cgi?id=17690 Vladimir Panteleev changed: What|Removed |Added Keywords||accepts-invalid --
[Issue 17690] [REG2.066.0] scope guards leak declarations
https://issues.dlang.org/show_bug.cgi?id=17690 Vladimir Panteleev changed: What|Removed |Added Summary|scope guards leak |[REG2.066.0] scope guards |declarations|leak declarations Severity|normal |regression --- Comment #1 from Vladimir Panteleev --- The front-end accepts it without error. This seems to be a regression. Introduced in https://github.com/dlang/dmd/pull/3564 --
[Issue 17689] finally clause leaks declarations
https://issues.dlang.org/show_bug.cgi?id=17689 Vladimir Panteleev changed: What|Removed |Added Keywords||accepts-invalid --
[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 Vladimir Panteleev changed: What|Removed |Added Summary|[REG2.075] Covariant return |[REG2.075.0] Covariant |types doesn't work with |return types doesn't work |override in some cases |with override in some cases --
[Issue 17277] Member and aggregate alignment semantics
https://issues.dlang.org/show_bug.cgi?id=17277 ki...@gmx.net changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --
[Issue 17686] [REG2.075] Covariant return types doesn't work with override in some cases
https://issues.dlang.org/show_bug.cgi?id=17686 --- Comment #3 from Vladimir Panteleev --- Please include the entire test case in the bug report itself. Here it is: interface INode { @property INode parentNode(); @property IDocument ownerDocument(); } interface IDocument: INode {} interface IEntityReference: INode {} class DOMImplementation(T) { abstract class Node: INode { override { @property Node parentNode() { return null; } @property Document ownerDocument() { return null; } } @property bool readonly() { return true; } } abstract class NodeWithChildren: Node {} class Document: NodeWithChildren, IDocument {} class EntityReference: NodeWithChildren, IEntityReference { override { @property bool readonly() { return true; } } } } void main() { alias aaa = DOMImplementation!string; } --
[Issue 17685] DMD 2.060 regression: align is not respected for structs
https://issues.dlang.org/show_bug.cgi?id=17685 Vladimir Panteleev changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |DUPLICATE --- Comment #3 from Vladimir Panteleev --- Yep, fixed by https://github.com/dlang/dmd/pull/6754. *** This issue has been marked as a duplicate of issue 17277 *** --
[Issue 17277] Member and aggregate alignment semantics
https://issues.dlang.org/show_bug.cgi?id=17277 Vladimir Panteleev changed: What|Removed |Added CC||clugd...@yahoo.com.au --- Comment #2 from Vladimir Panteleev --- *** Issue 17685 has been marked as a duplicate of this issue. *** --
[Issue 17684] [REG 2.062] `static alias this` bug or incomplete implementation?
https://issues.dlang.org/show_bug.cgi?id=17684 Vladimir Panteleev changed: What|Removed |Added Summary|`static alias this` bug or |[REG 2.062] `static alias |incomplete implementation? |this` bug or incomplete ||implementation? Severity|normal |regression --- Comment #1 from Vladimir Panteleev --- This worked in 2.061, and it looks like it was broken by accident. Marking as a regression. Introduced in https://github.com/dlang/dmd/pull/1434 --
[Issue 17683] __traits compiles does not work with package.d
https://issues.dlang.org/show_bug.cgi?id=17683 Vladimir Panteleev changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |DUPLICATE --- Comment #1 from Vladimir Panteleev --- Nothing to do with __traits(compiles). fullyQualifiedName!Bar expands to "sub.m2.Bar". That fully qualified names don't work with package modules is issue 11847. *** This issue has been marked as a duplicate of issue 11847 *** --
[Issue 11847] Importing "package.d" module causes qualified name lookup to fail for sub modules
https://issues.dlang.org/show_bug.cgi?id=11847 Vladimir Panteleev changed: What|Removed |Added CC||an...@s-e-a-p.de --- Comment #11 from Vladimir Panteleev --- *** Issue 17683 has been marked as a duplicate of this issue. *** --
[Issue 17681] [Function setTimes] additional function touch(f)
https://issues.dlang.org/show_bug.cgi?id=17681 --- Comment #1 from Vladimir Panteleev --- The way to do this on Linux is to call utime(fileName, null). (In reply to Martin Tschierschke from comment #0) > The work around in the moment is to use execute("touch ~"filename"). > Not the right for a system programming language :-( I think this is simpler: utimes(fileName.toStringz, *cast(timeval[2]*)null); Not sure whether this is something that comes up frequently enough to be in Phobos, especially considering it seems rather platform-specific. The name "touch" carries with it the possible implication that non-existing files will be created (as done by the program), which might not be desirable for a Phobos function. --
[Issue 17686] [REG2.075] Covariant return types doesn't work with override in some cases
https://issues.dlang.org/show_bug.cgi?id=17686 --- Comment #2 from Daniel Kozak --- introduced in this commit: https://github.com/dlang/dmd/commit/fb315d03f0744b8406d31b9c106d3a42c0c178b3 --
[Issue 17458] [std.regex] Assertion failure in package.d
https://issues.dlang.org/show_bug.cgi?id=17458 --- Comment #4 from github-bugzi...@puremagic.com --- Commits pushed to master at https://github.com/dlang/phobos https://github.com/dlang/phobos/commit/7a51c0e24eea6c02336d2aa897c608974ea2ac57 Fix issue 17458 add messages to asserts https://github.com/dlang/phobos/commit/008a8a3ef3fab4e1f51f2bf65d3f6b42dc152f78 Merge pull request #5660 from DmitryOlshansky/issue-17458 [std.regex] Fix issue 17458 - add messages to asserts merged-on-behalf-of: Stefan Koch --
[Issue 17680] Broken ddmd source links in documentation
https://issues.dlang.org/show_bug.cgi?id=17680 --- Comment #2 from Vladimir Panteleev --- https://github.com/dlang/dmd/pull/7030 Pretty please file separate issues for separate issues next time! --
[Issue 17680] Broken ddmd source links in documentation
https://issues.dlang.org/show_bug.cgi?id=17680 Vladimir Panteleev changed: What|Removed |Added Hardware|x86_64 |All OS|Linux |All --
[Issue 17680] Broken ddmd source links in documentation
https://issues.dlang.org/show_bug.cgi?id=17680 Vladimir Panteleev changed: What|Removed |Added Keywords||pull --- Comment #1 from Vladimir Panteleev --- https://github.com/dlang/dlang.org/pull/1845 --
[Issue 17677] [REG 2.073.0] ICE when adding ulong to cfloat
https://issues.dlang.org/show_bug.cgi?id=17677 Vladimir Panteleev changed: What|Removed |Added Keywords||ice Summary|[Reg 2.073] ICE when adding |[REG 2.073.0] ICE when |ulong to cfloat |adding ulong to cfloat OS|Windows |All --- Comment #1 from Vladimir Panteleev --- Introduced in https://github.com/dlang/dmd/pull/6238 --
[Issue 17693] std.json cannot parse dub.json package files
https://issues.dlang.org/show_bug.cgi?id=17693 Vladimir Panteleev changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |WONTFIX --- Comment #1 from Vladimir Panteleev --- Fairly sure the JSON spec forbids trailing commas, so accepting them would actually be violating the spec. Although we could add an option to allow parsing trailing commas, it would make much more sense to fix Dub instead. Please file this at https://github.com/dlang/dub/issues ? If you would like std.json to have an option to allow trailing commas, please file a new issue, but I think it would need to have a much stronger justification than just Dub allowing them. As a workaround, I suggest that you use the same JSON parsing library in your project that Dub uses. That should guarantee compatibility. --
[Issue 17673] regex(["\\\\\\\\|\\\\\"", "\"|$"]) - wrong whichPattern
https://issues.dlang.org/show_bug.cgi?id=17673 --- Comment #2 from Dmitry Olshansky --- (In reply to Dmitry Olshansky from comment #1) > https://github.com/dlang/phobos/pull/5660 Sorry wrong window. --
[Issue 17458] [std.regex] Assertion failure in package.d
https://issues.dlang.org/show_bug.cgi?id=17458 --- Comment #3 from Dmitry Olshansky --- https://github.com/dlang/phobos/pull/5660 --
[Issue 17673] regex(["\\\\\\\\|\\\\\"", "\"|$"]) - wrong whichPattern
https://issues.dlang.org/show_bug.cgi?id=17673 --- Comment #1 from Dmitry Olshansky --- https://github.com/dlang/phobos/pull/5660 --
[Issue 17693] New: std.json cannot parse dub.json package files
https://issues.dlang.org/show_bug.cgi?id=17693 Issue ID: 17693 Summary: std.json cannot parse dub.json package files Product: D Version: D2 Hardware: All OS: All Status: NEW Severity: trivial Priority: P1 Component: phobos Assignee: nob...@puremagic.com Reporter: an...@s-e-a-p.de It's only a minor issue but I want to bring this to your attention. std.json cannot parse several dub.json files as the json implementation of dub allows trailing commas. std.json will fail to parse these package definitions. I noticed this (annoying) issue while writing an own dub registry server. --
[Issue 17458] [std.regex] Assertion failure in package.d
https://issues.dlang.org/show_bug.cgi?id=17458 --- Comment #2 from Vladimir Panteleev --- The error message needs to be improved, then. "Assertion failure" is devoid of any information. See also: https://github.com/dlang/phobos/pull/5578 --
[Issue 17458] [std.regex] Assertion failure in package.d
https://issues.dlang.org/show_bug.cgi?id=17458 --- Comment #1 from Dmitry Olshansky --- Not a bug - there is no match, before calling matches.hit one must check it for !matches.empty. --
[Issue 17066] [REG2.073a] std.regex captures got immutable
https://issues.dlang.org/show_bug.cgi?id=17066 Dmitry Olshansky changed: What|Removed |Added Status|REOPENED|RESOLVED Resolution|--- |FIXED --- Comment #6 from Dmitry Olshansky --- Regex was reverted --
[Issue 17673] regex(["\\\\\\\\|\\\\\"", "\"|$"]) - wrong whichPattern
https://issues.dlang.org/show_bug.cgi?id=17673 Dmitry Olshansky changed: What|Removed |Added Assignee|nob...@puremagic.com|dmitry.o...@gmail.com --
[Issue 17668] regex(q"<[^]>")
https://issues.dlang.org/show_bug.cgi?id=17668 --- Comment #1 from Dmitry Olshansky --- https://github.com/dlang/phobos/pull/5657 --