can't compile a simple class
Patrick Tinkham
patrick_tinkham at yahoo.com
Sat Mar 23 14:12:24 PDT 2013
On Saturday, 23 March 2013 at 21:08:39 UTC, Namespace wrote:
> On Saturday, 23 March 2013 at 21:04:25 UTC, Patrick Tinkham
> wrote:
>> Sorry for the question. I am a n00b to D. I tried to compile
>> the following code from Alexandrescu's book:
>>
>> import std.stdio;
>> class A {
>> int x = 42;
>> }
>>
>> unittest {
>> auto a1 = new A;
>> assert (a1.x == 42);
>> auto a2 = a1;
>> a2.x = 100;
>> assert (a1.x == 100);
>> }
>>
>> at the command line:
>>
>> /d$ dmd c.d
>> /usr/lib/i386-linux-gnu/libphobos2.a(dmain2_473_1a5.o): In
>> function `main':
>> src/rt/dmain2.d:(.text.main+0x4): undefined reference to
>> `_Dmain'
>> /usr/lib/i386-linux-gnu/libphobos2.a(deh2_453_525.o): In
>> function `_D2rt4deh213__eh_finddataFPvZPS2rt4deh29FuncTable':
>> src/rt/deh2.d:(.text._D2rt4deh213__eh_finddataFPvZPS2rt4deh29FuncTable+0x4):
>> undefined reference to `_deh_beg'
>> src/rt/deh2.d:(.text._D2rt4deh213__eh_finddataFPvZPS2rt4deh29FuncTable+0xc):
>> undefined reference to `_deh_beg'
>> src/rt/deh2.d:(.text._D2rt4deh213__eh_finddataFPvZPS2rt4deh29FuncTable+0x12):
>> undefined reference to `_deh_end'
>>
>> ...
>>
>> plus much more encrypted Klingon.
>>
>> Help?
>
> You need a main function:
>
> import std.stdio;
> class A {
> int x = 42;
> }
>
> unittest {
> auto a1 = new A;
> assert (a1.x == 42);
> auto a2 = a1;
> a2.x = 100;
> assert (a1.x == 100);
> }
>
> void main() { }
Thank you!!! (I guess I'm just accustomed to stand-alone classes
in Java...)
More information about the Digitalmars-d
mailing list