Hi
I'm trying to track down 'Variant Array is locked' bug and during simulation on simple program i found the unit precedence problem.
--------------------------------------------------
program pokus1;
uses
cthreads, variants, Classes;
type
TTr = class(TThread)
procedure Execute; override;
end;
procedure TTr.Execute;
var
v: Variant;
begin
writeln('before');
v := VarArrayOf(['1','2','3']);
writeln('after');
end;
var
tr: TTr;
begin
tr:=TTr.Create(False);
end.
--------------------------------------------------If unit cthreads are before variants then i get:
-------------------------------------------------- before
Program needs probably the variants unit.
Include the variants unit in your uses statements
as one of the first units.
--------------------------------------------------
If unit variants are before cthreads then:
-------------------------------------------------- Threading has been used before cthreads was initialized. Make cthreads one of the first units in your uses clause. Runtime error 211 at $08065B87
$08065B87
$080551CE
$08048440
--------------------------------------------------
Linux, fpc from svn
Petr
