[Issue 8816] New: It should be illegal for enums to declare members named init, max, or min

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8816

   Summary: It should be illegal for enums to declare members
named init, max, or min
   Product: D
   Version: unspecified
  Platform: All
OS/Version: All
Status: NEW
  Severity: enhancement
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: jmdavisp...@gmx.com


--- Comment #0 from Jonathan M Davis jmdavisp...@gmx.com 2012-10-13 23:57:05 
PDT ---
TDPL (p.275) specifically allows for enums to declare members named min, max,
and init and then immediately tells you that it's a dumb idea to do so.
Allowing it is bound to break generic code, since it allows you to do nonsense
like

enum MyEnum : int {max, min, init}

completely breaking any guarantees about what the mean. And note this fun
situation:

enum MyEnum : int { a, b, c, init }

void main()
{
MyEnum e;
assert(e == MyEnum.a);
assert(MyEnum.init == MyEnum.a);
}

The first assertion passes and the second fails, meaning that the declartion of
init has effectively hidden the real init. I'd strongly argue that allowing the
overloading init, min, and max should be disallowed. Allowing it gains us
nothing and just causes bugs.

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


[Issue 8817] New: Symbols named init should be illegal

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8817

   Summary: Symbols named init should be illegal
   Product: D
   Version: unspecified
  Platform: All
OS/Version: All
Status: NEW
  Severity: enhancement
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: jmdavisp...@gmx.com


--- Comment #0 from Jonathan M Davis jmdavisp...@gmx.com 2012-10-14 00:04:46 
PDT ---
The fact that the compiler currently allows any symbols to be named init just
causes problems. For instance, take this program:

struct S
{
int i = 2;

this(int j)
{
assert(i == 2);
i = j;
}

@property static init()
{
return S(5);
}
}

void main()
{
assert(S.init == S(2));
}


The assertion in main fails, while the assertion in the constructor succeeds.
That means that it's failing to actually override the init property for S
(which is good), but now the init property for S is inaccessible. This is
dangerous and will break all kinds of code. This sort of thing should just be
disallowed. It gains us nothing and just causes problems. Similarly, this code

struct S
{
int i = 2;

this(int j)
{
assert(i == 2);
i = j;
}

@property S init()
{
return S(5);
}
}

void main()
{
assert(S.init == S(2));
}

results in this compilation error:

q.d(19): Error: need 'this' for init type @property S()

So, again, it makes it impossible to access the type's init property.

For some reason, TDPL (p. 275) specifically permits enums to declare min, max,
and init properties, though it _does_ tell you that it's a bad idea to do so.
So, if that's to be permitted, init would still have to be allowed there, but
I'd strongly argue that that should be changed. And note that just like with
structs, it causes weird issues:

enum MyEnum : int { a, b, c, init }

void main()
{
MyEnum e;
assert(e == MyEnum.a);
assert(MyEnum.init == MyEnum.a);
}

The first assertion passes but the second fails, meaning that once again, you
can't get at the init property of the type anymore. Sure, declaring init as the
first value fixes that, but init would be the first value anyway if init
weren't explicitly declared. See issue# 8816.

The only situation where explicitly declaring init might make some sense would
be to @disable it, but the syntax for disabling init is @disable this(); and
not anything directly involving init. You can try and declare

struct S
{
int i;
@disable static S init;
}

void main()
{
S s;
}

but it compiles just fine.

At minimum, I would strongly argue that any and all symbols which could
conflict with the actual init property for a type should be made illegal. There
are a few cases where it may not cause problems (e.g. a local variable), but
I'd argue that it would be cleaner to just disallow those as well. If need be,
maybe init should become a keyword. Certainly, the current situation just
permits bugs and the ability to declare symbols named init which conflict with
the actual init property for a type needs to be eliminated.

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


[Issue 8816] It should be illegal for enums to declare members named init, max, or min

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8816



--- Comment #1 from Jonathan M Davis jmdavisp...@gmx.com 2012-10-14 00:05:18 
PDT ---
See also issue# 8817.

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


[Issue 8816] It should be illegal for enums to declare members named init, max, or min

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8816


Alex R�nne Petersen a...@lycus.org changed:

   What|Removed |Added

 CC||a...@lycus.org


--- Comment #2 from Alex R�nne Petersen a...@lycus.org 2012-10-14 09:36:24 
CEST ---
For what it's worth, I agree that it's nonsensical to even allow this. It's
just inviting catastrophe.

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


