[Issue 9580] std.variant.Algebraic with Tuple format problem

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=9580



--- Comment #2 from bearophile_h...@eml.cc 2013-12-27 03:41:21 PST ---
Now the original code compiles with no errors. But if I try to to instantiate a
Foo that contains an array of Foos:


import std.variant: Algebraic, This;
import std.typecons: Tuple;
alias Foo = Algebraic!(int, Tuple!(This[]));
void main() {
auto f = Foo(0);
auto f = Foo([Foo(0)]);
}


I see (dmd 2.065alpha):

...\dmd2\src\phobos\std\variant.d(548): Error: static assert  Cannot store a
VariantN!(8u, int, Tuple!(This[]))[] in a VariantN!(8u, int, Tuple!(This[]))
temp.d(6):instantiated from here: __ctor!(VariantN!(8u, int,
Tuple!(This[]))[])

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 9580] std.variant.Algebraic with Tuple format problem

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=9580



--- Comment #3 from bearophile_h...@eml.cc 2013-12-27 04:15:08 PST ---
Sorry, the code in comment2 is wrong. This should be better:


import std.variant: Algebraic, This;
import std.typecons: Tuple, tuple;
alias Foo = Algebraic!(int, Tuple!(This[]));
void main() {
auto f = Foo(tuple([Foo(0)]));
}


The error messages:

...\dmd2\src\phobos\std\variant.d(548): Error: static assert  Cannot store a
Tuple!(VariantN!(8u, int, Tuple!(This[]))[]) in a VariantN!(8u, int,
Tuple!(This[]))
temp.d(5):instantiated from here: __ctor!(Tuple!(VariantN!(8u, int,
Tuple!(This[]))[]))

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11829] New: Documentation of implicit template argument conversion out of date.

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11829

   Summary: Documentation of implicit template argument conversion
out of date.
   Product: D
   Version: D2
  Platform: All
OS/Version: All
Status: NEW
  Severity: normal
  Priority: P2
 Component: websites
AssignedTo: nob...@puremagic.com
ReportedBy: timon.g...@gmx.ch


--- Comment #0 from timon.g...@gmx.ch 2013-12-27 04:40:28 PST ---
http://dlang.org/template.html

Even if template arguments are implicitly converted to the same template
parameter type, they still refer to different instances:

struct TFoo(int x) { }
static assert(is(TFoo!(3) == TFoo!(2 + 1))); // 3 and 2+1 are both 3 of type
int
static assert(!is(TFoo!(3) == TFoo!(3u)));   // 3u and 3 are different types

I think this has been fixed in a recent release.

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 3449] const and invariant struct members do not behave according to spec

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=3449


Kenji Hara k.hara...@gmail.com changed:

   What|Removed |Added

   Keywords|patch   |pull


--- Comment #28 from Kenji Hara k.hara...@gmail.com 2013-12-27 05:20:49 PST 
---
Pull request to change current warning to deprecation message.

https://github.com/D-Programming-Language/dmd/pull/3038

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11801] create_dmd_release: fails to build 32-bit DMD on 64bit FreeBSD system

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11801


Jacob Carlborg d...@me.com changed:

   What|Removed |Added

 CC||d...@me.com
   Severity|regression  |normal


--- Comment #2 from Jacob Carlborg d...@me.com 2013-12-27 07:39:48 PST ---
(In reply to comment #1)
 how is this a regression?  It's never worked as far as I know.  FreeBSD 
 doesn't
 support a mixed mode installation.

create_dmd_release is a new tool, has never been part of a release, so it
clearly cannot be a regression.

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11799] Incompatible argument types in create_dmd_release

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11799


Jacob Carlborg d...@me.com changed:

   What|Removed |Added

 CC||d...@me.com
   Severity|regression  |normal


--- Comment #1 from Jacob Carlborg d...@me.com 2013-12-27 07:41:51 PST ---
If you change the signature to const(char)*, does that work? This is not a
regression create_dmd_release is a new tool.

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 3449] const and invariant struct members do not behave according to spec

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=3449



