[fpc-pascal] Interesting namespace question
vsnijders at quicknet.nl
vsnijders at quicknet.nl
Thu Jun 21 14:56:09 CEST 2007
----- Original Message -----
From: ik <idokan at gmail.com>
Date: Thursday, June 21, 2007 2:53 pm
Subject: [fpc-pascal] Interesting namespace question
> Hi,
> I saw an interesting bug on C++, and I was wondering how to solve this
> type of bug in Pascal:
>
> {$MODE OBJFPC}
> program namespace_test;
>
> function test : boolean;
> begin
> result := true;
> end;
>
> type
> TTest = class
> function test : boolean;
> end;
>
> function TTest.test : boolean;
> begin
> result := test;
> end;
>
> var
> c_test : TTest;
>
> begin
> c_test := TTest.create;
> try
> writeln (c_test.test);
> finally
> c_test.free;
> end;
> end.
>
> OK the question is, the TTest.test, what is the test function that it
> will call, the one inside the class, or the one outside it (I belive
> that it will call itself once), and how can i call the function
> outside the class ?
>
I think it will call itself, until it runs out of stack space (error 202).
If you want to call the test function, use namespace_test.test;
Vincent
P.S. To be sure, just compile the code ...
More information about the fpc-pascal
mailing list