[Issue 8817] Symbols named init should be illegal

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8817


Alex R�nne Petersen a...@lycus.org changed:

   What|Removed |Added

 CC||a...@lycus.org


--- Comment #1 from Alex R�nne Petersen a...@lycus.org 2012-10-14 09:38:30 
CEST ---
This actually happens to be a problem in druntime's TypeInfo classes because
they have a property called init. A lot of code currently relies on that
'overload' of the init symbol.

https://github.com/D-Programming-Language/druntime/blob/master/src/object.di#L75

That comment has been there for eons. What do we do about it?

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


[Issue 8817] Symbols named init should be illegal

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8817



--- Comment #2 from Jonathan M Davis jmdavisp...@gmx.com 2012-10-14 00:48:24 
PDT ---
 That comment has been there for eons. What do we do about it?

Create a function with the correct name (whatever that is - initialize?) and
mark the old one as scheduled for deprecation making sure that we put an
appropriate note in the changelog (in red if we think that it's major enough -
I don't know how much code really uses TypeInfo, let alone TypeInfo.init()
though). Then we deprecate it. It'll probably have to stick around as
deprecated for a while to help the transition, but after that, we remove it,
and it won't cause an issues any longer.

Unfortunately, it wouldn't surprise me if there are plenty of types out there
with an init function (std.file.DirEntry used to have one), but IMHO it's just
fundamentally broken to allow that given how it conflicts with the actual init
property. And I think that this is a case where it's worth breaking code if we
have to (but that makes it that much more critical that we make the changes
necessary for this sooner rather than later).

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


[Issue 8809] Cannot statically bind to base class method overridden by derived class

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8809


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

   What|Removed |Added

   Keywords||pull, rejects-valid


--- Comment #1 from Kenji Hara k.hara...@gmail.com 2012-10-14 03:02:36 PDT ---
https://github.com/D-Programming-Language/dmd/pull/1181

And, this is also a problem in website.

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


[Issue 8818] New: CTFE fails to compare strings correctly

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8818

   Summary: CTFE fails to compare strings correctly
   Product: D
   Version: D2
  Platform: All
OS/Version: All
Status: NEW
  Keywords: CTFE
  Severity: regression
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: r.sagita...@gmx.de


--- Comment #0 from Rainer Schuetze r.sagita...@gmx.de 2012-10-14 06:16:27 
PDT ---
Compiling with current version from github:

bool test()
{
string op1 = aa;
string op2 = b;
assert(b = aa);
assert(op2 = op1);
return true;
}

pragma(msg,test());

void main()
{
}

produces:

test.d(7): Error: assert(op2 = op1) failed
test.d(11):called from here: test()
test()

This does not happen with dmd 2.060. The regression was probably introduced
with this commit:

SHA-1: f3ee71f1f422fd0ee8863109469f4065a8305b5f

* Merge pull request #1114 from donc/ctfe8644_arrayliteralcmp

Fix bug 8644 - CTFE doesn't support string , on array literals

and is caused by ctfeRawCmp in interpret.c changing the semantics of the
comparison, because it compares the length of arrays before looking at the
contents.

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


[Issue 8792] std.algorithm.joiner doesn't return a proper forward range

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8792



--- Comment #3 from github-bugzi...@puremagic.com 2012-10-14 08:28:15 PDT ---
Commits pushed to master at https://github.com/D-Programming-Language/phobos

https://github.com/D-Programming-Language/phobos/commit/5a0c67f08553c05c532fe3c433e3bb944d8aa6dd
Expanded test for issue# 8792.

https://github.com/D-Programming-Language/phobos/commit/5037dd00bd66ee195da3b95dd7a5baa99f451106
Merge pull request #866 from jmdavis/tests

Expanded test for issue# 8792.

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


[Issue 8809] Cannot statically bind to base class method overridden by derived class

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8809



--- Comment #2 from github-bugzi...@puremagic.com 2012-10-14 08:31:12 PDT ---
Commit pushed to master at
https://github.com/D-Programming-Language/d-programming-language.org

https://github.com/D-Programming-Language/d-programming-language.org/commit/946692fbad211e84207d41da392a1f60aac9fb65
Add documentation for issue 8809

This language feature has not been clearly documented.

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


[Issue 8819] New: void static array should have init built-in propert

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8819

   Summary: void static array should have init built-in propert
   Product: D
   Version: D2
  Platform: All
OS/Version: All
Status: NEW
  Severity: enhancement
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: k.hara...@gmail.com


