digitalmars.D.bugs - [Issue 6587] New: std.parallelism
- d-bugmail puremagic.com (16/16) Aug 31 2011 http://d.puremagic.com/issues/show_bug.cgi?id=6587
- d-bugmail puremagic.com (36/36) Aug 31 2011 http://d.puremagic.com/issues/show_bug.cgi?id=6587
- d-bugmail puremagic.com (11/11) Sep 01 2011 http://d.puremagic.com/issues/show_bug.cgi?id=6587
- d-bugmail puremagic.com (8/8) Sep 03 2011 http://d.puremagic.com/issues/show_bug.cgi?id=6587
- d-bugmail puremagic.com (11/11) Jan 12 2012 http://d.puremagic.com/issues/show_bug.cgi?id=6587
http://d.puremagic.com/issues/show_bug.cgi?id=6587 Summary: std.parallelism Product: D Version: D2 Platform: Other OS/Version: Windows Status: NEW Severity: normal Priority: P2 Component: Phobos AssignedTo: nobody puremagic.com ReportedBy: debio264 gmail.com --- -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Aug 31 2011
http://d.puremagic.com/issues/show_bug.cgi?id=6587 Andrew Wiley <debio264 gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Platform|Other |All Summary|std.parallelism |std.parallelism's Task | |cannot handle immutable | |values OS/Version|Windows |All --- When creating Tasks to run on a TaskPool using std.parallelism, it looks like I can't call functions that have immutable objects: code: import std.parallelism; class Test { } void doSomething(immutable(Test) test) { } void main() { immutable(Test) test = new immutable(Test)(); taskPool().put(task!(doSomething)(test)); } compiler output: Error: can only initialize const member __args_field_0 inside constructor Error: this is not mutable /usr/include/d2/4.6.0/std/parallelism.d:734: Error: template instance std.parallelism.Task!(doSomething,immutable(Test)) error instantiating tasktest.d:11: instantiated from here: task!(doSomething,immutable(Test)) Is this something that can be fixed, or does this depend on having tail const support (which would hopefully work for immutable as well)? This use case seems particularly important as immutability is the simplest way to ensure safe multithreading. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Aug 31 2011
http://d.puremagic.com/issues/show_bug.cgi?id=6587 David Simcha <dsimcha yahoo.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |dsimcha yahoo.com This should work, but I had neglected to put a test in for it. Anyhow, the underlying reason it doesn't work is Bug 6588. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Sep 01 2011
http://d.puremagic.com/issues/show_bug.cgi?id=6587 I found a workaround for 6588 and put it into a larger pull request with various improvements to std.parallelism: https://github.com/D-Programming-Language/phobos/pull/217 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Sep 03 2011
http://d.puremagic.com/issues/show_bug.cgi?id=6587 David Simcha <dsimcha yahoo.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED This has been fixed for a few releases. Closing. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Jan 12 2012