digitalmars.D.learn - DDL problem
- Tim M (3/3) Dec 27 2008 Hi I would like to use DDL but I couldn't get the latest svn/trunk and
- Jarrett Billingsley (2/5) Dec 27 2008 D1 or D2?
- Tim M (28/37) Dec 27 2008 Sorry I should have made myself more clear. Latest d1 (1.038). If you ge...
- Tim M (3/42) Dec 28 2008 NVM I think I've figured it out. I'll try and get in touch with a dev fo...
- John Reimer (8/57) Dec 28 2008 You might try the version that Tom S. (h3r3tic) maintains. He appears t...
Hi I would like to use DDL but I couldn't get the latest svn/trunk and quick example to work with latest dmd. I think the syntax of templates has changed since it was last tested.
Dec 27 2008
On Sat, Dec 27, 2008 at 10:43 PM, Tim M <a b.com> wrote:Hi I would like to use DDL but I couldn't get the latest svn/trunk and quick example to work with latest dmd. I think the syntax of templates has changed since it was last tested.D1 or D2?
Dec 27 2008
Sorry I should have made myself more clear. Latest d1 (1.038). If you get ddl from trunk and try to build quick example there will be an error about tango.io.FileConduit; so I changed that to tango.io.device.FileConduit; and it then complains about ddl\ExpContainer.d(51): Error: argument FIXUPP to typeof is not an expression. It is defined like: struct ExpContainer(T){ alias typeof(T) BaseType; alias T[] ArrayType; so I tried changing that to: struct ExpContainer(T){ alias T BaseType; alias T[] ArrayType; does this look correct. Dmd seems to think so but then there is an error with ddl/DynamicLibrary.d: template getDExport(T, char [] name) { static if(T.mangleof[0] == 'P'){ typeof(T) getDExport() { return cast(typeof(T))getSymbol( "_D" ~ mangleSymbolName!(name) ~ T.mangleof[1..$]).address; } } else { typeof(T) getDExport() { return cast(typeof(T))getSymbol("_D" ~ mangleSymbolName!(name) ~ T.mangleof).address; } } } On Sun, 28 Dec 2008 17:02:29 +1300, Jarrett Billingsley <jarrett.billingsley gmail.com> wrote:On Sat, Dec 27, 2008 at 10:43 PM, Tim M <a b.com> wrote:Hi I would like to use DDL but I couldn't get the latest svn/trunk and quick example to work with latest dmd. I think the syntax of templates has changed since it was last tested.D1 or D2?
Dec 27 2008
NVM I think I've figured it out. I'll try and get in touch with a dev for the change to be put through. On Sun, 28 Dec 2008 17:16:05 +1300, Tim M <a b.com> wrote:Sorry I should have made myself more clear. Latest d1 (1.038). If you get ddl from trunk and try to build quick example there will be an error about tango.io.FileConduit; so I changed that to tango.io.device.FileConduit; and it then complains about ddl\ExpContainer.d(51): Error: argument FIXUPP to typeof is not an expression. It is defined like: struct ExpContainer(T){ alias typeof(T) BaseType; alias T[] ArrayType; so I tried changing that to: struct ExpContainer(T){ alias T BaseType; alias T[] ArrayType; does this look correct. Dmd seems to think so but then there is an error with ddl/DynamicLibrary.d: template getDExport(T, char [] name) { static if(T.mangleof[0] == 'P'){ typeof(T) getDExport() { return cast(typeof(T))getSymbol( "_D" ~ mangleSymbolName!(name) ~ T.mangleof[1..$]).address; } } else { typeof(T) getDExport() { return cast(typeof(T))getSymbol("_D" ~ mangleSymbolName!(name) ~ T.mangleof).address; } } } On Sun, 28 Dec 2008 17:02:29 +1300, Jarrett Billingsley <jarrett.billingsley gmail.com> wrote:On Sat, Dec 27, 2008 at 10:43 PM, Tim M <a b.com> wrote:Hi I would like to use DDL but I couldn't get the latest svn/trunk and quick example to work with latest dmd. I think the syntax of templates has changed since it was last tested.D1 or D2?
Dec 28 2008
Hello tim,NVM I think I've figured it out. I'll try and get in touch with a dev for the change to be put through. On Sun, 28 Dec 2008 17:16:05 +1300, Tim M <a b.com> wrote:You might try the version that Tom S. (h3r3tic) maintains. He appears to be using it in his D projects and keeps adding fixes as he goes. If you know how to use the Mercurial repository, have a look at it here: http://team0xf.com:1024/linker It's very likely to have already fixed the problems that still exist in the dsource ddl repository. -JJRSorry I should have made myself more clear. Latest d1 (1.038). If you get ddl from trunk and try to build quick example there will be an error about tango.io.FileConduit; so I changed that to tango.io.device.FileConduit; and it then complains about ddl\ExpContainer.d(51): Error: argument FIXUPP to typeof is not an expression. It is defined like: struct ExpContainer(T){ alias typeof(T) BaseType; alias T[] ArrayType; so I tried changing that to: struct ExpContainer(T){ alias T BaseType; alias T[] ArrayType; does this look correct. Dmd seems to think so but then there is an error with ddl/DynamicLibrary.d: template getDExport(T, char [] name) { static if(T.mangleof[0] == 'P'){ typeof(T) getDExport() { return cast(typeof(T))getSymbol( "_D" ~ mangleSymbolName!(name) ~ T.mangleof[1..$]).address; } } else { typeof(T) getDExport() { return cast(typeof(T))getSymbol("_D" ~ mangleSymbolName!(name) ~ T.mangleof).address; } } } On Sun, 28 Dec 2008 17:02:29 +1300, Jarrett Billingsley <jarrett.billingsley gmail.com> wrote:On Sat, Dec 27, 2008 at 10:43 PM, Tim M <a b.com> wrote:Hi I would like to use DDL but I couldn't get the latest svn/trunk and quick example to work with latest dmd. I think the syntax of templates has changed since it was last tested.D1 or D2?
Dec 28 2008