digitalmars.D - MinTL problem
- Daniel Keep (91/91) Apr 12 2006 Hey there.
- James Dunne (13/112) Apr 12 2006 You're not doing anything wrong - I don't think the MinTL library has
- Daniel Keep (8/114) Apr 12 2006 Aah, thanks for that. I'm just going to use something a little simpler
- David L. Davis (9/21) Apr 12 2006 Daniel, Ben's MinTL v2.7.1 was released when D v0.128 was out, so if you...
- Ben Hinkle (9/12) Apr 12 2006 I looked into the bug and it seems like after changing the ~ to ! on lin...
- Daniel Keep (9/26) Apr 12 2006 Haha. That's almost as bad as writing a big chunk of code that refuses
Hey there.
I was wondering if anyone could shed some light on a problem I'm having;
I'm currently trying to use MinTL, and keep getting compile errors. The
source I'm using is:
(optparse.d)
import mintl.list;
int main(char[][] argv)
{
List!(int) x;
return 0;
}
Which I compile with:
$ dmd optparse.d mintl.lib
Where the mintl package is on the import path, and mintl.lib is on the
LIB path. dmd then gives me this:
e:\Bin\Bin\..\Include\other\mintl\list.d(688): operation not allowed on
bool '((*this).isEmpty)()'
e:\Bin\Bin\..\Include\other\mintl\list.d(726): template instance cannot
resolve forward reference
e:\Bin\Bin\..\Include\other\mintl\list.d(726):
ListReverseIter!(Value,ReadOnly,Alloc) is used as a type
e:\Bin\Bin\..\Include\other\mintl\list.d(726): variable
mintl.list.List!(int).List.backwards.res voids have no value
e:\Bin\Bin\..\Include\other\mintl\list.d(727): no property 'list' for
type 'int'
e:\Bin\Bin\..\Include\other\mintl\list.d(727): constant (res).list is
not an lvalue
e:\Bin\Bin\..\Include\other\mintl\list.d(727): cannot implicitly convert
expression (this) of type List * to int
e:\Bin\Bin\..\Include\other\mintl\list.d(728): cannot implicitly convert
expression (res) of type int to ListReverseIter
e:\Bin\Bin\..\Include\other\mintl\list.d(311): template instance cannot
resolve forward reference
e:\Bin\Bin\..\Include\other\mintl\list.d(311): template instance cannot
resolve forward reference
e:\Bin\Bin\..\Include\other\mintl\list.d(311): template instance
List!(Value,true,Alloc) is used as a type
e:\Bin\Bin\..\Include\other\mintl\list.d(311): variable
mintl.list.List!(int,true,GCAllocator ).List.readonly.res voids have no
value
e:\Bin\Bin\..\Include\other\mintl\list.d(313): cannot implicitly convert
expression (res) of type int to List
e:\Bin\Bin\..\Include\other\mintl\list.d(318): template instance cannot
resolve forward reference
e:\Bin\Bin\..\Include\other\mintl\list.d(318): template instance cannot
resolve forward reference
e:\Bin\Bin\..\Include\other\mintl\list.d(318): template instance
List!(Value,false,Alloc) is used as a type
e:\Bin\Bin\..\Include\other\mintl\list.d(318): variable
mintl.list.List!(int,true,GCAllocator ).List.readwrite.res voids have no
value
e:\Bin\Bin\..\Include\other\mintl\list.d(320): cannot implicitly convert
expression (res) of type int to List
e:\Bin\Bin\..\Include\other\mintl\list.d(650): template instance cannot
resolve forward reference
e:\Bin\Bin\..\Include\other\mintl\list.d(650): template instance cannot
resolve forward reference
e:\Bin\Bin\..\Include\other\mintl\list.d(650): template instance
List!(Value,false,Alloc) is used as a type
e:\Bin\Bin\..\Include\other\mintl\list.d(650): variable
mintl.list.List!(int,true,GCAllocator ).List.dup.res voids have no value
e:\Bin\Bin\..\Include\other\mintl\list.d(655): no property 'readonly'
for type 'int'
e:\Bin\Bin\..\Include\other\mintl\list.d(655): cannot implicitly convert
expression (1) of type int to List
e:\Bin\Bin\..\Include\other\mintl\list.d(688): operation not allowed on
bool '((*this).isEmpty)()'
e:\Bin\Bin\..\Include\other\mintl\list.d(726): template instance cannot
resolve forward reference
e:\Bin\Bin\..\Include\other\mintl\list.d(726):
ListReverseIter!(Value,ReadOnly,Alloc) is used as a type
e:\Bin\Bin\..\Include\other\mintl\list.d(726): variable
mintl.list.List!(int,true,GCAllocator ).List.backwards.res voids have no
value
e:\Bin\Bin\..\Include\other\mintl\list.d(727): no property 'list' for
type 'int'
e:\Bin\Bin\..\Include\other\mintl\list.d(727): constant (res).list is
not an lvalue
e:\Bin\Bin\..\Include\other\mintl\list.d(727): cannot implicitly convert
expression (this) of type List * to int
e:\Bin\Bin\..\Include\other\mintl\list.d(728): cannot implicitly convert
expression (res) of type int to ListReverseIter
e:\Bin\Bin\..\Include\other\mintl\list.d(6): template instance
mintl.list.List!(int) error instantiating
I'm sure it's the latest version, since I downloaded it the other day.
list.d says it is revision 2.7.1.
I just can't work out what I'm doing wrong. Any suggestions?
-- Daniel
--
v1sw5+8Yhw5ln4+5pr6OFma8u6+7Lw4Tm6+7l6+7D
a2Xs3MSr2e4/6+7t4TNSMb6HTOp5en5g6RAHCP http://hackerkey.com/
Apr 12 2006
Daniel Keep wrote:
Hey there.
I was wondering if anyone could shed some light on a problem I'm having;
I'm currently trying to use MinTL, and keep getting compile errors. The
source I'm using is:
(optparse.d)
import mintl.list;
int main(char[][] argv)
{
List!(int) x;
return 0;
}
Which I compile with:
$ dmd optparse.d mintl.lib
Where the mintl package is on the import path, and mintl.lib is on the
LIB path. dmd then gives me this:
e:\Bin\Bin\..\Include\other\mintl\list.d(688): operation not allowed on
bool '((*this).isEmpty)()'
e:\Bin\Bin\..\Include\other\mintl\list.d(726): template instance cannot
resolve forward reference
e:\Bin\Bin\..\Include\other\mintl\list.d(726):
ListReverseIter!(Value,ReadOnly,Alloc) is used as a type
e:\Bin\Bin\..\Include\other\mintl\list.d(726): variable
mintl.list.List!(int).List.backwards.res voids have no value
e:\Bin\Bin\..\Include\other\mintl\list.d(727): no property 'list' for
type 'int'
e:\Bin\Bin\..\Include\other\mintl\list.d(727): constant (res).list is
not an lvalue
e:\Bin\Bin\..\Include\other\mintl\list.d(727): cannot implicitly convert
expression (this) of type List * to int
e:\Bin\Bin\..\Include\other\mintl\list.d(728): cannot implicitly convert
expression (res) of type int to ListReverseIter
e:\Bin\Bin\..\Include\other\mintl\list.d(311): template instance cannot
resolve forward reference
e:\Bin\Bin\..\Include\other\mintl\list.d(311): template instance cannot
resolve forward reference
e:\Bin\Bin\..\Include\other\mintl\list.d(311): template instance
List!(Value,true,Alloc) is used as a type
e:\Bin\Bin\..\Include\other\mintl\list.d(311): variable
mintl.list.List!(int,true,GCAllocator ).List.readonly.res voids have no
value
e:\Bin\Bin\..\Include\other\mintl\list.d(313): cannot implicitly convert
expression (res) of type int to List
e:\Bin\Bin\..\Include\other\mintl\list.d(318): template instance cannot
resolve forward reference
e:\Bin\Bin\..\Include\other\mintl\list.d(318): template instance cannot
resolve forward reference
e:\Bin\Bin\..\Include\other\mintl\list.d(318): template instance
List!(Value,false,Alloc) is used as a type
e:\Bin\Bin\..\Include\other\mintl\list.d(318): variable
mintl.list.List!(int,true,GCAllocator ).List.readwrite.res voids have no
value
e:\Bin\Bin\..\Include\other\mintl\list.d(320): cannot implicitly convert
expression (res) of type int to List
e:\Bin\Bin\..\Include\other\mintl\list.d(650): template instance cannot
resolve forward reference
e:\Bin\Bin\..\Include\other\mintl\list.d(650): template instance cannot
resolve forward reference
e:\Bin\Bin\..\Include\other\mintl\list.d(650): template instance
List!(Value,false,Alloc) is used as a type
e:\Bin\Bin\..\Include\other\mintl\list.d(650): variable
mintl.list.List!(int,true,GCAllocator ).List.dup.res voids have no value
e:\Bin\Bin\..\Include\other\mintl\list.d(655): no property 'readonly'
for type 'int'
e:\Bin\Bin\..\Include\other\mintl\list.d(655): cannot implicitly convert
expression (1) of type int to List
e:\Bin\Bin\..\Include\other\mintl\list.d(688): operation not allowed on
bool '((*this).isEmpty)()'
e:\Bin\Bin\..\Include\other\mintl\list.d(726): template instance cannot
resolve forward reference
e:\Bin\Bin\..\Include\other\mintl\list.d(726):
ListReverseIter!(Value,ReadOnly,Alloc) is used as a type
e:\Bin\Bin\..\Include\other\mintl\list.d(726): variable
mintl.list.List!(int,true,GCAllocator ).List.backwards.res voids have no
value
e:\Bin\Bin\..\Include\other\mintl\list.d(727): no property 'list' for
type 'int'
e:\Bin\Bin\..\Include\other\mintl\list.d(727): constant (res).list is
not an lvalue
e:\Bin\Bin\..\Include\other\mintl\list.d(727): cannot implicitly convert
expression (this) of type List * to int
e:\Bin\Bin\..\Include\other\mintl\list.d(728): cannot implicitly convert
expression (res) of type int to ListReverseIter
e:\Bin\Bin\..\Include\other\mintl\list.d(6): template instance
mintl.list.List!(int) error instantiating
I'm sure it's the latest version, since I downloaded it the other day.
list.d says it is revision 2.7.1.
I just can't work out what I'm doing wrong. Any suggestions?
-- Daniel
You're not doing anything wrong - I don't think the MinTL library has
been updated in quite some time. Try downgrading compiler versions
until you find one that works with it if that's acceptable for you.
Otherwise, ask Ben Hinkle (author) to update it.
--
-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GCS/MU/S d-pu s:+ a-->? C++++$ UL+++ P--- L+++ !E W-- N++ o? K? w--- O
M-- V? PS PE Y+ PGP- t+ 5 X+ !R tv-->!tv b- DI++(+) D++ G e++>e
h>--->++ r+++ y+++
------END GEEK CODE BLOCK------
James Dunne
Apr 12 2006
Aah, thanks for that. I'm just going to use something a little simpler (and probably less efficient, but oh well :P) for the moment. If worst comes to worst, I can always just start my own collection of containers. -- Daniel James Dunne wrote:Daniel Keep wrote:-- v1sw5+8Yhw5ln4+5pr6OFma8u6+7Lw4Tm6+7l6+7D a2Xs3MSr2e4/6+7t4TNSMb6HTOp5en5g6RAHCP http://hackerkey.com/Hey there. I was wondering if anyone could shed some light on a problem I'm having; I'm currently trying to use MinTL, and keep getting compile errors. The source I'm using is: (optparse.d) import mintl.list; int main(char[][] argv) { List!(int) x; return 0; } Which I compile with: $ dmd optparse.d mintl.lib Where the mintl package is on the import path, and mintl.lib is on the LIB path. dmd then gives me this: e:\Bin\Bin\..\Include\other\mintl\list.d(688): operation not allowed on bool '((*this).isEmpty)()' e:\Bin\Bin\..\Include\other\mintl\list.d(726): template instance cannot resolve forward reference e:\Bin\Bin\..\Include\other\mintl\list.d(726): ListReverseIter!(Value,ReadOnly,Alloc) is used as a type e:\Bin\Bin\..\Include\other\mintl\list.d(726): variable mintl.list.List!(int).List.backwards.res voids have no value e:\Bin\Bin\..\Include\other\mintl\list.d(727): no property 'list' for type 'int' e:\Bin\Bin\..\Include\other\mintl\list.d(727): constant (res).list is not an lvalue e:\Bin\Bin\..\Include\other\mintl\list.d(727): cannot implicitly convert expression (this) of type List * to int e:\Bin\Bin\..\Include\other\mintl\list.d(728): cannot implicitly convert expression (res) of type int to ListReverseIter e:\Bin\Bin\..\Include\other\mintl\list.d(311): template instance cannot resolve forward reference e:\Bin\Bin\..\Include\other\mintl\list.d(311): template instance cannot resolve forward reference e:\Bin\Bin\..\Include\other\mintl\list.d(311): template instance List!(Value,true,Alloc) is used as a type e:\Bin\Bin\..\Include\other\mintl\list.d(311): variable mintl.list.List!(int,true,GCAllocator ).List.readonly.res voids have no value e:\Bin\Bin\..\Include\other\mintl\list.d(313): cannot implicitly convert expression (res) of type int to List e:\Bin\Bin\..\Include\other\mintl\list.d(318): template instance cannot resolve forward reference e:\Bin\Bin\..\Include\other\mintl\list.d(318): template instance cannot resolve forward reference e:\Bin\Bin\..\Include\other\mintl\list.d(318): template instance List!(Value,false,Alloc) is used as a type e:\Bin\Bin\..\Include\other\mintl\list.d(318): variable mintl.list.List!(int,true,GCAllocator ).List.readwrite.res voids have no value e:\Bin\Bin\..\Include\other\mintl\list.d(320): cannot implicitly convert expression (res) of type int to List e:\Bin\Bin\..\Include\other\mintl\list.d(650): template instance cannot resolve forward reference e:\Bin\Bin\..\Include\other\mintl\list.d(650): template instance cannot resolve forward reference e:\Bin\Bin\..\Include\other\mintl\list.d(650): template instance List!(Value,false,Alloc) is used as a type e:\Bin\Bin\..\Include\other\mintl\list.d(650): variable mintl.list.List!(int,true,GCAllocator ).List.dup.res voids have no value e:\Bin\Bin\..\Include\other\mintl\list.d(655): no property 'readonly' for type 'int' e:\Bin\Bin\..\Include\other\mintl\list.d(655): cannot implicitly convert expression (1) of type int to List e:\Bin\Bin\..\Include\other\mintl\list.d(688): operation not allowed on bool '((*this).isEmpty)()' e:\Bin\Bin\..\Include\other\mintl\list.d(726): template instance cannot resolve forward reference e:\Bin\Bin\..\Include\other\mintl\list.d(726): ListReverseIter!(Value,ReadOnly,Alloc) is used as a type e:\Bin\Bin\..\Include\other\mintl\list.d(726): variable mintl.list.List!(int,true,GCAllocator ).List.backwards.res voids have no value e:\Bin\Bin\..\Include\other\mintl\list.d(727): no property 'list' for type 'int' e:\Bin\Bin\..\Include\other\mintl\list.d(727): constant (res).list is not an lvalue e:\Bin\Bin\..\Include\other\mintl\list.d(727): cannot implicitly convert expression (this) of type List * to int e:\Bin\Bin\..\Include\other\mintl\list.d(728): cannot implicitly convert expression (res) of type int to ListReverseIter e:\Bin\Bin\..\Include\other\mintl\list.d(6): template instance mintl.list.List!(int) error instantiating I'm sure it's the latest version, since I downloaded it the other day. list.d says it is revision 2.7.1. I just can't work out what I'm doing wrong. Any suggestions? -- DanielYou're not doing anything wrong - I don't think the MinTL library has been updated in quite some time. Try downgrading compiler versions until you find one that works with it if that's acceptable for you. Otherwise, ask Ben Hinkle (author) to update it.
Apr 12 2006
In article <e1j3be$2bk5$1 digitaldaemon.com>, Daniel Keep says...Aah, thanks for that. I'm just going to use something a little simpler (and probably less efficient, but oh well :P) for the moment. If worst comes to worst, I can always just start my own collection of containers. -- Daniel James Dunne wrote:Daniel, Ben's MinTL v2.7.1 was released when D v0.128 was out, so if you do decide to go back...it'll be a pretty long trak back from D v0.153. It would be a lot better to ask Ben to update MinTL to the more current release of D. David L. ------------------------------------------------------------------- "Dare to reach for the Stars...Dare to Dream, Build, and Achieve!" ------------------------------------------------------------------- MKoD: http://spottedtiger.tripod.com/D_Language/D_Main_XP.htmlDaniel Keep wrote: You're not doing anything wrong - I don't think the MinTL library has been updated in quite some time. Try downgrading compiler versions until you find one that works with it if that's acceptable for you. Otherwise, ask Ben Hinkle (author) to update it.
Apr 12 2006
"Daniel Keep" <daniel.keep dummy.gmail.com> wrote in message news:e1ir0p$1via$1 digitaldaemon.com...Hey there. I was wondering if anyone could shed some light on a problem I'm having; I'm currently trying to use MinTL, and keep getting compile errors.I looked into the bug and it seems like after changing the ~ to ! on line 688 of list.d everything compiles fine. Those zillions of error messages were all due to that one character. For those curious ~x is the MATLAB syntax for !x in D so I must have been in a MATLAB frame of mind when I wrote that and then never tested it. I'll update the zip file tonight when I get home. <snip>
Apr 12 2006
Haha. That's almost as bad as writing a big chunk of code that refuses
to compile, only to discover hours later that I was writing Python and
not D ("is not" vs. "!is", "0 <= i <= $" vs. "0 <= i && i <= $", etc.)
Thanks for the update :)
-- Daniel
Ben Hinkle wrote:
"Daniel Keep" <daniel.keep dummy.gmail.com> wrote in message
news:e1ir0p$1via$1 digitaldaemon.com...
Hey there.
I was wondering if anyone could shed some light on a problem I'm having;
I'm currently trying to use MinTL, and keep getting compile errors.
I looked into the bug and it seems like after changing the ~ to ! on line
688 of list.d everything compiles fine. Those zillions of error messages
were all due to that one character. For those curious ~x is the MATLAB
syntax for !x in D so I must have been in a MATLAB frame of mind when I
wrote that and then never tested it. I'll update the zip file tonight when I
get home.
<snip>
--
v1sw5+8Yhw5ln4+5pr6OFma8u6+7Lw4Tm6+7l6+7D
a2Xs3MSr2e4/6+7t4TNSMb6HTOp5en5g6RAHCP http://hackerkey.com/
Apr 12 2006









David L. Davis <SpottedTiger yahoo.com> 