[Issue 4185] Existence of an empty, uncalled function that takes a global variable as its parameter generates segfaulting executable using DMD = 2.044.

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4185



--- Comment #2 from Bernard Helyer blood.of.l...@gmail.com 2010-05-14 
03:58:06 PDT ---
If bar is declared as __gshared, the executable behaves correctly.

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


[Issue 4184] associative array with certain key types results in corrupt values during iteration

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4184



--- Comment #5 from Steven Schveighoffer schvei...@yahoo.com 2010-05-14 
04:31:27 PDT ---
I confirm, it fixes the problems in dcollections, thanks.

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


[Issue 4185] Existence of an empty, uncalled function that takes a TLS variable as its parameter generates segfaulting executable using DMD = 2.044.

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4185


Steven Schveighoffer schvei...@yahoo.com changed:

   What|Removed |Added

 CC||schvei...@yahoo.com


--- Comment #3 from Steven Schveighoffer schvei...@yahoo.com 2010-05-14 
04:58:16 PDT ---
I can't reproduce this on Linux 2.045 and the current beta.  Can you try a
clean install of the compiler?

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


[Issue 4186] New: Forward reference error from static function with no return type

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4186

   Summary: Forward reference error from static function with no
return type
   Product: D
   Version: future
  Platform: x86
OS/Version: Windows
Status: NEW
  Severity: normal
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: bearophile_h...@eml.cc


--- Comment #0 from bearophile_h...@eml.cc 2010-05-14 04:59:19 PDT ---
This is D2 code:


static foo() {
return 1.0;
}
enum double x = foo(); // line 4
void main() {}


dmd v2.045 shows at compile time:
test.d(4): Error: forward reference to foo


The error message is wrong in two ways:
- It doesn't show the error of the missing return type of foo at line 1
- There is a forward reference error that D isn't supposed to generate here

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


[Issue 4185] Existence of an empty, uncalled function that takes a TLS variable as its parameter generates segfaulting executable using DMD = 2.044.

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4185



--- Comment #4 from Bernard Helyer blood.of.l...@gmail.com 2010-05-14 
05:07:13 PDT ---
Yep.

What arch are you on? How much memory do you have installed (myself == x86, 1.5
GiB). Like I said, I think this is memory corruption of some description, so
it's bound to be nebulous.

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


[Issue 4185] Existence of an empty, uncalled function that takes a TLS variable as its parameter generates segfaulting executable using DMD = 2.044.

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4185



--- Comment #5 from Steven Schveighoffer schvei...@yahoo.com 2010-05-14 
05:10:31 PDT ---
I'm on x86 1 Gb.

What flags do you pass to the compiler?

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


[Issue 4185] Existence of an empty, uncalled function that takes a TLS variable as its parameter generates segfaulting executable using DMD = 2.044.

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4185



--- Comment #8 from Bernard Helyer blood.of.l...@gmail.com 2010-05-14 
05:14:37 PDT ---
Steven, sorry. :o

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


[Issue 2810] Forward reference to an auto function

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=2810


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

   What|Removed |Added

 CC||bearophile_h...@eml.cc


--- Comment #7 from Rainer Schuetze r.sagita...@gmx.de 2010-05-14 09:11:21 
PDT ---
*** Issue 4186 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 4186] Forward reference error from static function with no return type

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4186


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

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||r.sagita...@gmx.de
 Resolution||DUPLICATE


--- Comment #1 from Rainer Schuetze r.sagita...@gmx.de 2010-05-14 09:11:21 
PDT ---
The static without return type implies auto. This is a variation of bug 2810,
and the patch there also fixes this testcase.

*** This issue has been marked as a duplicate of issue 2810 ***

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


[Issue 2933] Cannot return const/immutable with contracts (out/invariant) enabled

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=2933


Don clugd...@yahoo.com.au changed:

   What|Removed |Added

 CC||clugd...@yahoo.com.au


--- Comment #4 from Don clugd...@yahoo.com.au 2010-05-14 12:29:43 PDT ---
On svn 484(DMD 2.046), this patch doesn't fix the test case. It's possible that
the patch will work once bug 3667 is fixed, but I haven't tested that.

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


[Issue 4164] sieve Sample D Program

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4164


Walter Bright bugzi...@digitalmars.com changed:

   What|Removed |Added

 CC||bugzi...@digitalmars.com


--- Comment #1 from Walter Bright bugzi...@digitalmars.com 2010-05-14 
16:30:47 PDT ---
Are you sure it gives the wrong answer? I've seen this code for 25 years.

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


[Issue 4187] New: Error Message for std.file.remove outputting wrong file and line

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4187

   Summary: Error Message for std.file.remove outputting wrong
file and line
   Product: D
   Version: 2.041
  Platform: Other
OS/Version: Windows
Status: NEW
  Keywords: diagnostic
  Severity: normal
  Priority: P2
 Component: Phobos