--- Comment #29 from github-bugzi...@puremagic.com 2013-12-27 09:06:56 PST ---
Commits pushed to master at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/031c1e3676a70d6be4b1614befcaaa728c3ad80c
Issue 3449 transition - Change the warning to deprecation message

https://github.com/D-Programming-Language/dmd/commit/65c6248a0920f3d4bfac616046834072c0dd9c82
Merge pull request #3038 from 9rnsr/fix3449

Issue 3449 transition - Change the warning to deprecation message

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11830] New: std.stdio.byLine reports extra line if you don't call .front

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11830

   Summary: std.stdio.byLine reports extra line if you don't call
.front
   Product: D
   Version: D2
  Platform: All
OS/Version: All
Status: NEW
  Severity: normal
  Priority: P2
 Component: Phobos
AssignedTo: nob...@puremagic.com
ReportedBy: peter.alexander...@gmail.com


--- Comment #0 from Peter Alexander peter.alexander...@gmail.com 2013-12-27 
10:19:03 PST ---
If you don't call 'front' while iterating a ByLine range, you get a different
number of elements.

import std.stdio;
import std.range;
import std.algorithm;
void main()
{
File(stuff, w).write(line 1\nline 2\n);
writeln(File(stuff).byLine.walkLength);
writeln(File(stuff).byLine.filter!true.walkLength);
}

This prints:

3
2

This should print 2 in both cases.

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 10318] Built-in array sort usage warning, then deprecation, and finally removal

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=10318



--- Comment #7 from Xinok xi...@live.com 2013-12-27 10:49:26 PST ---
(In reply to comment #6)
 (In reply to comment #5)
 
  This issue has been fixed and pushed to the 2.065 branch.
 
 Good.
 You are probably well qualified to answer yebblies question: Is currently the
 phobos sort good enough to replace the built-in sort? So is it OK to finally
 warn against the usage of the built-in sort?

AFAIK, these two issues remain:

(1) You cannot call Phobos sort from pure functions. I'm not familiar with the
subject of purity, but AFAIK, you can't simply mark the function(s) as pure
because this would make it impossible to use an impure predicate for sorting.
I'm not sure what the solution is as I don't think it's possible to simply
infer purity.

(2) This may be a non-issue but Phobos cannot sort char[] arrays whereas the
built-in sort can. The issue comes down to the template constraints; char[]
isn't classified as a random-access range and neither is wchar[]. However,
dchar[] is classified as such and can be sorted by Phobos sort.

At this point, I'm in favor of warning against its usage. The Phobos sort is
free of bugs (I've found no cases where it sorts incorrectly), runs in O(n
log n) time, and is highly optimized (3-4x faster than the built-in sort).
However, I think the purity issue needs to be addressed before we move forward
with deprecation.

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 5442] std.algorithm.sort problem with struct with char[10]

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=5442


Xinok xi...@live.com changed:

   What|Removed |Added

 CC||xi...@live.com


--- Comment #3 from Xinok xi...@live.com 2013-12-27 11:07:29 PST ---
(In reply to comment #0)
 This D2 program tries to sort in-place a dynamic array of Foo according to 
 just
 the first int x field (the third sort works on the whole structs), but when T
 is a char the program doesn't compile:
 
 
 import std.algorithm: sort, schwartzSort;
 alias char T; // doesn't work
 //alias int T; // works
 struct Foo {
 int x;
 T[10] a;
 }
 void main() {
 auto array = new Foo[10];
 sort!(a.x  b.x)(array);
 static bool myComp(Foo f1, Foo f2) { return f1.x  f2.x; }
 sort!(myComp)(array);
 sort(array);
 }
 

Tested in DMD 2.064.2 and I'm unable to reproduce the bug. The final line fails
to compile because Foo doesn't define opCmp, but everything else is fine. The
default predicate for sort is a  b and comparing two structs using less-than
requires defining opCmp.

Unless somebody else can reproduce this issue, I think we can close this bug
report.

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 5611] back() and front() with ref return + opSlice() in sort() constraint

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=5611


Xinok xi...@live.com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||xi...@live.com
 Resolution||FIXED


--- Comment #1 from Xinok xi...@live.com 2013-12-27 11:18:17 PST ---
Since this bug report was filed, the sorting algorithms were updated and the
template restraints were updated to reflect these changes.

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11820] std.algorithm.remove does not function with `alias this`

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11820



