Re: dmd beta mailing list

2010-01-05 Thread Walter Bright

grauzone wrote:
Why are you creating these as mailing lists and not as 
news.digitalmars.com groups?


Because I expect it to be very low traffic, and I wouldn't expect people 
to constantly have to check the n.g. to see if the beta is available. It 
also gives feedback on who actually cares about the beta.


Re: dmd beta mailing list

2010-01-05 Thread BCS

Hello Walter,


grauzone wrote:


Why are you creating these as mailing lists and not as
news.digitalmars.com groups?


Because I expect it to be very low traffic, and I wouldn't expect
people to constantly have to check the n.g. to see if the beta is
available. 


A decent NG client will do that for them and then pop up a notification window.


It also gives feedback on who actually cares about the
beta.



OTOH that's a valid point, up to a point. What about lurkers?




Re: dmd beta mailing list

2010-01-05 Thread grauzone

Walter Bright wrote:

Walter Bright wrote:

grauzone wrote:
Why are you creating these as mailing lists and not as 
news.digitalmars.com groups?


Because I expect it to be very low traffic, and I wouldn't expect 
people to constantly have to check the n.g. to see if the beta is 
available. It also gives feedback on who actually cares about the beta.


There's also the fact that there's a very small barrier to subscribing 
to a mailing list - only people who are particularly interested in it 
will bother. I've seen the mailing list approach used elsewhere because 
of this, and it works well.


Why would you put up a barrier for beta-testing?

The concurrency mailing list I can understand (that's Andrei's thing).


Compare in ParaSail

2010-01-05 Thread bearophile
From:
http://parasail-programming-language.blogspot.com/2009/10/using-in-parasail-to-implement-etc.html

ParaSail skirts this issue by requiring the user to define only one operator, 
=?, which returns a value from the enumeration Less, Equal, Greater, 
Unordered.  The comparison and equality operators are defined in terms of =? 
[...] Unordered is used for types with only a partial ordering (or no 
ordering at all).  Ordered is defined as the subtype containing only the 
values Equal, Less, and Greater.  The typical generic Sort operation 
would expect a =? operator whose result is guaranteed (via a postcondition) 
to be within the Ordered subtype. The =? operator can be used explicitly 
if desired, which is often convenient when searching a binary tree:

Bye,
bearophile


A newer WinDBG version, please...

2010-01-05 Thread A Bothe
Like I wrote in the D.Debuggers forum:

Hi everyone,

after seeking for symbolic debuggers for D I noticed that there's a newer 
version of WinDBG

http://www.microsoft.com/whdc/devtools/debugging/installx86.Mspx

I tried this one with the latest (D 2.0.3.7) DMD version and it worked!

http://digitalmars.com/d/2.0/windbg.html says that other versions of WinDBG 
don't work
...so why don't pack this new version into the DMD .zip ?


Re: A newer WinDBG version, please...

2010-01-05 Thread Walter Bright

A Bothe wrote:

Like I wrote in the D.Debuggers forum:

Hi everyone,

after seeking for symbolic debuggers for D I noticed that there's a
newer version of WinDBG

http://www.microsoft.com/whdc/devtools/debugging/installx86.Mspx

I tried this one with the latest (D 2.0.3.7) DMD version and it
worked!

http://digitalmars.com/d/2.0/windbg.html says that other versions of
WinDBG don't work ...so why don't pack this new version into the DMD
.zip ?