--- Comment #0 from Kenji Hara k.hara...@gmail.com 2012-10-14 09:04:24 PDT ---
Following code doesn't work with current dmd (2.060).

void main()
{
  alias void[1] T;
  auto vsa = T.init;
}

output:
test.d(4): Error: void does not have a default initializer

I think this is unnecessary restriction and almost a bug.
An element of void[1] should have '0' as a default initializer.

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


[Issue 8820] New: Array initialization generates garbage

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8820

   Summary: Array initialization generates garbage
   Product: D
   Version: D2
  Platform: All
OS/Version: All
Status: NEW
  Severity: normal
  Priority: P2
 Component: druntime
AssignedTo: nob...@puremagic.com
ReportedBy: malteskaru...@web.de


--- Comment #0 from Malte Skarupke malteskaru...@web.de 2012-10-14 11:23:55 
PDT ---
Array initialization currently generates garbage that needs to be collected by
the GC.

{
int[5] a = [1, 2, 3, 4, 5]; // generates garbage
}
{
int[5] a;
foreach (i; 0 .. 5)
{
a[i] = i + 1;
} // same thing, but no garbage. everything is on the stack
}


Creating an array on the stack should be a trivial and fast operation. Yet
stepping through the disassembly of that first line reveals a lot of overhead.

But for now all I want fixed is that the first line does not generate garbage.
The reason for why it generates garbage is that it allocates on the heap, then
memcpys over to the stack, and never cleans up the memory on the heap.

It should obviously initialize directly on the stack.

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


[Issue 8820] Array initialization generates garbage

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8820


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

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||jmdavisp...@gmx.com
 Resolution||DUPLICATE


--- Comment #1 from Jonathan M Davis jmdavisp...@gmx.com 2012-10-14 11:36:34 
PDT ---
*** This issue has been marked as a duplicate of issue 2356 ***

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


[Issue 2356] array literal as non static initializer generates horribly inefficient code.

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=2356


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

   What|Removed |Added

 CC||malteskaru...@web.de


--- Comment #11 from Jonathan M Davis jmdavisp...@gmx.com 2012-10-14 11:36:34 
PDT ---
*** Issue 8820 has been marked as a duplicate of this issue. ***

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


[Issue 8820] Array initialization generates garbage

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8820



