Jump to page: 1 26  
Page
Thread overview
[dmd-beta] D2 2.058 beta
Feb 09, 2012
Walter Bright
Feb 09, 2012
Sönke Ludwig
Feb 09, 2012
Sönke Ludwig
Feb 09, 2012
Walter Bright
Feb 09, 2012
Sönke Ludwig
Feb 09, 2012
Walter Bright
Feb 09, 2012
Sönke Ludwig
Feb 09, 2012
Don Clugston
Feb 09, 2012
Martin Nowak
Feb 09, 2012
Walter Bright
Feb 09, 2012
Martin Nowak
Feb 11, 2012
Martin Nowak
Feb 11, 2012
Martin Nowak
Feb 13, 2012
Walter Bright
Feb 13, 2012
Martin Nowak
Feb 13, 2012
Walter Bright
Feb 09, 2012
Sönke Ludwig
Feb 09, 2012
d coder
Feb 09, 2012
d coder
Feb 09, 2012
kenji hara
Feb 09, 2012
Andrej Mitrovic
Feb 09, 2012
Andrej Mitrovic
Feb 09, 2012
Andrej Mitrovic
Feb 09, 2012
Jacob Carlborg
Feb 09, 2012
Andrej Mitrovic
Feb 10, 2012
Jacob Carlborg
Feb 09, 2012
Walter Bright
Feb 09, 2012
Andrej Mitrovic
Feb 10, 2012
Walter Bright
Feb 09, 2012
Walter Bright
Feb 09, 2012
David Nadlinger
Feb 09, 2012
kenji hara
Feb 10, 2012
Walter Bright
Feb 09, 2012
Nils Boßung
Feb 10, 2012
Walter Bright
Feb 09, 2012
Nick Sabalausky
Feb 09, 2012
Nick Sabalausky
Feb 10, 2012
Walter Bright
Feb 10, 2012
Masahiro Nakagawa
Feb 10, 2012
Walter Bright
Feb 10, 2012
Masahiro Nakagawa
Feb 10, 2012
Martin Nowak
Feb 10, 2012
Jonathan M Davis
Feb 11, 2012
Walter Bright
Feb 11, 2012
Martin Nowak
Feb 11, 2012
Walter Bright
Feb 11, 2012
Martin Nowak
Feb 11, 2012
kenji hara
Feb 11, 2012
Martin Nowak
Feb 11, 2012
kenji hara
Feb 11, 2012
Martin Nowak
Feb 11, 2012
kenji hara
Feb 11, 2012
Masahiro Nakagawa
Feb 11, 2012
kenji hara
February 09, 2012
http://ftp.digitalmars.com/dmd2beta.zip
February 09, 2012
Am 09.02.2012 09:16, schrieb Walter Bright:
> http://ftp.digitalmars.com/dmd2beta.zip
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta

The deprecation of base class protection seems to have overshot its goal a bit - implemented _interfaces_ are now also not allowed to be prefixed with a protection attribute, although this can make perfect sense.

Another thing is that while private selective imports are not public anymore, private renamed imports now conflict in other modules in this scenario:
---
module a;
import std = b;
module b;
import a;
void f(){ std.stdio.writefln("X"); } // Error: std at  conflicts with
std at a.d(2)
---

I'm also getting an error in cgcs.c line 354 on a "piece" of code that previously errored on line 162/cgcs.c (the fixed bug 6177). I will run dustmite on it and see where it comes from. Not sure if the two are related to the same root cause or if this is a regresseion.

All in all this is that first release after quite some for which I had to change a whole lot of code - but changed in a good, cleaning-up way. So actually I really appreciate this.
February 09, 2012
Greetings

I am getting linking errors when I compile with the current beta release. No problems when I compile with 2.057 release.

qwave.o: In function
`_D3std9exception44__T9enforceExTC3std6format15FormatExceptionZ16__T9enforceExTbZ9enforceExFNaNfbLAyaAyamZb':
parse.d:(.text._D3std9exception44__T9enforceExTC3std6format15FormatExceptionZ16__T9enforceExTbZ9enforceExFNaNfbLAyaAyamZb+0x4c):
undefined reference to
`_D3std6format15FormatException6__ctorMFAyaAyamC6object9ThrowableZC3std6format15FormatException'