--- Comment #1 from Matt Soucy mso...@csh.rit.edu 2013-12-27 11:30:49 PST ---
It seems that this affects more than just std.algorithm.remove - reverse also
causes compile errors, possibly others.

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11831] New: std.zip no longer allows setting madeVersion field in zip file

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11831

   Summary: std.zip no longer allows setting madeVersion field in
zip file
   Product: D
   Version: D2
  Platform: All
OS/Version: All
Status: NEW
  Severity: regression
  Priority: P2
 Component: Phobos
AssignedTo: nob...@puremagic.com
ReportedBy: bugzi...@digitalmars.com


--- Comment #0 from Walter Bright bugzi...@digitalmars.com 2013-12-27 
11:54:21 PST ---
std.zip needs to allow access to all fields in zip file's data structures. The
data structures written to disk should not have inaccessible private fields.

This regression blocks compilation of the chmodzip tool, which needs to be able
to set madeVersion because Linux unzippers look for specific version numbers
there.

https://github.com/D-Programming-Language/tools/pull/61

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 10928] Fails to create closures that reference structs with dtor

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=10928


Martin Nowak c...@dawg.eu changed:

   What|Removed |Added

 CC||c...@dawg.eu


--- Comment #5 from Martin Nowak c...@dawg.eu 2013-12-27 14:31:57 PST ---
Also see bug 11382

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 10391] Segfault compiling on Mac OS 10.8

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=10391


Andrei Alexandrescu and...@erdani.com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||and...@erdani.com
 Resolution||FIXED


-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11832] std.datetime: ddoc warnings

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11832



--- Comment #1 from Andrei Alexandrescu and...@erdani.com 2013-12-27 14:47:15 
PST ---
these warnings are produced with make -f posix.mak html for phobos

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11834] New: std.net.curl: ddoc warnings

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11834

   Summary: std.net.curl: ddoc warnings
   Product: D
   Version: D2
  Platform: All
OS/Version: All
Status: NEW
  Severity: normal
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: and...@erdani.com


--- Comment #0 from Andrei Alexandrescu and...@erdani.com 2013-12-27 14:48:54 
PST ---
std/net/curl.d(2434): Warning: Ddoc: function declaration has no parameter
'dlTotal'
std/net/curl.d(2434): Warning: Ddoc: function declaration has no parameter
'dlNow'
std/net/curl.d(2434): Warning: Ddoc: function declaration has no parameter
'ulTotal'
std/net/curl.d(2434): Warning: Ddoc: function declaration has no parameter
'ulNow'
std/net/curl.d(2434): Warning: Ddoc: parameter count mismatch
std/net/curl.d(3006): Warning: Ddoc: function declaration has no parameter
'dlTotal'
std/net/curl.d(3006): Warning: Ddoc: function declaration has no parameter
'dlNow'
std/net/curl.d(3006): Warning: Ddoc: function declaration has no parameter
'ulTotal'
std/net/curl.d(3006): Warning: Ddoc: function declaration has no parameter
'ulNow'
std/net/curl.d(3006): Warning: Ddoc: parameter count mismatch
std/net/curl.d(3343): Warning: Ddoc: function declaration has no parameter
'dlTotal'
std/net/curl.d(3343): Warning: Ddoc: function declaration has no parameter
'dlNow'
std/net/curl.d(3343): Warning: Ddoc: function declaration has no parameter
'ulTotal'
std/net/curl.d(3343): Warning: Ddoc: function declaration has no parameter
'ulNow'
std/net/curl.d(3343): Warning: Ddoc: parameter count mismatch

produced by

  make -f posix.mak html

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11832] New: std.datetime: ddoc warnings

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11832

   Summary: std.datetime: ddoc warnings
   Product: D
   Version: D2
  Platform: All
OS/Version: All
Status: NEW
  Severity: normal
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: and...@erdani.com


