[Issue 11183] Win64: lrint yields bad results

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11183


Rainer Schuetze r.sagita...@gmx.de changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


--- Comment #1 from Rainer Schuetze r.sagita...@gmx.de 2014-02-28 00:04:28 
PST ---
Fixed as part of https://github.com/D-Programming-Language/phobos/pull/1411

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


[Issue 11184] Win64: killing process with invalid handle terimates current process

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11184


Rainer Schuetze r.sagita...@gmx.de changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


--- Comment #1 from Rainer Schuetze r.sagita...@gmx.de 2014-02-28 00:05:08 
PST ---
Fixed as part of https://github.com/D-Programming-Language/phobos/pull/1411

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


[Issue 12269] Unittest within template struct scope is not executed

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12269



--- Comment #4 from Andrej Mitrovic andrej.mitrov...@gmail.com 2014-02-28 
00:45:54 PST ---
(In reply to comment #3)
 IMO all unittests should be lifted to module scope by the compiler, excepting
 static-if and version() blocks. This way there would be no unittests that are
 missed because a template was not instantiated.

I don't think you're following me here, if you have:

struct S(T)
{
T val;
}

It doesn't matter where you put the unittest, it cannot possibly know what to
instantiate 'S' with. Here's an example of a unittest within a struct block
that could be both compilable and non-compilable based on what S is
instantiated with:

-
struct S(T)
{
T val;

unittest
{
/// this will fail if 'T' is not int
static assert(is(T == int));
}
}

alias S_Int = S!int;
alias S_Float = S!float;  // triggers compile-time failure
-

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


[Issue 2659] Remove the comma operator

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=2659


Casper F�rgemand shortt...@hotmail.com changed:

   What|Removed |Added

 CC||shortt...@hotmail.com


--- Comment #4 from Casper F�rgemand shortt...@hotmail.com 2014-02-28 
01:07:10 PST ---
vec = overloaded vector type of size 3.

What I meant to write:
vec v = vec(0, 0, 3);

What I actually wrote:
vec v = (0, 0, 3);

Result:
vec v = 3; // as in vec(3, 3, 3);

It was quite nasty. Considering D doesn't allow statements like 3; I don't see
why it isn't an error to do it when using the comma operator in an assignment.
It literally just throws away everything with no side effect.

Or make it easy and just remove the comma operator completely in its current
form.

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


[Issue 2659] Remove the comma operator

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=2659



--- Comment #5 from yebblies yebbl...@gmail.com 2014-02-28 20:13:00 EST ---
(In reply to comment #4)
 vec = overloaded vector type of size 3.
 
 What I meant to write:
 vec v = vec(0, 0, 3);
 
 What I actually wrote:
 vec v = (0, 0, 3);
 
 Result:
 vec v = 3; // as in vec(3, 3, 3);
 
 It was quite nasty. Considering D doesn't allow statements like 3; I don't see
 why it isn't an error to do it when using the comma operator in an assignment.
 It literally just throws away everything with no side effect.
 

There was an attempt in the past to error on a commaexp where the non-last
expression has no side effects, but it was never enabled because the compiler
generates thousands of these, screwing everything up.  It will probably be
added eventually.

 Or make it easy and just remove the comma operator completely in its current
 form.

That's the plan, hopefully in 2.066.

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


[Issue 2659] Remove the comma operator

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=2659


w0rp devw...@gmail.com changed:

   What|Removed |Added

 CC||devw...@gmail.com


--- Comment #6 from w0rp devw...@gmail.com 2014-02-28 01:18:35 PST ---
+1 to this. Also, I wouldn't use a comma in future for tuple syntax with
parentheses. I think that was a mistake in Python. Supposing this was
translated to D as it is in Python...

auto x = (); // empty tuple
auto x = (1); // value 1
auto x = (1,) // tuple of size 1
auto x = (1, 2) // pair

After so many years, I still make mistakes regularly with this.

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


[Issue 12218] [AA] inserting into associative array invalidates foreach iteration

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12218



--- Comment #4 from Ivan Kazmenko ga...@mail.ru 2014-02-28 01:48:39 PST ---
Created an attachment (id=1335)
reduced test case as a safe function - which it is not!

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


[Issue 12218] [AA] inserting into associative array invalidates foreach iteration

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12218


Ivan Kazmenko ga...@mail.ru changed:

   What|Removed |Added

   Attachment #1334|application/octet-stream|text/plain
  mime type||


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


[Issue 12218] [AA] inserting into associative array invalidates foreach iteration

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12218


Ivan Kazmenko ga...@mail.ru changed:

   What|Removed |Added

   Attachment #1333|application/octet-stream|text/plain
  mime type||


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


[Issue 12218] [AA] inserting into associative array invalidates foreach iteration

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12218



--- Comment #2 from Ivan Kazmenko ga...@mail.ru 2014-02-28 01:45:01 PST ---
Created an attachment (id=1333)
program to find a reduced test case

Well, 124 numbers sound like much, but the test case presented above is the
most reduced example I came up with.  I attached the program used to find such
a test case.  Basically, it just adds an interval [lo; hi] into an associative
array and then iterates on the array.  The second similar array is also created
to make the breakage more likely because of data relocation, but it turns out
to be unnecessary.

On the bright side, the original broken program processes several megabytes of
text, so some reduction did in fact take place.

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


[Issue 12218] [AA] inserting into associative array invalidates foreach iteration

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12218


Ivan Kazmenko ga...@mail.ru changed:

   What|Removed |Added

   Attachment #1335|application/octet-stream|text/plain
  mime type||


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


[Issue 12218] [AA] inserting into associative array invalidates foreach iteration

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12218



--- Comment #3 from Ivan Kazmenko ga...@mail.ru 2014-02-28 01:47:43 PST ---
Created an attachment (id=1334)
reduced test case printing diagnostic messages

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


[Issue 12269] Unittest within template struct scope is not executed

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12269



--- Comment #5 from growler...@gmail.com 2014-02-28 04:21:45 PST ---
struct S(T)
{
T val;

unittest
{
/// this will fail if 'T' is not int
static assert(is(T == int));
}
}

alias S_Int = S!int;
alias S_Float = S!float;  // triggers compile-time failure
---
Yes, I understand this and I'd expect the compile failure. 

I don't think it is a good idea to conditionally compile/execute unittests
according to whether templates are instantiated, which is why I was saying they
should not be treated as regular functions that are subject to
template/struct/class scope.

Of course that may raise other issues I haven't thought of...I'm not a
compiler/language developer by any means :)

Anyway, thanks for taking the time to look into this issue. It is only a minor
problem due to my preferred unittest structure/workflow. I can work around it
easily enough.

Cheers,
ed

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


[Issue 12269] Unittest within template struct scope is not executed

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12269


Vladimir Panteleev thecybersha...@gmail.com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||thecybersha...@gmail.com
 Resolution||INVALID


--- Comment #6 from Vladimir Panteleev thecybersha...@gmail.com 2014-02-28 
14:28:09 EET ---
This is a clearly invalid issue.

The compiler can't execute the unit test because it can't POSSIBLY know what to
instantiate the template with. It's like asking someone to verify that a
mathematical equation is sound, but leaving half of the variables as blanks.

The compiler will generate a unit test for every unique instantiation of the
template. This way, the unit test will effectively test every combination of
parameters - out of those used in your program. There is no problem and no need
to restructure any code, as long as you build your entire program with the
-unittest switch, as opposed to separate modules that only contain template
declarations without instantiating them.

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


[Issue 12276] New: DMD installer doesn't remember where it was installed when updating

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12276

   Summary: DMD installer doesn't remember where it was installed
when updating
   Product: D
   Version: D2
  Platform: All
OS/Version: Windows
Status: NEW
  Severity: normal
  Priority: P2
 Component: installer
AssignedTo: nob...@puremagic.com
ReportedBy: turkey...@gmail.com


--- Comment #0 from Manu turkey...@gmail.com 2014-02-28 04:30:10 PST ---
When updating DMD, it doesn't remember where it was installed, and tries to
install a new instance somewhere else.

(This has been discussed, I just don't think there was a record of it)

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


[Issue 12253] Built-in sort accepts an array of structs of immutables

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12253


yebblies yebbl...@gmail.com changed:

   What|Removed |Added

 CC||yebbl...@gmail.com


--- Comment #2 from yebblies yebbl...@gmail.com 2014-02-28 23:43:32 EST ---
This is probably WONTFIX with builtin sort going away.

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


[Issue 3852] Default struct constructors needed

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=3852


yebblies yebbl...@gmail.com changed:

   What|Removed |Added

 CC||remotio...@gmail.com


--- Comment #1 from yebblies yebbl...@gmail.com 2014-02-28 23:51:14 EST ---
*** Issue 12252 has been marked as a duplicate of this issue. ***

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


[Issue 2834] Struct Destructors are not called by the GC, but called on explicit delete.

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=2834


Dicebot pub...@dicebot.lv changed:

   What|Removed |Added

 CC||pub...@dicebot.lv
   Platform|x86 |All
 OS/Version|Windows |All


--- Comment #10 from Dicebot pub...@dicebot.lv 2014-02-28 04:53:17 PST ---
Updated flags as it affects all platforms and is general language defect.

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


[Issue 12277] static opCall is hidden by @disabled constructors and can never be called

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12277


Remo remotio...@gmail.com changed:

   What|Removed |Added

   Priority|P3  |P2


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


[Issue 12252] struct default constructors that execute code.

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12252



--- Comment #3 from Remo remotio...@gmail.com 2014-02-28 05:07:29 PST ---
Ok then why any other workarounds for this problem do not work too ?

Here is one possible workaround that does not work.
struct S
{
@disable this();
@disable this(this);

this(int i){ }
static S opCall(){
S s = S(123);
return s;
}
}

This would help to find places in ported C++ code that need to be changed but
it does not compiles.

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


[Issue 12269] Unittest within template struct scope is not executed

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12269



--- Comment #8 from Vladimir Panteleev thecybersha...@gmail.com 2014-02-28 
15:22:43 EET ---
(In reply to comment #7)
 A unittest should be forced to define all variables to test the equation with,
 irrespective of where it is defined.

But then that would break the current usage of unit tests within templates (to
test each instantiation).

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


[Issue 12254] Github interaction improvement proposals (via user.js or addins)

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12254



--- Comment #7 from Vladimir Panteleev thecybersha...@gmail.com 2014-02-28 
15:26:47 EET ---
(In reply to comment #6)
 I'm not sure about this, but we could try enabling issues on the 
 repositories. 
 This would let us tag and assign pull requests, and the autotester could tag
 pulls as passing/failing.  We could even have a bot that could tag pulls as
 stale if they have been in the 'needs work' state for  n weeks etc.

I think that would make sense only if it solved all or almost all of the
problems.

 The downside is that people might start reporting actual issues there instead
 of here, but it might be worth the extra bookkeeping.

I think there's some file you can add to the repository that'll be displayed
automatically when attempting to file a new issue. This can direct users to
Bugzilla.

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


[Issue 2834] Struct Destructors are not called by the GC, but called on explicit delete.

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=2834


rswhi...@googlemail.com changed:

   What|Removed |Added

 CC||rswhi...@googlemail.com


--- Comment #11 from rswhi...@googlemail.com 2014-02-28 05:35:48 PST ---
Maybe we should put a bounty on it.

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


[Issue 12251] Use of BigInts in triple operator too

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12251


yebblies yebbl...@gmail.com changed:

   What|Removed |Added

 CC||yebbl...@gmail.com


--- Comment #5 from yebblies yebbl...@gmail.com 2014-03-01 00:34:22 EST ---
This appears to be fixed.

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


[Issue 12254] Github interaction improvement proposals (via user.js or addins)

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12254



--- Comment #8 from yebblies yebbl...@gmail.com 2014-03-01 00:46:38 EST ---
(In reply to comment #7)
 (In reply to comment #6)
  I'm not sure about this, but we could try enabling issues on the 
  repositories. 
  This would let us tag and assign pull requests, and the autotester could tag
  pulls as passing/failing.  We could even have a bot that could tag pulls as
  stale if they have been in the 'needs work' state for  n weeks etc.
 
 I think that would make sense only if it solved all or almost all of the
 problems.
 

Well, decent tagging and search does seem to cover most of these.

 
 I think there's some file you can add to the repository that'll be displayed
 automatically when attempting to file a new issue. This can direct users to
 Bugzilla.

That would work.

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


[Issue 12269] Unittest within template struct scope is not executed

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12269



--- Comment #7 from growler...@gmail.com 2014-02-28 05:21:40 PST ---
The compiler can't execute the unit test because it can't POSSIBLY know what to
instantiate the template with. It's like asking someone to verify that a
mathematical equation is sound, but leaving half of the variables as blanks.
---

No, I'm arguing the unittest should not be part of the equation as they are now
relying on template parameters (when in template scope). 

A unittest should be forced to define all variables to test the equation with,
irrespective of where it is defined.

But it is minor and I may not be seeing the bigger picture here so I'll drop it
and move on :D

Thanks again,
ed

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


[Issue 12254] Github interaction improvement proposals (via user.js or addins)

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12254


yebblies yebbl...@gmail.com changed:

   What|Removed |Added

 CC||yebbl...@gmail.com


--- Comment #6 from yebblies yebbl...@gmail.com 2014-03-01 00:24:00 EST ---
I'm not sure about this, but we could try enabling issues on the repositories. 
This would let us tag and assign pull requests, and the autotester could tag
pulls as passing/failing.  We could even have a bot that could tag pulls as
stale if they have been in the 'needs work' state for  n weeks etc.

The downside is that people might start reporting actual issues there instead
of here, but it might be worth the extra bookkeeping.

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


[Issue 12277] New: static opCall is hidden by @disabled constructors and can never be called

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12277

   Summary: static opCall is hidden by @disabled constructors and
can never be called
   Product: D
   Version: D2
  Platform: All
OS/Version: All
Status: NEW
  Severity: normal
  Priority: P3
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: remotio...@gmail.com


--- Comment #0 from Remo remotio...@gmail.com 2014-02-28 04:59:12 PST ---
struct S
{
@disable this();
@disable this(this);

this(int i){ }
static S opCall(){
S s = S(123);
return s;
}
}

This fails to compile with static opCall is hidden by constructors and can
never be called.
But the default ctor is disabled.

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


[Issue 12272] and(), or(), xor() to compose predicates

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12272


yebblies yebbl...@gmail.com changed:

   What|Removed |Added

 CC||yebbl...@gmail.com


--- Comment #2 from yebblies yebbl...@gmail.com 2014-03-01 01:05:44 EST ---
(In reply to comment #0)
 In Java8 there are functions like and() or() xor() that are handy to compose
 predicates:
 
 PredicateString startsWithJ = (n) - n.startsWith(J);
 PredicateString fourLetterLong = (n) - n.length() == 4;
 names.stream().filter(startsWithJ.and(fourLetterLong))
 
 In D:
 
 auto startsWithJ = (string n) = n.startsWith(J);
 auto fourLetterLong = (string n) = n.length == 4;
 names.filter!(and!(startsWithJ, fourLetterLong))

Lambdas make this pretty easy...

names.filter!(s = s.startsWithJ  s.fourLetterLong)

Slightly longer, but _much_ more flexible.

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


[Issue 12272] and(), or(), xor() to compose predicates

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12272



--- Comment #3 from bearophile_h...@eml.cc 2014-02-28 06:18:45 PST ---
(In reply to comment #2)

 Lambdas make this pretty easy...
 
 names.filter!(s = s.startsWithJ  s.fourLetterLong)
 
 Slightly longer, but _much_ more flexible.

With those templates you can define a new predicate in point-free style
(std.functional.compose!() does something similar for arbitrary functions):

alias two = and!(startsWithJ, fourLetterLong);

With lambdas it becomes similar to:

enum two = (in string s) = s.startsWithJ  s.fourLetterLong;

So are you suggesting to close down this ER because it's not useful enough?

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


[Issue 12252] struct default constructors that execute code.

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12252


yebblies yebbl...@gmail.com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||yebbl...@gmail.com
 Resolution||DUPLICATE


--- Comment #2 from yebblies yebbl...@gmail.com 2014-02-28 23:51:14 EST ---
*** This issue has been marked as a duplicate of issue 3852 ***

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


[Issue 12218] [AA] inserting into associative array invalidates foreach iteration

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12218


yebblies yebbl...@gmail.com changed:

   What|Removed |Added

 CC||yebbl...@gmail.com


--- Comment #5 from yebblies yebbl...@gmail.com 2014-03-01 01:21:53 EST ---
I can confirm this was not intended to work, and it most likely never will.  It
should be possible for the compiler to detect this and give you an error.

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


[Issue 12218] [AA] inserting into associative array invalidates foreach iteration

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12218


bearophile_h...@eml.cc changed:

   What|Removed |Added

 CC||bearophile_h...@eml.cc


--- Comment #6 from bearophile_h...@eml.cc 2014-02-28 06:35:25 PST ---
(In reply to comment #5)
 I can confirm this was not intended to work, and it most likely never will.  
 It
 should be possible for the compiler to detect this and give you an error.

Yes, while fixing it in general is probably not possible, giving a good
compile-time error is a good thing.

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


[Issue 11962] VisualD needs an option to choose the CRT to link against

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11962



--- Comment #9 from Manu turkey...@gmail.com 2014-02-28 07:53:44 PST ---
I just noticed there's a typo in the selection menu.
You list 'Dynamic Release' twice, the second should be 'Dynamic Debug'.

Also, it would be best to make debug builds default to the debug one if not
explicitly selected, VS2012 won't link against the release one anymore in debug
builds.

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


[Issue 12272] and(), or(), xor() to compose predicates

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12272



--- Comment #4 from yebblies yebbl...@gmail.com 2014-03-01 03:00:09 EST ---
(In reply to comment #3)

 With those templates you can define a new predicate in point-free style
 (std.functional.compose!() does something similar for arbitrary functions):

IIRC std.functional.compose predates lambdas

 
 alias two = and!(startsWithJ, fourLetterLong);
 
 With lambdas it becomes similar to:
 
 enum two = (in string s) = s.startsWithJ  s.fourLetterLong;

I expect we will soon be able to do this:

alias two = s = s.startsWithJ  s.fourLetterLong;

 
 So are you suggesting to close down this ER because it's not useful enough?

I don't think this is worth adding to phobos.  Of course what you do with this
ER is up to you.

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


[Issue 11810] std.stdio.byLine/readln performance is very bad

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=11810


Nick Treleaven ntrel-pub...@yahoo.co.uk changed:

   What|Removed |Added

 CC||ntrel-pub...@yahoo.co.uk


--- Comment #7 from Nick Treleaven ntrel-pub...@yahoo.co.uk 2014-02-28 
08:55:17 PST ---
(In reply to comment #5)
 Created an attachment (id=1305) [details]
 byLineFast with small changes

BTW I'm working on porting this to std.stdio.byLine, I'll submit a PR when
finished.

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


[Issue 12272] and(), or(), xor() to compose predicates

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12272


bearophile_h...@eml.cc changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||INVALID


--- Comment #5 from bearophile_h...@eml.cc 2014-02-28 09:46:41 PST ---
(In reply to comment #4)

 I expect we will soon be able to do this:
 
 alias two = s = s.startsWithJ  s.fourLetterLong;

I see no plans for this yet.


 Of course what you do with this ER is up to you.

Your opinion is always welcome.


 I don't think this is worth adding to phobos.  

OK, closed.

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


[Issue 12251] Use of BigInts in triple operator too

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12251


bearophile_h...@eml.cc changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


--- Comment #6 from bearophile_h...@eml.cc 2014-02-28 10:00:30 PST ---
(In reply to comment #5)
 This appears to be fixed.

Yes, closed. But I'd like to know what has fixed this issue (and perhaps some
tests could be added to keep this fixed).

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


[Issue 12251] Use of BigInts in triple operator too

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12251


yebblies yebbl...@gmail.com changed:

   What|Removed |Added

 Resolution|FIXED   |WORKSFORME


--- Comment #7 from yebblies yebbl...@gmail.com 2014-03-01 05:06:49 EST ---
That's a good idea.

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


[Issue 12278] New: __traits(classInstanceSize) returns wrong value if used before class is declared

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12278

   Summary: __traits(classInstanceSize) returns wrong value if
used before class is declared
   Product: D
   Version: D2
  Platform: All
OS/Version: All
Status: NEW
  Severity: normal
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: destructiona...@gmail.com


--- Comment #0 from Adam D. Ruppe destructiona...@gmail.com 2014-02-28 
10:21:05 PST ---
class Foo {
InPlace!Bar inside;
}

class Bar { }

struct InPlace(T) {
pragma(msg, __traits(classInstanceSize, T));
private byte[__traits(classInstanceSize, T)] rawData;

void initializeObject() {
pragma(msg, __traits(classInstanceSize, T));
}
}


dmd bug.d
0u
8u


The first one, where the static array is declared, gives 0. The correct value
of 8 is given inside the function.


If you move `class Bar{}` to above Foo's definition, it correctly gives 8 at
both msgs.

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


[Issue 12156] static import of std.ascii in std.regex causes conflict

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12156


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

   What|Removed |Added

 CC||c...@dawg.eu


--- Comment #3 from Martin Nowak c...@dawg.eu 2014-02-28 11:58:15 PST ---
The problem here is that the private alias from `static import ascii =
std.ascii` conflicts with the public alias in `alias ascii = char`.

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


[Issue 12279] New: function local imports are not hijack safe

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12279

   Summary: function local imports are not hijack safe
   Product: D
   Version: unspecified
  Platform: All
OS/Version: All
Status: NEW
  Severity: normal
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: c...@dawg.eu


--- Comment #0 from Martin Nowak c...@dawg.eu 2014-02-28 12:45:29 PST ---
cat  a.d  CODE
void kill(string) {}
CODE

cat  b.d  CODE
void kill(int, int) {}

void foo()
{
import a;
kill(0, 1);
}
CODE

dmd -c b.d


b.d(6): Error: function a.kill (string) is not callable using argument types
(int, int)


Local imports should have the same overload/lookup behavior as global imports,
but they obey a lexical scope.

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


[Issue 12280] New: Redundant template instance ... error instantiating messages

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12280

   Summary: Redundant template instance ... error instantiating
messages
   Product: D
   Version: D2
  Platform: All
OS/Version: All
Status: NEW
  Keywords: diagnostic
  Severity: enhancement
  Priority: P3
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: thecybersha...@gmail.com


--- Comment #0 from Vladimir Panteleev thecybersha...@gmail.com 2014-03-01 
00:24:41 EET ---
Consider the program:

/// test.d ///
void f(int i)()
{
static if (i  10)
f!(i+1);
else
nonexistent();
}

alias f0 = f!0;
//

When compiled, the compiler output is:

test.d(6,3): Error: undefined identifier nonexistent
test.d(4,3): Error: template instance test.f!10 error instantiating
test.d(9,12):11 recursive instantiations from here: f!0
test.d(4,3): Error: template instance test.f!9 error instantiating
test.d(9,12):10 recursive instantiations from here: f!0
test.d(4,3): Error: template instance test.f!8 error instantiating
test.d(9,12):9 recursive instantiations from here: f!0
test.d(4,3): Error: template instance test.f!7 error instantiating
test.d(9,12):8 recursive instantiations from here: f!0
test.d(4,3): Error: template instance test.f!6 error instantiating
test.d(9,12):7 recursive instantiations from here: f!0
test.d(4,3): Error: template instance test.f!5 error instantiating
test.d(4,3):instantiated from here: f!4
test.d(4,3):instantiated from here: f!3
test.d(4,3):instantiated from here: f!2
test.d(4,3):instantiated from here: f!1
test.d(9,12):instantiated from here: f!0
test.d(4,3): Error: template instance test.f!4 error instantiating
test.d(4,3):instantiated from here: f!3
test.d(4,3):instantiated from here: f!2
test.d(4,3):instantiated from here: f!1
test.d(9,12):instantiated from here: f!0
test.d(4,3): Error: template instance test.f!3 error instantiating
test.d(4,3):instantiated from here: f!2
test.d(4,3):instantiated from here: f!1
test.d(9,12):instantiated from here: f!0
test.d(4,3): Error: template instance test.f!2 error instantiating
test.d(4,3):instantiated from here: f!1
test.d(9,12):instantiated from here: f!0
test.d(4,3): Error: template instance test.f!1 error instantiating
test.d(9,12):instantiated from here: f!0

However, only the first 3 lines describe the error adequately. The template
instance ... error instantiating lines are redundant, as the template
instantiation trace is printed already.

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


[Issue 12273] 'dmd -color' flag to colorize error/warning messages

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12273


Nick Sabalausky cbkbbej...@mailinator.com changed:

   What|Removed |Added

 CC||cbkbbej...@mailinator.com


--- Comment #5 from Nick Sabalausky cbkbbej...@mailinator.com 2014-02-28 
14:32:45 PST ---
Instead of a flag, wouldn't it be better to just do what the unixy tools do and
automatically colorize if-and-only-if it detects it's outputting to an
interactive shell? (Not sure whether that's doable on Windows though.)

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


[Issue 12281] New: MSCOFF output + MSLINK for x86/Win32

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12281

   Summary: MSCOFF output + MSLINK for x86/Win32
   Product: D
   Version: D2
  Platform: x86
OS/Version: Windows
Status: NEW
  Severity: enhancement
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: turkey...@gmail.com


--- Comment #0 from Manu turkey...@gmail.com 2014-02-28 19:25:40 PST ---
We have MSCOFF output for Win64, which ultimately makes DMD useful on windows,
but it's not always possible to ship x64 binaries; there are still many 32bit
machines in the wild.
We really need MSCOFF support for Win32 aswell.
I saw Rainer has done a lot of work in a branch already, this needs a concerted
push to get it across the line to complete Windows support.

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


[Issue 12272] and(), or(), xor() to compose predicates

2014-02-28 Thread d-bugmail
https://d.puremagic.com/issues/show_bug.cgi?id=12272



--- Comment #6 from yebblies yebbl...@gmail.com 2014-03-01 14:50:16 EST ---
(In reply to comment #5)
 (In reply to comment #4)
 
  I expect we will soon be able to do this:
  
  alias two = s = s.startsWithJ  s.fourLetterLong;
 
 I see no plans for this yet.
 

The plans are in my head.  You can currently do this:

alias Alias(alias a) = a;
alias two = Alias!(s = s.startsWithJ  s.fourLetterLong);

So the limitation appears to just be syntactical.

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