I tried under FreeBSD 9.1 using FPC 2.7.1 - I must use 2.7.1 for FreeBSD, because there are lots of Threading and memory corruption issues in any released FPC version for FreeBSD.
Anyway, got your latest code and tried to compile the Tester project and got these errors.
/data/devel/tests/codelibrarian-code/Components/GpLists.pas(6423,22) Error: Incompatible types: got "TThreadID" expected "LongWord"
/data/devel/tests/codelibrarian-code/Components/GpLists.pas(6424,25) Error: Operator is not overloaded: "LongWord" = "TThreadID"
FLastThreadId is defined as a Cardinal, but GetCurrentThreadID under FreeBSD returns a TThreadID type which is a pointer to record structure. Slightly different to Linux or Windows.
Attached is a patch which will fix the compilation problem.
After this the Tester project compiled. When I ran "all tests", my system sat at 100% CPU load for a couple of minutes, then the application crashed out to the command prompt.
ps:
I would recommend you convert the Tester application to FPTest (Free Pascal Testing Framework). FPTest is a unit testing framework for exactly such needs. The Text Test Runner will give you progress output by default, and better results as to what worked, what doesn't and where it crashed. Test results can also be shown as XML or HTML output - see link below. FPTest also has a GUI Test Runner, but currently only for fpGUI. A LCL version is planned to.
FPTest code repository:
https://github.com/graemeg/fptestSome FPTest information and usage examples:
http://wiki.freepascal.org/FPTestSample HTML test result output (actual test output for tiOPF project):
http://opensoft.homeip.net/tiopf/unittests/freebsd64.html