<p>The error message is saying that you are trying to use Foo as a type but Foo is not a type, it is a template for a type.</p>
<div class="gmail_quote">On Feb 17, 2012 7:20 AM, "kraybourne" <<a href="mailto:stdin@kraybourne.com">stdin@kraybourne.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi!<br>
<br>
This doesn't work:<br>
<br>
        import std.stdio;<br>
        class Foo(T)<br>
        {<br>
                T t;<br>
                this(T val)<br>
                {<br>
                        t = val;<br>
                }<br>
        }<br>
<br>
        void main()<br>
        {<br>
                auto o = new Foo(5);<br>
        }<br>
        _____<br>
<br>
        $ dmd foo<br>
        foo.d(13): Error: class foo.Foo(T) is used as a type<br>
        $ _<br>
<br>
So I must<br>
<br>
        auto o = new Foo!(int)(5);<br>
<br>
Then it compiles. Is it possible to have this() figure out the type some way? (In this particular example it's perhaps not such a big deal. But imagine a lot more args.)<br>
<br>
(Side note: What _does_ that error message mean? I don't get it.)<br>
<br>
thanks<br>
/krbrn<br>
</blockquote></div>