www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 3740] New: build tango error

reply d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=3740

           Summary: build tango error
           Product: D
           Version: unspecified
          Platform: x86
        OS/Version: Windows
            Status: NEW
          Severity: regression
          Priority: P2
         Component: DMD
        AssignedTo: nobody puremagic.com
        ReportedBy: changlon gmail.com


--- Comment #0 from changlon <changlon gmail.com> 2010-01-25 01:44:19 PST ---
build tango error since svn r342 to r354 , test on (window 32 & ububtu i386 9.4
& freebsd i386  7.2)


i can't reduced this issue.

---------------------------

dmd -release -O -I.. -I../tango/core -I../tango/core/vendor -c
../tango/io/selector/SelectSelector.d -ofio-selector-SelectSelector.obj 
..\tango\io\selector\SelectSelector.d(515): Error: class
tango.io.selector.SelectSelector.SelectSelectionSet interface function
ISelectionSet.length isn't implemented
..\tango\io\selector\SelectSelector.d(515): Error: class
tango.io.selector.SelectSelector.SelectSelectionSet interface function
ISelectionSet.opApply isn't implemented


dmd -release -O -I.. -I../tango/core -I../tango/core/vendor -c
../tango/net/device/Berkeley.d -ofnet-device-Berkeley.obj 
..\tango\net\device\Berkeley.d(596): Error: cannot create instance of abstract
class IPv4Address
..\tango\net\device\Berkeley.d(596): Error: function toString is abstract
..\tango\net\device\Berkeley.d(596): Error: function name is abstract
..\tango\net\device\Berkeley.d(596): Error: function nameLen is abstract
..\tango\net\device\Berkeley.d(596): Error: function addressFamily is abstract


dmd -release -O -I.. -I../tango/core -I../tango/core/vendor -c
../tango/net/device/Multicast.d -ofnet-device-Multicast.obj 
..\tango\net\device\Multicast.d(99): Error: cannot create instance of abstract
class InternetAddress
..\tango\net\device\Multicast.d(99): Error: function toString is abstract
..\tango\net\device\Multicast.d(99): Error: function name is abstract
..\tango\net\device\Multicast.d(99): Error: function nameLen is abstract
..\tango\net\device\Multicast.d(99): Error: function addressFamily is abstract


dmd -release -O -I.. -I../tango/core -I../tango/core/vendor -c
../tango/net/device/Socket.d -ofnet-device-Socket.obj 
..\tango\net\device\Socket.d(138): Error: cannot create instance of abstract
class IPv4Address
..\tango\net\device\Socket.d(138): Error: function toString is abstract
..\tango\net\device\Socket.d(138): Error: function name is abstract
..\tango\net\device\Socket.d(138): Error: function nameLen is abstract
..\tango\net\device\Socket.d(138): Error: function addressFamily is abstract
..\tango\net\device\Socket.d(535): Error: cannot create instance of abstract
class IPv4Address
..\tango\net\device\Socket.d(535): Error: function toString is abstract
..\tango\net\device\Socket.d(535): Error: function name is abstract
..\tango\net\device\Socket.d(535): Error: function nameLen is abstract
..\tango\net\device\Socket.d(535): Error: function addressFamily is abstract


dmd -release -O -I.. -I../tango/core -I../tango/core/vendor -c
../tango/net/device/SSLSocket.d -ofnet-device-SSLSocket.obj 
..\tango\net\device\SSLSocket.d(360): Error: cannot create instance of abstract
class IPv4Address
..\tango\net\device\SSLSocket.d(360): Error: function toString is abstract
..\tango\net\device\SSLSocket.d(360): Error: function name is abstract
..\tango\net\device\SSLSocket.d(360): Error: function nameLen is abstract
..\tango\net\device\SSLSocket.d(360): Error: function addressFamily is abstract