--- Comment #3 from Malte Skarupke malteskaru...@web.de 2012-10-14 12:18:14 
PDT ---
(In reply to comment #2)
 This is a long-standing, known issue.
 
 As a side note, it would be better to say that it allocates memory when it
 shouldn't rather than talking about generating garbage. That tends to imply
 that it generates garbage data (which it doesn't), giving the wrong impression
 about what you're talking about. All GC heap memory must naturally be garbage
 collected, so the issue is that it's allocated in the first place rather than
 the fact that it needs to be collected later.

Ah sorry for not seeing the other issue. I searched for array initialization,
but didn't come across that one. And yeah, I can see there being issues with
the double meaning of garbage in terms of the garbage collector and garbage in
terms of garbage data. I'll use different terminology in the future.

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


[Issue 8821] New: countUntil chokes on reference ranges

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8821

   Summary: countUntil chokes on reference ranges
   Product: D
   Version: unspecified
  Platform: All
OS/Version: All
Status: NEW
  Severity: normal
  Priority: P2
 Component: Phobos
AssignedTo: nob...@puremagic.com
ReportedBy: monarchdo...@gmail.com


--- Comment #0 from monarchdo...@gmail.com 2012-10-14 13:43:47 PDT ---
Example:

//---
import std.algorithm;
import std.stdio;
import std.array;

struct Forward
{
static struct P
{
string s;
}
P* _p;

this(string si)
{
_p = new P();
_p.s = si;
}
@property dchar front()
{
return _p.s.front;
}
void popFront()
{
_p.s.popFront();
}
bool empty()
{
return _p.s.empty;
}
}

void main()
{
auto s = Forward(abc);
auto s1 = Forward(ac);

s.countUntil(s1).writeln();
}
//---

Produces 1.

ROOT CAUSE ANALYSIS: The problem is startsWith, which will consume both its
input (both haystack and needle). Here, the first call to start with will
consume the a of both abc and ac. countUntil will the pop the b off of
bc, and finally, call startsWith on c and c.

Recommend saving ranges before calling startsWith (if both are ranges), but a
more efficient solution could be found.

Assigning to self.

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


[Issue 8821] countUntil chokes on reference ranges

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8821


monarchdo...@gmail.com changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
 AssignedTo|nob...@puremagic.com|monarchdo...@gmail.com


--- Comment #1 from monarchdo...@gmail.com 2012-10-14 13:45:39 PDT ---
(In reply to comment #0)
 Assigning to self.

Assigning to self.

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


[Issue 4669] Unit tests do not work in libraries compiled by dmd with -lib

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4669


PhilLavoie maidenp...@hotmail.com changed:

   What|Removed |Added

 CC||maidenp...@hotmail.com
 OS/Version|Linux   |Windows


--- Comment #4 from PhilLavoie maidenp...@hotmail.com 2012-10-14 14:57:54 PDT 
---
Yeah, I also confirm this issue on Windows. Since unit testing plays an
important part in software construction, I hope that it gets the attention it
deserves and gets fixed soon :). Love D 4 Life.

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


[Issue 8820] Array initialization generates garbage

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8820



--- Comment #4 from Jonathan M Davis jmdavisp...@gmx.com 2012-10-14 16:09:07 
PDT ---
 Ah sorry for not seeing the other issue. I searched for array 
 initialization, but didn't come across that one.

Not a problem. It happens all the time. All it takes is someone wording things
differently from how you think of the problem, and you won't find the issue.
Just make sure that you put in a good faith effort to find an existing bug
report before reporting it (as it sounds like you did).

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


[Issue 8791] Optlink fails when reading PATH variable and -g is used

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8791


webwra...@fastmail.fm changed:

   What|Removed |Added

 CC||webwra...@fastmail.fm


--- Comment #3 from webwra...@fastmail.fm 2012-10-14 16:15:22 PDT ---
Appears to work only if PATH is set to something that has absolutely no spaces
in it, regardless of speech marks or quotes

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


[Issue 8791] Optlink fails when reading PATH variable and -g is used

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8791



--- Comment #4 from Andrej Mitrovic andrej.mitrov...@gmail.com 2012-10-14 
16:38:52 PDT ---
(In reply to comment #3)
 Appears to work only if PATH is set to something that has absolutely no spaces
 in it, regardless of speech marks or quotes

The first example doesn't have any spaces in it.

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


[Issue 5860] optlink borken for paths with + (plus) in PATH

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=5860


Andrej Mitrovic andrej.mitrov...@gmail.com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||andrej.mitrov...@gmail.com
 Resolution||DUPLICATE


--- Comment #1 from Andrej Mitrovic andrej.mitrov...@gmail.com 2012-10-14 
18:01:40 PDT ---
*** This issue has been marked as a duplicate of issue 4831 ***

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


[Issue 8791] Optlink fails when reading PATH variable and -g is used

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8791


Andrej Mitrovic andrej.mitrov...@gmail.com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||DUPLICATE


--- Comment #7 from Andrej Mitrovic andrej.mitrov...@gmail.com 2012-10-14 
18:01:25 PDT ---
*** This issue has been marked as a duplicate of issue 4831 ***

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


[Issue 4831] Optlink failed to parse PATH env variable with -g option

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4831


Andrej Mitrovic andrej.mitrov...@gmail.com changed:

   What|Removed |Added

 CC||s...@extrawurst.org


--- Comment #4 from Andrej Mitrovic andrej.mitrov...@gmail.com 2012-10-14 
18:01:40 PDT ---
*** Issue 5860 has been marked as a duplicate of this issue. ***

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


[Issue 4831] Optlink failed to parse PATH env variable with -g option

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4831


Andrej Mitrovic andrej.mitrov...@gmail.com changed:

   What|Removed |Added

 CC||andrej.mitrov...@gmail.com


--- Comment #3 from Andrej Mitrovic andrej.mitrov...@gmail.com 2012-10-14 
18:01:26 PDT ---
*** Issue 8791 has been marked as a duplicate of this issue. ***

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


[Issue 6649] core.sys.posix.sys.ioctl

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=6649



--- Comment #2 from github-bugzi...@puremagic.com 2012-10-14 19:16:10 PDT ---
Commits pushed to master at https://github.com/D-Programming-Language/druntime

https://github.com/D-Programming-Language/druntime/commit/5e1cefadea362203beb59e1ce44ad20f7d80ba46
Fix issue #6649 (partially) - add core.sys.posix.sys.ioctl header module for
Linux.

https://github.com/D-Programming-Language/druntime/commit/534c114d260d41dd518336232c3fa68ef13bdffc
Merge pull request #318 from alexrp/ioctl-posix

Fix issue #6649 (partially) - add core.sys.posix.sys.ioctl header module for
Linux.

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


[Issue 5593] Add dladdr to druntime for linux/FreeBSD

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=5593


Alex R�nne Petersen a...@lycus.org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


--- Comment #4 from Alex R�nne Petersen a...@lycus.org 2012-10-15 04:17:54 
CEST ---
Done.

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


[Issue 7444] Require [] for array copies too

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=7444



--- Comment #9 from github-bugzi...@puremagic.com 2012-10-14 19:19:00 PDT ---
Commits pushed to master at https://github.com/D-Programming-Language/druntime

https://github.com/D-Programming-Language/druntime/commit/a77c82772e7e7b2d1d863b1fb56b614b9d4bc6a1
fix Issue 7444 - Require [] for array copies too

https://github.com/D-Programming-Language/druntime/commit/be3a7fa1bc726b453203c058ff2fa8c81dcfcab1
Merge pull request #314 from 9rnsr/fix7444

Supplemental changes for Issue 7444 - Require [] for array copies too

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


[Issue 7112] Add function in core.sys.posix.signal

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=7112


Alex R�nne Petersen a...@lycus.org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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


[Issue 7112] Add function in core.sys.posix.signal

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=7112



--- Comment #3 from github-bugzi...@puremagic.com 2012-10-14 19:18:34 PDT ---
Commits pushed to master at https://github.com/D-Programming-Language/druntime

https://github.com/D-Programming-Language/druntime/commit/1d21ce334f9481ae9eaed190f78793944a0ca8ea
Fix issue #7112 - add core.sys.linux.sys.signalfd module.

https://github.com/D-Programming-Language/druntime/commit/168c1ec0b77368ee9fb881125e0684ca3e101ec7
Merge pull request #315 from alexrp/signalfd-linux

Fix issue #7112 - add core.sys.linux.sys.signalfd module.

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


[Issue 5593] Add dladdr to druntime for linux/FreeBSD

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=5593



--- Comment #5 from github-bugzi...@puremagic.com 2012-10-14 19:30:20 PDT ---
Commits pushed to master at https://github.com/D-Programming-Language/druntime

https://github.com/D-Programming-Language/druntime/commit/a2c549423c80413b73a78fbd5f60b078b99175b2
Fix issue #5593 - add dladdr, dlvsym, and Dl_info to core.sys.posix.dlfcn.

https://github.com/D-Programming-Language/druntime/commit/ada94ebe2eb4f855945290d49c4a79d558827710
Merge pull request #324 from alexrp/dladdr

Fix issue #5593 - add dladdr, dlvsym, and Dl_info to core.sys.posix.dlfcn.

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


[Issue 8822] New: Usiing qualified delegate type in template argument causes parser error.

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8822

   Summary: Usiing qualified delegate type in template argument
causes parser error.
   Product: D
   Version: D2
  Platform: All
OS/Version: All
Status: NEW
  Severity: normal
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: k.hara...@gmail.com
Depends on: 4838


--- Comment #0 from Kenji Hara k.hara...@gmail.com 2012-10-14 20:38:19 PDT ---
Spin out issue from bug 8813.

This is a rest of bug 4838.

void main()
{
struct S { void foo() const {} }
S s;
void delegate() const dg = s.foo;  // OK

void foo(void delegate() const dg){}// OK

struct Foo(T) {}
alias Foo!(void delegate() const) X;// NG
}

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


[Issue 8813] Cannot define delegate with const/immutable/shared/inout attributes

2012-10-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=8813



--- Comment #1 from Kenji Hara k.hara...@gmail.com 2012-10-14 20:50:28 PDT ---
(In reply to comment #0)
 This code doesn't work:
 ---
 void main()
 {
 auto dg = delegate() const { }; // NG
 }
 ---

In current, the semantics about qualified nested function (==lambda literal) is
not defined in language spec. Compiler assumes that the frame pointer of nested
function is always mutable.

 And, I do not know whether a cause is the same as this problem... This code
 doesn't work, too.
 ---
 import std.traits;
 void main()
 {
 static assert(is(FunctionTypeOf!(void delegate() const) == const)); // NG
 
 alias void delegate() const DG; // OK
 static assert(is(FunctionTypeOf!DG == const)); // OK
 }
 ---

This is a parser bug and a rest of issue 4838.
I've separated it to bug 8822.

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