www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 211] New: Linking error with alias mixin params and anonymous methods

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

           Summary: Linking error with alias mixin params and anonymous
                    methods
           Product: D
           Version: 0.160
          Platform: PC
        OS/Version: Windows
            Status: NEW
          Keywords: link-failure
          Severity: normal
          Priority: P2
         Component: DMD
        AssignedTo: bugzilla digitalmars.com
        ReportedBy: h3r3tic mat.uni.torun.pl


// tmp7.d:

template Foo(alias f) {
}

class Bar {
        mixin Foo!( function {} );
}

void main() {
}


// result:


D:\WINDOWS\system32\cmd.exe /c dmd tmp7.d
d:\coding\dmd\bin\..\..\dm\bin\link.exe tmp7,,,user32+kernel32/noi;
OPTLINK (R) for Win32  Release 7.50B1
Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved

tmp7.obj(tmp7)
 Error 42: Symbol Undefined _D4tmp73Bar14__funcliteral1FZv


-- 
Jun 19 2006
next sibling parent Thomas Kuehne <thomas-dloop kuehne.cn> writes:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

d-bugmail puremagic.com schrieb am 2006-06-19:
 http://d.puremagic.com/issues/show_bug.cgi?id=211

 template Foo(alias f) {
 }

 class Bar {
         mixin Foo!( function {} );
 }

 void main() {
 }


 // result:


 D:\WINDOWS\system32\cmd.exe /c dmd tmp7.d
 d:\coding\dmd\bin\..\..\dm\bin\link.exe tmp7,,,user32+kernel32/noi;
 OPTLINK (R) for Win32  Release 7.50B1
 Copyright (C) Digital Mars 1989 - 2001  All Rights Reserved

 tmp7.obj(tmp7)
  Error 42: Symbol Undefined _D4tmp73Bar14__funcliteral1FZv

Added to DStress as http://dstress.kuehne.cn/run/m/mixin_23_A.d http://dstress.kuehne.cn/run/m/mixin_23_B.d http://dstress.kuehne.cn/run/m/mixin_23_C.d http://dstress.kuehne.cn/run/m/mixin_23_D.d Thomas -----BEGIN PGP SIGNATURE----- iD8DBQFErlXLLK5blCcjpWoRAiX0AKCYL6of1wSxKKBFgCxxUaj8d5GF+gCgjLSp hPs9Pu9dwh4A7VVpUa0fkI0= =8eOf -----END PGP SIGNATURE-----
Jul 07 2006
prev sibling next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=211


thomas-dloop kuehne.cn changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         OS/Version|Windows                     |All




------- Comment #1 from thomas-dloop kuehne.cn  2007-01-01 04:25 -------
test cases:
http://dstress.kuehne.cn/run/m/mixin_23_A.d
http://dstress.kuehne.cn/run/m/mixin_23_B.d
http://dstress.kuehne.cn/run/m/mixin_23_C.d
http://dstress.kuehne.cn/run/m/mixin_23_D.d

Currently (DMD-0.178) those test cases cause on Linux the compile time message:
run/m/mixin_23_A.d(19): delegate dstress.run.m.mixin_23_A.C.__dgliteral1 
literals cannot be class members


-- 
Jan 01 2007
prev sibling next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=211


bugzilla digitalmars.com changed:

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




------- Comment #2 from bugzilla digitalmars.com  2008-07-09 22:30 -------
Fixed dmd 1.032 and 2.016


-- 
Jul 09 2008
prev sibling next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=211


h3r3tic mat.uni.torun.pl changed:

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




------- Comment #3 from h3r3tic mat.uni.torun.pl  2008-07-10 07:29 -------
Thanks, but the following code still breaks:

// ---

template Foo(alias f) {
        void foo() {
                f();
        }
}

class Bar {
        mixin Foo!( function { } );
}

void main() {}

// ---

dmd issue211.d && issue211
OPTLINK (R) for Win32  Release 8.00.1
Copyright (C) Digital Mars 1989-2004  All rights reserved.
issue211.obj(issue211)
 Error 42: Symbol Undefined _D8issue2113Bar14__funcliteral1MFZv

I hope it's fine to reopen the issue. I can submit a new one if that's not a
good option ;)


-- 
Jul 10 2008
prev sibling next sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=211





------- Comment #4 from bugzilla digitalmars.com  2008-07-12 00:36 -------
If the original test case works now, then it is a new bug and should be filed
as such.


-- 
Jul 11 2008
prev sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=211


h3r3tic mat.uni.torun.pl changed:

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




------- Comment #5 from h3r3tic mat.uni.torun.pl  2008-07-12 02:32 -------
Ok, sorry then. I've opened issue 2220.


-- 
Jul 12 2008