regards
- Puneet
February 09, 2012
The error went away as soon as I removed dmd 2.057 from my machine.

Sorry for the false call. I should have been more careful.

Regards
- Puneet
February 09, 2012
>________________________________
> From: S?nke Ludwig <ludwig at informatik.uni-luebeck.de>
> 
>Am 09.02.2012 09:16, schrieb Walter Bright:
>> http://ftp.digitalmars.com/dmd2beta.zip
>> _______________________________________________
>> dmd-beta mailing list
>> dmd-beta at puremagic.com
>> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>
>The deprecation of base class protection seems to have overshot its goal a bit - implemented _interfaces_ are now also not allowed to be prefixed with a protection attribute, although this can make perfect sense.

Right, an interface is a public desription of what a class can do.? I can't see any valid use case for private or protected interfaces.

-Steve

February 09, 2012
>>________________________________
>> From: S?nke Ludwig <ludwig at informatik.uni-luebeck.de>
>>
>>Am 09.02.2012 09:16, schrieb Walter Bright:
>>> http://ftp.digitalmars.com/dmd2beta.zip
>>> _______________________________________________
>>> dmd-beta mailing list
>>> dmd-beta at puremagic.com
>>> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>>
>>The deprecation of base class protection seems to have overshot its goal
>> a bit - implemented _interfaces_ are now also not allowed to be prefixed with a protection attribute, although this can make perfect sense.
>
> Right, an interface is a public desription of what a class can do.? I can't see any valid use case for private or protected interfaces.
>
> -Steve
>
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>

Artificial example (I have a different use case, but the pronciple is
similar):

interface ILinkedListItem {
  LinkedListItem next();
  void next(LinkedListItem v);
}

LinkedList objectStore;

class C : protected ILinkedListItem {
  this()
  {
    objectStore.add(this);
  }

  protected LinkedListItem next() {...}
  protected void next(LinkedListItem v) {...}
}

So the intent is that you don't have access to these methods from the outside, but that C can still implement the interface to pass it only to certain receivers (the objectStore list in this case).

February 09, 2012
This is not a fix for any regressions, but need for correct behavior of eponymous template trick described in TDPL. https://github.com/D-Programming-Language/dmd/pull/639

Please merge it in 2.058.

Kenji Hara
2012/2/9 Walter Bright <walter at digitalmars.com>:
> http://ftp.digitalmars.com/dmd2beta.zip
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
February 09, 2012



----- Original Message -----
> From: S?nke Ludwig <ludwig at informatik.uni-luebeck.de>
>
> Artificial example (I have a different use case, but the pronciple is
> similar):
> 
> interface ILinkedListItem {
> ? LinkedListItem next();
> ? void next(LinkedListItem v);
> }
> 
> LinkedList objectStore;
> 
> class C : protected ILinkedListItem {
> ? this()
> ? {
> ? ? objectStore.add(this);
> ? }
> 
> ? protected LinkedListItem next() {...}
> ? protected void next(LinkedListItem v) {...}
> }
> 
> So the intent is that you don't have access to these methods from the outside, but that C can still implement the interface to pass it only to certain receivers (the objectStore list in this case).

1. using a template for a container like linked list is preferred to using interfaces. 2. you can achieve something similar using inner classes or class literals:

class C
{
?? private class LLItem : ILinkedListItem{
????? LinkedListItem next() {...}
????? void next(LinkedListItem v) {...}
?? }

?? this()
?? {
?????? objectStore.add(new LLItem);
?? }
}

-Steve

February 09, 2012
On 2/9/12, kenji hara <k.hara.pg at gmail.com> wrote:
> This is not a fix for any regressions, but need for correct behavior of eponymous template trick described in TDPL. https://github.com/D-Programming-Language/dmd/pull/639
>
> Please merge it in 2.058.

Vote++. If it doesn't break anything it's finally going to make eponymous templates work like in TDPL.

Walter I know  that you generally don't want to add fixes at the last second, but since this is a TDPL-related bug I think it should go in.
February 09, 2012
Walter what happened to https://github.com/D-Programming-Language/d-programming-language.org/pull/46 ?
« First   ‹ Prev
1 2 3 4 5 6