Thread overview
visibility bug
Dec 27, 2005
David Medlock
Dec 27, 2005
Manfred Nowak
Dec 27, 2005
Chris Miller
December 27, 2005
Well I guess I couldn't stay away til '06 !

Here is the test case:

// vis.d
import  std.stream, std.ctype, std.stdio;

void main( char[][] args )
{
  char c = ' ';
  if ( isdigit(c) ) writefln( "Hello World" );
}


which gives( DMD 0.141, WinXP ):

---------- Capture Output ----------
> "Z:\dmd\bin\dmd.exe" -c F:\proj\d\test\vis.d
Z:\dmd\bin\..\src\phobos\std\stream.d(2912): function std.stream.isdigit conflicts with std.ctype.isdigit at Z:\dmd\bin\..\src\phobos\std\ctype.d(32)
F:\proj\d\test\vis.d: module vis std.stream.isdigit is private

> Terminated with exit code 1.

the private members of stream should not even exist outside that module, if I read the specs correctly.

-DavidM
December 27, 2005
David Medlock wrote:

{...]
> the private members of stream should not even exist outside that module, if I read the specs correctly.

The specs installed by my installation of dmd 0.141 only define accessability: not one word on visibility.

By the way: `private' symbols cannot be overriden?

-manfred
December 27, 2005
On Tue, 27 Dec 2005 10:24:55 -0500, David Medlock <noone@nowhere.com> wrote:

> the private members of stream should not even exist outside that module,


I agree completely. This has bothered me for quite some time.