--- Comment #0 from Andrei Alexandrescu and...@erdani.com 2013-12-27 14:46:42 
PST ---
std/datetime.d(1726): Warning: Ddoc: function declaration has no parameter
'minutes'
std/datetime.d(2111): Warning: Ddoc: function declaration has no parameter 'tz'
std/datetime.d(8468): Warning: Ddoc: function declaration has no parameter
'isoString'
std/datetime.d(10563): Warning: Ddoc: parameter count mismatch
std/datetime.d(11227): Warning: Ddoc: function declaration has no parameter
'value'
std/datetime.d(14626): Warning: Ddoc: function declaration has no parameter
'isoString'
std/datetime.d(16114): Warning: Ddoc: function declaration has no parameter
'value'
std/datetime.d(17850): Warning: Ddoc: function declaration has no parameter
'isoString'
std/datetime.d(19467): Warning: Ddoc: parameter count mismatch
std/datetime.d(22107): Warning: Ddoc: function declaration has no parameter
'dir'
std/datetime.d(22107): Warning: Ddoc: parameter count mismatch
std/datetime.d(23535): Warning: Ddoc: function declaration has no parameter
'begin'
std/datetime.d(24369): Warning: Ddoc: function declaration has no parameter
'dir'
std/datetime.d(24369): Warning: Ddoc: parameter count mismatch
std/datetime.d(29606): Warning: Ddoc: parameter count mismatch
std/datetime.d(31455): Warning: Ddoc: function declaration has no parameter
'sysTime'

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 10364] Mac OS 10.8 program crash

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=10364


Andrei Alexandrescu and...@erdani.com changed:

   What|Removed |Added

 CC||and...@erdani.com


--- Comment #4 from Andrei Alexandrescu and...@erdani.com 2013-12-27 14:45:30 
PST ---
Gary, is this still failing?

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11833] New: std.process: ddoc warnings

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11833

   Summary: std.process: ddoc warnings
   Product: D
   Version: D2
  Platform: All
OS/Version: All
Status: NEW
  Severity: normal
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: and...@erdani.com


--- Comment #0 from Andrei Alexandrescu and...@erdani.com 2013-12-27 14:48:02 
PST ---
std/process.d(1591): Warning: Ddoc: function declaration has no parameter
'program'
std/process.d(1591): Warning: Ddoc: function declaration has no parameter
'command'
std/process.d(1591): Warning: Ddoc: parameter count mismatch
std/process.d(1925): Warning: Ddoc: function declaration has no parameter
'program'
std/process.d(1925): Warning: Ddoc: function declaration has no parameter
'command'
std/process.d(1925): Warning: Ddoc: parameter count mismatch

produced by running

  make -f posix.mak html

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11832] std.datetime: ddoc warnings

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11832


 mailnew4s...@gmail.com changed:

   What|Removed |Added

 CC||mailnew4s...@gmail.com


--- Comment #2 from  mailnew4s...@gmail.com 2013-12-27 14:57:33 PST ---
https://github.com/D-Programming-Language/phobos/pull/1536#discussion_r6103643

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 4673] Bug in std.string (isNumeric)

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=4673



--- Comment #11 from github-bugzi...@puremagic.com 2013-12-27 15:15:50 PST ---
Commits pushed to master at https://github.com/D-Programming-Language/phobos

https://github.com/D-Programming-Language/phobos/commit/aca9995fa24f3610a9d5a15745f91f9dcf1c3075
Fix issue 4673

https://github.com/D-Programming-Language/phobos/commit/fd8e2bf6e124da59f37c650c2126fd72b096bf1b
Merge pull request #1207 from andralex/4673

Fix issue 4673 - Bug in std.string (isNumeric)

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11831] std.zip no longer allows setting madeVersion field in zip file

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11831



--- Comment #1 from Walter Bright bugzi...@digitalmars.com 2013-12-27 
15:59:12 PST ---
Currently blocking:

https://github.com/D-Programming-Language/tools/pull/97

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11832] std.datetime: ddoc warnings

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11832


Jonathan M Davis jmdavisp...@gmx.com changed:

   What|Removed |Added

 CC||jmdavisp...@gmx.com