dmd -release -O -I.. -I../tango/core -I../tango/core/vendor -c
../tango/net/ftp/FtpClient.d -ofnet-ftp-FtpClient.obj 
..\tango\net\ftp\FtpClient.d(481): Error: cannot create instance of abstract
class IPv4Address
..\tango\net\ftp\FtpClient.d(481): Error: function toString is abstract
..\tango\net\ftp\FtpClient.d(481): Error: function name is abstract
..\tango\net\ftp\FtpClient.d(481): Error: function nameLen is abstract
..\tango\net\ftp\FtpClient.d(481): Error: function addressFamily is abstract
..\tango\net\ftp\FtpClient.d(489): Error: cannot create instance of abstract
class IPv4Address
..\tango\net\ftp\FtpClient.d(489): Error: function toString is abstract
..\tango\net\ftp\FtpClient.d(489): Error: function name is abstract
..\tango\net\ftp\FtpClient.d(489): Error: function nameLen is abstract
..\tango\net\ftp\FtpClient.d(489): Error: function addressFamily is abstract
..\tango\net\ftp\FtpClient.d(491): Error: cannot create instance of abstract
class IPv4Address
..\tango\net\ftp\FtpClient.d(491): Error: function toString is abstract
..\tango\net\ftp\FtpClient.d(491): Error: function name is abstract
..\tango\net\ftp\FtpClient.d(491): Error: function nameLen is abstract
..\tango\net\ftp\FtpClient.d(491): Error: function addressFamily is abstract


dmd -release -O -I.. -I../tango/core -I../tango/core/vendor -c
../tango/net/http/HttpClient.d -ofnet-http-HttpClient.obj 
..\tango\net\http\HttpClient.d(150): Error: cannot create instance of abstract
class Uri
..\tango\net\http\HttpClient.d(150): Error: function toString is abstract
..\tango\net\http\HttpClient.d(150): Error: function defaultPort is abstract
..\tango\net\http\HttpClient.d(150): Error: function scheme is abstract
..\tango\net\http\HttpClient.d(150): Error: function host is abstract
..\tango\net\http\HttpClient.d(150): Error: function port is abstract
..\tango\net\http\HttpClient.d(150): Error: function validPort is abstract
..\tango\net\http\HttpClient.d(150): Error: function userinfo is abstract
..\tango\net\http\HttpClient.d(150): Error: function path is abstract
..\tango\net\http\HttpClient.d(150): Error: function query is abstract
..\tango\net\http\HttpClient.d(150): Error: function fragment is abstract
..\tango\net\http\HttpClient.d(150): Error: function isGeneric is abstract
..\tango\net\http\HttpClient.d(180): Error: cannot create instance of abstract
class InternetAddress
..\tango\net\http\HttpClient.d(180): Error: function toString is abstract
..\tango\net\http\HttpClient.d(180): Error: function name is abstract
..\tango\net\http\HttpClient.d(180): Error: function nameLen is abstract
..\tango\net\http\HttpClient.d(180): Error: function addressFamily is abstract
..\tango\net\http\HttpClient.d(491): Error: function
tango.net.http.HttpParams.HttpParams.produce (uint delegate(void[]),char[])
does not match parameter types (int delegate(void[] p))
..\tango\net\http\HttpClient.d(491): Error: cannot implicitly convert
expression (__dgliteral1) of type int delegate(void[] p) to uint
delegate(void[])
..\tango\net\http\HttpClient.d(509): Error: cannot implicitly convert
expression (__dgliteral2) of type int delegate(OutputBuffer o) to void
delegate(OutputBuffer)


dmd -release -O -I.. -I../tango/core -I../tango/core/vendor -c
../tango/net/http/HttpGet.d -ofnet-http-HttpGet.obj 
..\tango\net\http\HttpGet.d(48): Error: cannot create instance of abstract
class Uri
..\tango\net\http\HttpGet.d(48): Error: function toString is abstract
..\tango\net\http\HttpGet.d(48): Error: function defaultPort is abstract
..\tango\net\http\HttpGet.d(48): Error: function scheme is abstract
..\tango\net\http\HttpGet.d(48): Error: function host is abstract
..\tango\net\http\HttpGet.d(48): Error: function port is abstract
..\tango\net\http\HttpGet.d(48): Error: function validPort is abstract
..\tango\net\http\HttpGet.d(48): Error: function userinfo is abstract
..\tango\net\http\HttpGet.d(48): Error: function path is abstract
..\tango\net\http\HttpGet.d(48): Error: function query is abstract
..\tango\net\http\HttpGet.d(48): Error: function fragment is abstract
..\tango\net\http\HttpGet.d(48): Error: function isGeneric is abstract