The installer is 17Mb for one reason :-(


Named variadic arguments

2010-01-05 Thread bearophile
Coming from this question, named variadic arguments:
http://www.digitalmars.com/webnews/newsgroups.php?art_group=digitalmars.D.learnarticle_id=18586

It's a possible way to implement something like this Python code:
def foo(x, y, **kwds):
  # here kwds is a dict of str:value

With another kind of typesafe variadic function:
void foo(int x, int y, Box[string] kwds ...) {}

foo(1, 2, z:10, w:30);
==
In foo kwds == [z:box(10), w:box(30)];
(Variant or something else can be used instead of Box.)

Bye,
bearophile


Re: A newer WinDBG version, please...

2010-01-05 Thread A Bothe
Walter Bright Wrote:

 A Bothe wrote:
  Like I wrote in the D.Debuggers forum:
  
  Hi everyone,
  
  after seeking for symbolic debuggers for D I noticed that there's a
  newer version of WinDBG
  
  http://www.microsoft.com/whdc/devtools/debugging/installx86.Mspx
  
  I tried this one with the latest (D 2.0.3.7) DMD version and it
  worked!
  
  http://digitalmars.com/d/2.0/windbg.html says that other versions of
  WinDBG don't work ...so why don't pack this new version into the DMD
  .zip ?
 
 The installer is 17Mb for one reason :-(

Hmm... but anyway a link to the Microsoft site would also be enough


Re: Compare in ParaSail

2010-01-05 Thread Andrei Alexandrescu

bearophile wrote:

From:
http://parasail-programming-language.blogspot.com/2009/10/using-in-parasail-to-implement-etc.html


ParaSail skirts this issue by requiring the user to define only one operator, =?, which returns a value from the enumeration Less, Equal, Greater, Unordered.  The comparison and 
equality operators are defined in terms of =? [...] Unordered is used for types with only a partial ordering (or no ordering at all).  Ordered is defined as 
the subtype containing only the values Equal, Less, and Greater.  The typical generic Sort operation would expect a =? operator 
whose result is guaranteed (via a postcondition) to be within the Ordered subtype. The =? operator can be used explicitly if desired, which is often convenient when 
searching a binary tree:


Bye,
bearophile


That means no static checking of ordered vs. unordered types.

Andrei


Compiler as a service in C# 4.0

2010-01-05 Thread Bill Baxter
This blog post points to part of a talk by Anders Hejlsberg at PDC
talking about where they're going with C# 4.0:
http://dobbscodetalk.com/index.php?option=com_myblogshow=C-Sharp-4.0-with-a-REPL-Read-Eval-Print-Loop-.htmlItemid=29

The part of this vid
http://channel9.msdn.com/pdc2008/TL16/
which he points to at 60 minutes talks about the compiler as a service.

It's an idea which has been mentioned here many times, so I thought I
would post this link.  Very cool that C# is going to make this idea a
reality.

--bb


Re: Compiler as a service in C# 4.0

2010-01-05 Thread Andrei Alexandrescu

Bill Baxter wrote:

This blog post points to part of a talk by Anders Hejlsberg at PDC
talking about where they're going with C# 4.0:
http://dobbscodetalk.com/index.php?option=com_myblogshow=C-Sharp-4.0-with-a-REPL-Read-Eval-Print-Loop-.htmlItemid=29

The part of this vid
http://channel9.msdn.com/pdc2008/TL16/
which he points to at 60 minutes talks about the compiler as a service.

It's an idea which has been mentioned here many times, so I thought I
would post this link.  Very cool that C# is going to make this idea a
reality.

--bb


Interesting, thanks for the link. At 12:16 - But of course there are 
many things we need to think about: immutable objects, purity of 
functions, isolation... and these are things that are heavily on our 
mind day-to-day. It's good to know D has all of the above taken care of.



Andrei


Re: A newer WinDBG version, please...

2010-01-05 Thread BCS

Hello A,


Walter Bright Wrote:


A Bothe wrote:


Like I wrote in the D.Debuggers forum:

Hi everyone,

after seeking for symbolic debuggers for D I noticed that there's a
newer version of WinDBG

http://www.microsoft.com/whdc/devtools/debugging/installx86.Mspx

I tried this one with the latest (D 2.0.3.7) DMD version and it
worked!

http://digitalmars.com/d/2.0/windbg.html says that other versions of
WinDBG don't work ...so why don't pack this new version into the DMD
.zip ?


The installer is 17Mb for one reason :-(


Hmm... but anyway a link to the Microsoft site would also be enough



I haven't tried it yet, but if it's better than the old thing; Yes, please! 
The poor state of debugging in D is IMHO one of the major roadblocks.





Re: A newer WinDBG version, please...

2010-01-05 Thread Don

A Bothe wrote:

Like I wrote in the D.Debuggers forum:

Hi everyone,

after seeking for symbolic debuggers for D I noticed that there's a newer 
version of WinDBG

http://www.microsoft.com/whdc/devtools/debugging/installx86.Mspx

I tried this one with the latest (D 2.0.3.7) DMD version and it worked!


Is there a trick to getting it to work? I've tried to use it to debug 
DMD itself, but I only get a disassembly listing.




http://digitalmars.com/d/2.0/windbg.html says that other versions of WinDBG 
don't work
...so why don't pack this new version into the DMD .zip ?




Re: A newer WinDBG version, please...

2010-01-05 Thread torhu

On 05.01.2010 10:27, A Bothe wrote:

Like I wrote in the D.Debuggers forum:

Hi everyone,

after seeking for symbolic debuggers for D I noticed that there's a newer 
version of WinDBG

http://www.microsoft.com/whdc/devtools/debugging/installx86.Mspx

I tried this one with the latest (D 2.0.3.7) DMD version and it worked!

http://digitalmars.com/d/2.0/windbg.html says that other versions of WinDBG 
don't work
...so why don't pack this new version into the DMD .zip ?


I've had great success with just using msvc 9, and this tool: 
http://www.dsource.org/projects/cv2pdb/wiki


Re: A newer WinDBG version, please...

2010-01-05 Thread Bane
BCS Wrote:

 Hello A,
 
  Walter Bright Wrote:
  
  A Bothe wrote:
  
  Like I wrote in the D.Debuggers forum:
  
  Hi everyone,
  
  after seeking for symbolic debuggers for D I noticed that there's a
  newer version of WinDBG
  
  http://www.microsoft.com/whdc/devtools/debugging/installx86.Mspx
  
  I tried this one with the latest (D 2.0.3.7) DMD version and it
  worked!
  
  http://digitalmars.com/d/2.0/windbg.html says that other versions of
  WinDBG don't work ...so why don't pack this new version into the DMD
  .zip ?
  
  The installer is 17Mb for one reason :-(
  
  Hmm... but anyway a link to the Microsoft site would also be enough
  
 
 I haven't tried it yet, but if it's better than the old thing; Yes, please! 
 The poor state of debugging in D is IMHO one of the major roadblocks.
 
 

Bah. Real programmers don't need to debug their programs :)


Re: Compiler as a service in C# 4.0

2010-01-05 Thread Nick Sabalausky
Bill Baxter wbax...@gmail.com wrote in message 
news:mailman.7.1262710304.4461.digitalmar...@puremagic.com...
 This blog post points to part of a talk by Anders Hejlsberg at PDC
 talking about where they're going with C# 4.0:
 http://dobbscodetalk.com/index.php?option=com_myblogshow=C-Sharp-4.0-with-a-REPL-Read-Eval-Print-Loop-.htmlItemid=29

 The part of this vid
 http://channel9.msdn.com/pdc2008/TL16/
 which he points to at 60 minutes talks about the compiler as a service.

 It's an idea which has been mentioned here many times, so I thought I
 would post this link.  Very cool that C# is going to make this idea a
 reality.

 --bb

I thought C# compiling was already part of the .NET library...? 




Re: A newer WinDBG version, please...

2010-01-05 Thread Sean Kelly
BCS Wrote:

 Hello A,
 
  Walter Bright Wrote:
  
  A Bothe wrote:
  
  Like I wrote in the D.Debuggers forum:
  
  Hi everyone,
  
  after seeking for symbolic debuggers for D I noticed that there's a
  newer version of WinDBG
  
  http://www.microsoft.com/whdc/devtools/debugging/installx86.Mspx
  
  I tried this one with the latest (D 2.0.3.7) DMD version and it
  worked!
  
  http://digitalmars.com/d/2.0/windbg.html says that other versions of
  WinDBG don't work ...so why don't pack this new version into the DMD
  .zip ?
  
  The installer is 17Mb for one reason :-(
  
  Hmm... but anyway a link to the Microsoft site would also be enough
  
 
 I haven't tried it yet, but if it's better than the old thing; Yes, please! 
 The poor state of debugging in D is IMHO one of the major roadblocks.

I recall DDBG being pretty nice.  Or isn't it maintained any longer?


Re: A newer WinDBG version, please...

2010-01-05 Thread Denis Koroskin
On Wed, 06 Jan 2010 03:44:54 +0300, Sean Kelly s...@invisibleduck.org  
wrote:



BCS Wrote:


Hello A,

 Walter Bright Wrote:

 A Bothe wrote:

 Like I wrote in the D.Debuggers forum:

 Hi everyone,

 after seeking for symbolic debuggers for D I noticed that there's a
 newer version of WinDBG

 http://www.microsoft.com/whdc/devtools/debugging/installx86.Mspx

 I tried this one with the latest (D 2.0.3.7) DMD version and it
 worked!

 http://digitalmars.com/d/2.0/windbg.html says that other versions of
 WinDBG don't work ...so why don't pack this new version into the DMD
 .zip ?

 The installer is 17Mb for one reason :-(

 Hmm... but anyway a link to the Microsoft site would also be enough


I haven't tried it yet, but if it's better than the old thing; Yes,  
please!

The poor state of debugging in D is IMHO one of the major roadblocks.


I recall DDBG being pretty nice.  Or isn't it maintained any longer?


ddbg is, indeed, very good, but last update to it was 2 years ago.


Re: GDC for Windows 2.014

2010-01-05 Thread Jesse Phillips
Steve Teale wrote:

 The DMD main page says Gnu D compiler gdc  for several platforms, including 
 Windows and Mac OS X  for D versions 1.030 and 2.014.

 Anyone know where I find Windows GDC 2.014?

 Thanks

Yes I do.

Oh, ummm: http://bitbucket.org/goshawk/gdc/wiki/Home

Too bad the sourceforge site isn't being used for this.


Re: Compiler as a service in C# 4.0

2010-01-05 Thread Jussi Jumppanen
Nick Sabalausky Wrote:

 I thought C# compiling was already part of the .NET library...? 

It is.

Class: CSharpCodeProvider
Namespace:  Microsoft.CSharp
Assembly:  System (in System.dll)

Provides access to instances of the C# code generator and code compiler.



Re: Compiler as a service in C# 4.0

2010-01-05 Thread Andrei Alexandrescu

Jussi Jumppanen wrote:

Nick Sabalausky Wrote:

I thought C# compiling was already part of the .NET library...? 


It is.

Class: CSharpCodeProvider
Namespace:  Microsoft.CSharp
Assembly:  System (in System.dll)

Provides access to instances of the C# code generator and code compiler.



The REPL in Hejlsberg's demo requires a bit more than what 
CSharpCodeProvider offers. Instead of compiling an entire file, the loop 
needs to compile a code snippet and save the resulting environment for 
further evaluations.


The changes in the compiler aren't huge, and the effect is quite nice.


Andrei


Re: Are named variadic arguments possible?

2010-01-05 Thread bearophile
Alex Wrote:

 Is it possible, using templates, tuples, or some other mechanism, to 
 implement named variadic arguments in D?

Do you need high performance for this code?
If not, what about using an associative array of Variant[string] as third 
argument? It's not a nice solution.

Bye,
bearophile


Re: Are named variadic arguments possible?

2010-01-05 Thread bearophile
 Do you need high performance for this code?
 If not, what about using an associative array of Variant[string] as third 
 argument? It's not a nice solution.

It's not a nice solution, but that's essentially what Python does in such 
situation:
def foo(x, y, **kwds):
  # here kwds is a dict of str:value

In D there are Typesafe Variadic Functions, you can use:
int sum(int[] ar ...) {
To define a function that takes an arbitrary number of ints or a dynamic array 
of ints (and maybe fixed sized array of int too).
Another (weird! never used) alternative usage of the Typesafe Variadic 
Functions is to build an object on the fly.

So that syntax may be extended to support:
void foo(Variant[string] kwds ...) {
}

I may show this silly idea in the main D newsgroup later today.

Bye,
bearophile


Re: Are named variadic arguments possible?

2010-01-05 Thread downs
Alex wrote:
 Is it possible, using templates, tuples, or some other mechanism, to 
 implement named variadic arguments in D?
 
 For example, I'd like to be able to do something like...
 foo( 2, bar, age : 10, status : down);
 
 and so forth.

Yes, with a small hack.

typedef int age_type;

age_type age(int i) { return cast(age_type) i; }

void foo(T...)(int i, Bar*, T t) {
  // Test T for age_type here.
}


Are scope class useful ?

2010-01-05 Thread #ponce
When I started D, it was possible to define a scope class like this.

scope class Something
{
// blah
}

An instance declaration would then _require_ the scope storage class.


{
scope Something myVar;
   // do something with Something
}

Is there a use case for such a feature.?


Re: Are scope class useful ?

2010-01-05 Thread div0
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

#ponce wrote:
 When I started D, it was possible to define a scope class like this.
 
 scope class Something
 {
 // blah
 }
 
 An instance declaration would then _require_ the scope storage class.
 
 
 {
 scope Something myVar;
// do something with Something
 }
 
 Is there a use case for such a feature.?

Yes. One of the uses is when you are wrapping some sort of OS resource.

I've got a scope class which I use for file access;
stops you accidentally leaving the file open  locked.

I also use scope classes for storing intermediate results in complex
algorithms when I want deterministic collection. Use scope classes
and it all gets cleaned up when the algorithm finishes.

- --
My enormous talent is exceeded only by my outrageous laziness.
http://www.ssTk.co.uk
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.7 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iD8DBQFLQ4cJT9LetA9XoXwRAsv8AJ0TiP7Qy4kOKf0WmWPuyYv5qtzsNACeOoCH
sBUmQ67xWzjrSMB27o149i4=
=hGvN
-END PGP SIGNATURE-


Re: Call diagram generation

2010-01-05 Thread BCS

Hello Strt,


Lutger Wrote:


On 01/03/2010 04:31 AM, Strt wrote:


How can I generate some sort of call diagram from my D code?


you can compile with (dmd) -profile and run the executable. This
produces a file called trace.log which contains timings for each
function and a call graph. It doesn't produce a diagram and has
mangled symbols though.

You can demangle with std.demangle, read the trace.log with descent
or use this utility:
http://www.dsource.org/projects/scrapple/wiki/PtraceUtility

I haven't updated ptrace in quite a while, so I'm not sure if it
still works.


I just noticed it is called a call graph, being directed and all.

I really just needed the visual thing and seeing that I need to get
tango to work to use ptrace (and then maybe it won't work) I really
should just take pencil and paper, I think. Also, it is only a
sub-section (30 functions or so)  I'm interested in.

Thanks anyway!



With a little persitance, I'd bet that you could make a awk/grep/sed system 
that would convert that output to a graphviz file. With a little fun using 
pragma(msg,...) and .mangleof you could even get demangled symbols.





[Issue 3674] New: forward reference error with multiple overloads with same name

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

   Summary: forward reference error with multiple overloads with
same name
   Product: D
   Version: 2.037
  Platform: Other
OS/Version: Windows
Status: NEW
  Keywords: rejects-valid
  Severity: normal
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: r.sagita...@gmx.de


--- Comment #0 from Rainer Schuetze r.sagita...@gmx.de 2010-01-05 00:24:36 
PST ---
The following code fails to compile:

public interface IQGraphicsItem
{
public QGraphicsObject toGraphicsObject();
public QGraphicsObject toGraphicsObject() const;
}

public class QGraphicsLineItem : IQGraphicsItem
{
public final QGraphicsObject toGraphicsObject() { return null; } // Line 10
public final QGraphicsObject toGraphicsObject() const { return null; }
}

public abstract class QGraphicsObject : IQGraphicsItem // line 14
{
public final QGraphicsObject toGraphicsObject() { return null; }
public final QGraphicsObject toGraphicsObject() const { return null; }
}

with error:

test.d(14): Error: class test.QGraphicsObject base class is forward referenced
by QGraphicsObject

Actually the error is caused on by the reference in line 11.
The error does not happen there is only a single method toGraphicsObject().

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


[Issue 3674] forward reference error with multiple overloads with same name

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


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

   What|Removed |Added

   Keywords||patch


--- Comment #1 from Rainer Schuetze r.sagita...@gmx.de 2010-01-05 00:36:08 
PST ---
The error occurs when dmd tries to match the overloaded member function to the
functions in the base class, but hits the slightly different prototype. It then
tries to check the return type for covariance, which fails on the forward
referenced class.

here's a patch (or maybe just a workaround as I'm not perfectly sure what this
does to erronous declarations), but it also fixes the problem, if the return
type is actually a forward referenced covariant class.

Index: func.c
===
--- func.c(revision 324)
+++ func.c(working copy)
@@ -510,9 +510,20 @@
 /* Only need to have a tintro if the vptr
  * offsets differ
  */
+unsigned errors = global.errors;
+global.gag++;// suppress printing of error messages
 int offset;
-if (fdv-type-nextOf()-isBaseOf(type-nextOf(), offset))
+int baseOf = fdv-type-nextOf()-isBaseOf(type-nextOf(),
offset);
+global.gag--;// suppress printing of error messages
+if(errors != global.errors)
 {
+// any error in isBaseOf() is a forward reference error, so we
bail out
+global.errors = errors;
+cd-sizeok = 2;// can't finish due to forward reference
+return;
+}
+if (baseOf)
+{
 ti = fdv-type;
 #if 0
 if (offset)

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


[Issue 3675] New: Regression: Struct literals cannot be initialized with another struct literal

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

   Summary: Regression: Struct literals cannot be initialized with
another struct literal
   Product: D
   Version: 2.035
  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-05 01:14:34 PST ---
Worked in DMD2.034, fails on 2.035 and later.
And where the heck did the type int come from???

struct CopyTest
{
   double x;
}

enum CopyTest z = CopyTest(5.3);
enum CopyTest w = z;
--
bug.d(6): Error: cannot implicitly convert expression ((CopyTest)(5.3)) of type
int to CopyTest

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


[Issue 3673] inheritance + if clause = no go

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


Max Samukha samu...@voliacable.com changed:

   What|Removed |Added

 CC||samu...@voliacable.com


--- Comment #1 from Max Samukha samu...@voliacable.com 2010-01-05 03:00:42 
PST ---
This syntax is supported:

interface OutputRange(T...) if (T.length  1)
: OutputRange!(T[0]), OutputRange!(T[1 .. $])
{
}

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


[Issue 3673] inheritance + if clause = no go

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



--- Comment #2 from Max Samukha samu...@voliacable.com 2010-01-05 04:22:26 
PST ---
Also, each interface adds sizeof(void*) bytes to the class instance size. While
recursive inheritance provides a separate interface for each type, which may be
a nice property, the overhead, for example, of OutputRange!basicTypes would be
significant.

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


[Issue 3675] Regression: Struct literals cannot be initialized with another struct literal

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


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

   What|Removed |Added

   Keywords||patch


--- Comment #1 from Don clugd...@yahoo.com.au 2010-01-05 04:38:28 PST ---
ROOT CAUSE: This was a bug in my patch to bug 3190.

PATCH:
expression.c, DsymbolExp::semantic(), line 2359.

if ((v-storage_class  STCmanifest)  v-init)
{
e = v-init-toExpression();
-e-semantic(sc);
+e = e-semantic(sc);
return e;
}

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


[Issue 3673] inheritance + if clause = no go

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



--- Comment #3 from Andrei Alexandrescu and...@metalanguage.com 2010-01-05 
06:04:40 PST ---
Thanks, Max. Yah, the overhead is kinda crippling. I'm also thinking of
TextOutputRange, which is an alias for OutputRange!(const(char)[],
const(wchar)[], const(dchar)[], char, wchar, dchar). That would be 24 bytes to
boot. Maybe I better use a recursive mixin to generate all functions inside the
interface.

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


[Issue 52] ambiguous function pointer silently accepted

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


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

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


--- Comment #11 from Don clugd...@yahoo.com.au 2010-01-05 07:09:05 PST ---
This was fixed in DMD1.048 !!!

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


[Issue 3677] New: null dereference with offset not memo...@safe

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

   Summary: null dereference with offset not memo...@safe
   Product: D
   Version: 2.038
  Platform: x86_64
OS/Version: Mac OS X
Status: NEW
  Severity: normal
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: michel.for...@michelf.com


--- Comment #0 from Michel Fortin michel.for...@michelf.com 2010-01-05 
10:11:57 EST ---
This supposedly safe program under Mac OS X 10.6 doesn't give any error
neither at compile time nor at runtime, yet it isn't memory-safe at all as it
corrupts some part of the memory space.

struct S {
uint[10] a;
uint b;
}

S* s = null;

@safe void main() {
s.b = 1;
}

This happen because the offset for member b is very far, allowing it to falls
on another memory page which happen to exists.

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


[Issue 3633] Optimizer causes access violation

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



--- Comment #4 from Janzert janz...@janzert.com 2010-01-05 14:14:12 PST ---
Thanks for the quick fix.

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


[Issue 3678] New: Should disallow throwing of exceptions that are not derived from Exception

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

   Summary: Should disallow throwing of exceptions that are not
derived from Exception
   Product: D
   Version: unspecified
  Platform: Other
OS/Version: All
Status: NEW
  Severity: enhancement
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: bugzi...@digitalmars.com


--- Comment #0 from Walter Bright bugzi...@digitalmars.com 2010-01-05 
20:09:32 PST ---
In particular, instances of type Object cannot be thrown.

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


[Issue 3679] New: template forward reference regression

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

   Summary: template forward reference regression
   Product: D
   Version: 2.032
  Platform: All
OS/Version: All
Status: NEW
  Severity: regression
  Priority: P2
 Component: DMD
AssignedTo: nob...@puremagic.com
ReportedBy: 2kor...@gmail.com


--- Comment #0 from Koroskin Denis 2kor...@gmail.com 2010-01-05 20:25:12 PST 
---
Test case:

module test;

public class Derived : public Base
{
}

class Template(T)
{
}

alias Template!(bool) TemplateAlias;

class Base
{
TemplateAlias templateAlias;
}

# dmd test.d
test.d(13): Error: forward reference to 'Template!(bool)'
test.d(13): Error: TemplateAlias is used as a type
test.d(13): Error: variable test.Base.templateAlias voids have no value

Regression since DMD2.031, blocker for me to upgrate to a newer compiler
version.

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