--- Comment #3 from Jonathan M Davis jmdavisp...@gmx.com 2013-12-27 16:27:23 
PST ---
@

Yes, any changes to std.datetime will cause me more merge problems in finishing
splitting std.datetime, but if any changes actually need to get in (e.g. a bug
fix), then they should be merged (and then I'll just have to deal with the
merge conflicts), particularly since I've been swamped at work for the past few
months and unable to finish splitting std.datetime (I'm in the middle of
reworking the documentation at this point). Right now, I'm expecting to get
back to D stuff towards the beginning of February, but I'm effectively a road
block until then with regards to any std.datetime changes which rely on me, and
while I'd prefer that more changes not be made to std.datetime in the interim
and cause me more work, if they need to be done, they need to be done. But I
would appreciate it if trivial stuff didn't get changed as it will create more
work for me.

I'll make sure that all such warnings are fixed as I rework the documentation,
but if anyone feels like they need to be fixed before that, then they can
create a pull request for it.

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 10985] Compiler doesn't attempt to inline non-templated functions from libraries (even having the full source)

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=10985



--- Comment #9 from github-bugzi...@puremagic.com 2013-12-27 17:06:14 PST ---
Commit pushed to master at https://github.com/D-Programming-Language/phobos

https://github.com/D-Programming-Language/phobos/commit/8b3fd1fb5e436f472894d197d3cfa94e533a3fef
workaround prime cases of issue 10985 in std.regex

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11831] std.zip no longer allows setting madeVersion field in zip file

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11831


Martin Nowak c...@dawg.eu changed:

   What|Removed |Added

   Keywords||pull
 CC||c...@dawg.eu


--- Comment #2 from Martin Nowak c...@dawg.eu 2013-12-27 17:56:15 PST ---
https://github.com/D-Programming-Language/phobos/pull/1817

(In reply to comment #0)
 std.zip needs to allow access to all fields in zip file's data structures. The
 data structures written to disk should not have inaccessible private fields.

The fact that std.zip is barely unusable and that most of it's members are
undocumented should tell you a different story.
madeVersion was explicitly documented as read only field btw.
http://dlang.org/phobos/std_zip.html#.ArchiveMember.madeVersion

 This regression blocks compilation of the chmodzip tool, which needs to be 
 able
 to set madeVersion because Linux unzippers look for specific version numbers
 there.

The set version number (20) works fine, it's 0x0300 in the upper byte which
needs to be set for Unix format file attribute.
https://github.com/D-Programming-Language/phobos/blob/e37d30fb10b94f8a3ac9013d92c7be661e52eb6b/std/zip.d#L136

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 10318] Built-in array sort usage warning, then deprecation, and finally removal

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=10318



--- Comment #8 from bearophile_h...@eml.cc 2013-12-27 18:04:17 PST ---
(In reply to comment #7)

 I don't think it's possible to simply infer purity.

The D language is able to infer purity for templates. So if sort() is not
(wealkly) pure, then there is something that forces it to be not pure. Such
parts should be found and fixed.


 (2) This may be a non-issue but Phobos cannot sort char[] arrays

This is by design. On the other hand sorting char[] is a common need for me (I
have not yet had to sort a wchar[]).

This works already:

void main() {
import std.algorithm, std.string;
char[] txt = acb.dup;
txt.representation.sort();
assert(txt == abc);
}


But that's not enough, as I'd like to use sort() in UFCS chains too.

A simple solution is to add to std.ascii a charsSort() function for this
purpose. But then you want charsPartialSort, charsSchwartzSort, etc. And this
is a bit too much. So this doesn't seem a very good idea.

Another solution is to introduce a unrepresentation() function, opposite of
std.string.representation. With it you can write this long code:

string txt = acb;
char[] txt2 = txt.dup.representation.sort().release.unrepresentation;

Similar code could be written with partialSort, schwartzSort, multiSort, topN,
etc.

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11831] std.zip no longer allows setting madeVersion field in zip file

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11831



--- Comment #3 from github-bugzi...@puremagic.com 2013-12-27 19:38:58 PST ---
Commits pushed to master at https://github.com/D-Programming-Language/phobos

