Re: dmd beta mailing list
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
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
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
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...
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...
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
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...
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
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
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
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...
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...
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...
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...
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
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...
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...
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
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
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
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?
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?
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?
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 ?
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 ?
-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
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
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
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
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
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
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
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
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
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
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
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
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
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: ---