dmd -release -O -I.. -I../tango/core -I../tango/core/vendor -c
../tango/net/http/HttpPost.d -ofnet-http-HttpPost.obj 
..\tango\net\http\HttpPost.d(49): Error: cannot create instance of abstract
class Uri
..\tango\net\http\HttpPost.d(49): Error: function toString is abstract
..\tango\net\http\HttpPost.d(49): Error: function defaultPort is abstract
..\tango\net\http\HttpPost.d(49): Error: function scheme is abstract
..\tango\net\http\HttpPost.d(49): Error: function host is abstract
..\tango\net\http\HttpPost.d(49): Error: function port is abstract
..\tango\net\http\HttpPost.d(49): Error: function validPort is abstract
..\tango\net\http\HttpPost.d(49): Error: function userinfo is abstract
..\tango\net\http\HttpPost.d(49): Error: function path is abstract
..\tango\net\http\HttpPost.d(49): Error: function query is abstract
..\tango\net\http\HttpPost.d(49): Error: function fragment is abstract
..\tango\net\http\HttpPost.d(49): Error: function isGeneric is abstract
..\tango\net\http\HttpPost.d(117): Error: function
tango.net.http.HttpPost.HttpPost.write () does not match parameter types (int
delegate(OutputBuffer b))
..\tango\net\http\HttpPost.d(117): Error: cannot implicitly convert expression
(__dgliteral1) of type int delegate(OutputBuffer b) to void[]
..\tango\net\http\HttpPost.d(117): Error: expected 2 function arguments, not 1


dmd -release -O -I.. -I../tango/core -I../tango/core/vendor -c
../tango/net/util/MemCache.d -ofnet-util-MemCache.obj 
..\tango\net\util\MemCache.d(409): Error: cannot create instance of abstract
class InternetAddress
..\tango\net\util\MemCache.d(409): Error: function toString is abstract
..\tango\net\util\MemCache.d(409): Error: function name is abstract
..\tango\net\util\MemCache.d(409): Error: function nameLen is abstract
..\tango\net\util\MemCache.d(409): Error: function addressFamily is abstract

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Jan 25 2010
next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=3740


Don <clugdbug yahoo.com.au> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |clugdbug yahoo.com.au
            Summary|build tango error           |Regression: class with fwd
                   |                            |reference of a nested
                   |                            |struct breaks abstract


--- Comment #1 from Don <clugdbug yahoo.com.au> 2010-01-25 03:18:16 PST ---
Reduced test case. If a class contains a forward reference of a nested struct,
it stays abstract.
-----------------

abstract class Address {
    abstract int nameLen();
}

class Class3740 : Address {
    FwdStruct z;

    struct FwdStruct  {  }

    int nameLen()    { return 0; }
}

void cantdo () {
        Class3740 xxx = new Class3740;
}

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Jan 25 2010
prev sibling next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=3740


Walter Bright <bugzilla digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bugzilla digitalmars.com


--- Comment #2 from Walter Bright <bugzilla digitalmars.com> 2010-01-27
11:37:08 PST ---
Changeset 356

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Jan 27 2010
prev sibling next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=3740


Leandro Lucarella <llucax gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |llucax gmail.com


--- Comment #3 from Leandro Lucarella <llucax gmail.com> 2010-01-27 13:51:49
PST ---
Thanks for the fix, but, speaking about the patch, is it a good idea to shadow
an object attribute with a local variable like this?

Index: /trunk/src/func.c
===================================================================
--- /trunk/src/func.c (revision 354)
+++ /trunk/src/func.c (revision 356)
   -131,8 +131,19   
     return;
     }
+
+    parent = sc->parent;
+    Dsymbol *parent = toParent();
+


I think it could be a little error prone, maybe it's a good idea to change the
local variable name :)

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
Jan 27 2010
prev sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=3740


Walter Bright <bugzilla digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED


--- Comment #4 from Walter Bright <bugzilla digitalmars.com> 2010-01-30
22:43:23 PST ---
fixed dmd 1.056 and 2.040

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