https://github.com/D-Programming-Language/phobos/commit/eac5ec14d2ff8ce7c666edaea0607bd01733364a
fix Issue 11831 - std.zip no longer allows setting madeVersion field

- add deprecated ref accessor

https://github.com/D-Programming-Language/phobos/commit/8c570a0b1f210601360eb7a594863a85fddca971
Merge pull request #1817 from MartinNowak/fix11831

fix Issue 11831 - std.zip no longer allows setting madeVersion field

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 10206] User-defined attributes not documented well in language specification

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=10206


Kenji Hara k.hara...@gmail.com changed:

   What|Removed |Added

   Keywords||pull
Version|D1  D2 |D2


--- Comment #3 from Kenji Hara k.hara...@gmail.com 2013-12-27 20:10:58 PST ---
https://github.com/D-Programming-Language/dlang.org/pull/460

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 10205] 'deprecated' '(' assignExpression ')' grammar is not documented

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=10205


Kenji Hara k.hara...@gmail.com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


--- Comment #1 from Kenji Hara k.hara...@gmail.com 2013-12-27 20:22:07 PST ---
Grammar is currently defined as follows.

DeprecatedAttribute:
deprecated
deprecated ( StringLiteral )

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11798] std.algorithm.all with no predicate too

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11798



--- Comment #3 from github-bugzi...@puremagic.com 2013-12-27 22:15:27 PST ---
Commits pushed to master at https://github.com/D-Programming-Language/phobos

https://github.com/D-Programming-Language/phobos/commit/1fbfd9f46545a2b696cf3352b22e94ab4f9c17f1
fix Issue 11798 - std.algorithm.all with no predicate too

https://github.com/D-Programming-Language/phobos/commit/2eab18036284ba262a5b20ec0446271bbb78693e
Merge pull request #1810 from monarchdodra/allAny

fix Issue 11798 - std.algorithm.all with no predicate too

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 11835] New: Assert not thrown from contract

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11835

   Summary: Assert not thrown from contract
   Product: D
   Version: D2
  Platform: x86_64
OS/Version: Linux
Status: NEW
  Severity: normal
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: chalu...@gmail.com


--- Comment #0 from Tomáš Chaloupka chalu...@gmail.com 2013-12-27 23:24:57 
PST ---
With code like this:

import std.stdio;
import core.exception;
import std.exception;

interface IFoo
{
void test()
in
{
writeln(IFoo.test);
assert(false);
}
}

class Foo : IFoo
{
abstract void test()
in
{
writeln(Foo.test);
}
body{}
}

class Bar : Foo
{
override void test()
{
writeln(Bar.test);
}
}

unittest
{
auto bar = new Bar();
assertThrown!AssertError(bar.test());
}

I expected, that AssertError should be thrown from interface contract, but only
Bar.test is called.

With modification:
class Bar : Foo
{
override void test()
in
{
writeln(Bar.test);
}
body{}
}

Foo.test is called this time (Bar.test is not), but AssertError is still not
thrown so assertThrown fails.

With further modification:
class Foo : IFoo
{
abstract void test()
in
{
writeln(Foo.test);
assert(false);
}
body{}
}

Output is:
Foo.test
IFoo.test
Bar.test
core.exception.AssertError@source/app.d(45): assertThrown failed: No
AssertError was thrown.

So this time all contracts are called but still no AssertError thrown.

With this modification:
class Bar : Foo
{
override void test()
in
{
writeln(Bar.test);
assert(false);
}
body{}
}

All contracts are called and AssertError is thrown from Bar.test().
I think that this is a bug related to 6856 but as it seems that even
AssertErrors are somehow eaten somewhere, I filled this bug so it can be
checked too.

Tested with DMD 2.064.2 on Gentoo linux

-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---


[Issue 4673] Bug in std.string (isNumeric)

2013-12-27 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=4673


Dmitry Olshansky dmitry.o...@gmail.com changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 CC||dmitry.o...@gmail.com
 Resolution||FIXED


-- 
Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email
--- You are receiving this mail because: ---