AssignedTo: nob...@puremagic.com
ReportedBy: jesse.k.phillip...@gmail.com
CC: jesse.k.phillip...@gmail.com


--- Comment #0 from Jesse Phillips jesse.k.phillip...@gmail.com 2010-05-14 
16:41:15 PDT ---
Using remove on a file that does not exist will result in a compiler error that
not clear what the issue is example below:

import std.file;

void main() {
   remove(IDontExist.txt);
}


std.file.FileException: In std\file.d(400), data file IDontExist.txt: The
operation completed successfully.

The exception is return the the file and line number in std.file rather than
the line in my code.

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


[Issue 4188] New: std.file.remove throws Exception on success

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4188

   Summary: std.file.remove throws Exception on success
   Product: D
   Version: 2.041
  Platform: Other
OS/Version: Windows
Status: NEW
  Severity: normal
  Priority: P2
 Component: Phobos
AssignedTo: nob...@puremagic.com
ReportedBy: jesse.k.phillip...@gmail.com
CC: jesse.k.phillip...@gmail.com


--- Comment #0 from Jesse Phillips jesse.k.phillip...@gmail.com 2010-05-14 
16:46:02 PDT ---
Using remove on a file that does not exist will result in a exception that is
not clear what the issue is, example below:

import std.file;

void main() {
   remove(IDontExist.txt);
}


std.file.FileException: In std\file.d(400), data file IDontExist.txt: The
operation completed successfully.

The FileException states the operation completed successfully this is not
actually the case since there was nothing to remove.

Even though it had nothing to remove I think it is reasonable to consider the
operation successful at which point it shouldn't be throwing an Exception.

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


[Issue 4189] New: Bus errors with array operations

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4189

   Summary: Bus errors with array operations
   Product: D
   Version: future
  Platform: x86
OS/Version: Mac OS X
Status: NEW
  Severity: normal
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: pillsbury+db...@gmail.com


--- Comment #0 from Matt Pillsbury pillsbury+db...@gmail.com 2010-05-14 
18:35:49 PDT ---
Using an arithmetic operations on arrays causes bus errors when compiling with
DMD 2.046 on Mac OS 10.6.3.

void main ()
{
  auto vec = new double[10];

  foreach(i, ref x; vec) { x = cast(double) i; }

  vec[] *= 0.5; 
}

This compiles with no errors or warnings, and a bus error results when the
resulting binary is executed.

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


[Issue 4143] fix warnings in dmd build

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4143


Walter Bright bugzi...@digitalmars.com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||bugzi...@digitalmars.com
 Resolution||FIXED


--- Comment #1 from Walter Bright bugzi...@digitalmars.com 2010-05-14 
19:57:50 PDT ---
Some of these date back to when gcc didn't support %p, so I used %lx instead.
Time to fix them.

Changeset 487

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


[Issue 4164] sieve Sample D Program -- need documentation for array representation

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4164


Steven Schveighoffer schvei...@yahoo.com changed:

   What|Removed |Added

 CC||schvei...@yahoo.com
Summary|sieve Sample D Program  |sieve Sample D Program --
   ||need documentation for
   ||array representation


--- Comment #2 from Steven Schveighoffer schvei...@yahoo.com 2010-05-14 
20:38:19 PDT ---
The issue is there is no documentation.  The array actually represents the
values 3 to 16383 inclusive, with a stride of 2.

i.e. index 0 represents the number 3, index 1 represents the number 5.  This
relationship can be seen in the prime = i + i + 3 line.

With that in mind, the code is correct, it's just confusing :)

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


[Issue 4164] sieve Sample D Program -- need documentation for array representation

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4164



--- Comment #3 from Walter Bright bugzi...@digitalmars.com 2010-05-14 
21:45:48 PDT ---
Steven wrote in the n.g.:

I think the issue is that the expectation is that array index x represents the
number x.  But it doesn't seem that way.

the i + i + 3 is very odd indeed.

If we consider each index, it means the first element represents 0 + 0 + 3 = 3;
The second element represents 1 + 1 + 3 = 5;
The third element represents 2 + 2 + 3 = 7;

So it looks like the numbers represented by the array actually go from 3 to
(8190 + 8190 + 3) or 16383.

According to Wolfram Alpha, the number of primes in that list is 1899

http://www.wolframalpha.com/input/?i=primes+in+3+..+16383

A comment to explain the representation of the array may be good.

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


[Issue 4190] New: unable reduce aseert partial template in is

2010-05-14 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=4190

   Summary: unable reduce aseert partial template in is
   Product: D
   Version: unspecified
  Platform: Other
OS/Version: All
Status: NEW
  Severity: normal
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: galaxyl...@gmail.com


--- Comment #0 from galaxylang galaxyl...@gmail.com 2010-05-14 22:01:23 PDT 
---
class if_else(I,E)
{
}
template reduce(T)
{
//here,can't be complie becase if_else not instanced
//also there is  no way to alias the I and E
static if(is(T:if_else))
{
}else
{
}
}
void main()
{
}

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