[Issue 3680] default struct constructor should not be removed

2010-01-19 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=3680



--- Comment #8 from Michel Nolard michel.nol...@gmail.com 2010-01-19 02:50:53 
PST ---
* This comment is more a remainder for myself than a new comment. *

There is a way to introduce a opAssign( typeof( this ) rhs ) using templates,
although it is prohibited. The technique can be _accidentally_ (I ensure you
this really happens) used to add a opCall or this with the wrong signature.
This is based on the fact that the template's type inference occurs at a
different time than the opAssign's signature validation.

I just have to find back where I used it to give you an example to be sure that
that case also is managed in the proposal.

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


[Issue 605] Problem w/ function overload resultion and enums.

2010-01-19 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=605


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

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||clugd...@yahoo.com.au
 Resolution||FIXED


--- Comment #1 from Don clugd...@yahoo.com.au 2010-01-19 08:33:11 PST ---
This was fixed between 0.175 and 1.000.
(The example works in 1.053, but not in 1.054; however, that's an unrelated
regression).

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


[Issue 3723] New: Regression: forward referenced enum

2010-01-19 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=3723

   Summary: Regression: forward referenced enum
   Product: D
   Version: 1.054
  Platform: Other
OS/Version: Windows
Status: NEW
  Keywords: rejects-valid
  Severity: regression
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: clugd...@yahoo.com.au


--- Comment #0 from Don clugd...@yahoo.com.au 2010-01-19 08:44:58 PST ---
This code worked on 1.053, fails to compile on 1.054, and on D2.
I suspect this was caused by the fix to bug 3611.
-
FwdEnum this_fails;

enum :int
{
E1 =  2
}

enum FwdEnum: int
{
E2 =  E1
}
-
bug.d(10): Error: undefined identifier E1

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


[Issue 3650] functions are considered pointers

2010-01-19 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=3650



--- Comment #4 from nfx...@gmail.com 2010-01-19 12:30:59 PST ---
PS: as far as is() is concerned, functions should just work like delegates. Any
difference should be considered as bug.

Also, if this happens not to be a bug, please mark it as enhancement, and not
as invalid (like I said above).

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


[Issue 3719] forward references can cause out-of-memory error

2010-01-19 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=3719


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

   What|Removed |Added

 CC||bugzi...@digitalmars.com


--- Comment #1 from Walter Bright bugzi...@digitalmars.com 2010-01-19 
18:52:34 PST ---
Changeset 342

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


[Issue 3724] New: bug in Expression::arraySyntaxCopy (null pointer dereference on struct-union-struct

2010-01-19 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=3724

   Summary: bug in Expression::arraySyntaxCopy (null pointer
dereference on struct-union-struct
   Product: D
   Version: 2.039
  Platform: x86
OS/Version: Linux
Status: NEW
  Severity: normal
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: bary...@smp.if.uj.edu.pl


--- Comment #0 from Witold Baryluk bary...@smp.if.uj.edu.pl 2010-01-19 
19:14:35 PST ---
In case of code similar to this

struct v {
  union {
 struct { float a, b; }
 struct { float c[2]; }
  }
}

(it is more complicated than just this sample, to trigger this bug.
I can't easly produce small example)


file expression.c
method Expression *StructLiteralExp::semantic(Scope *sc)
performs kind of flatening, and adds member c to array elements,
but in case on union memberrs it adds them as null:
relevant lines:
line 3373
 if (v-offset  offset)
 {   e = NULL;
 sd-hasUnions = 1;
 }


and line 3393
  elements-push(e)


Fix:
In file expression.c line 1477
method Expressions *Expression::arraySyntaxCopy(Expressions *exps)
add condition:

 for (int i = 0; i  a-dim; i++)
 {   Expression *e = (Expression *)exps-data[i];
-e = e-syntaxCopy();
+   if (e)
+e = e-syntaxCopy();
a-data[i] = e;^M
 }


Without it, optimize.c lines 86-87 will call indirectly this method, when some
(last) elemenets of exps is/are nulls, and segfault.

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


[Issue 3725] New: Add united type to standard library

2010-01-19 Thread d-bugmail
http://d.puremagic.com/issues/show_bug.cgi?id=3725

   Summary: Add united type to standard library
   Product: D
   Version: unspecified
  Platform: All
OS/Version: All
Status: NEW
  Severity: enhancement
  Priority: P2
 Component: Phobos
AssignedTo: nob...@puremagic.com
ReportedBy: shro8...@vandals.uidaho.edu


--- Comment #0 from BCS shro8...@vandals.uidaho.edu 2010-01-19 22:26:28 PST 
---
After some interest was expressed (
http://www.digitalmars.com/webnews/newsgroups.php?art_group=digitalmars.Darticle_id=104904
) for having a type that keeps track of units (e.g. seconds, feet, grams, etc.)
I cleaned up my version of this.

http://www.dsource.org/projects/scrapple/browser/trunk/units/si2.d
http://www.dsource.org/projects/scrapple/browser/trunk/units/rational.d

I'm willing to license it however is needed to get it added to Phobos (and I'll
make the same offer for tango).

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