[fpc-devel] variant type - crash question

Sergei Gorelkin sergei_gorelkin at mail.ru
Thu Dec 16 07:50:02 CET 2010


Martin пишет:
> Never used variants much.
> 
> But the below compiles, and then gives a SigSegV (w32).
> Is that to be expected? Or ?
> 
> program Project1;
> {$mode objfpc}{$H+}
> uses
>   Classes;
> 
> procedure Foo(v1,v2: Variant; constref v3,v4: Variant);
> begin
> writeln(v1,v2,v3,v4);
> end;
> 
> begin
>   Foo(1,'a',2,'bc');  // <<<<<<< Fails in this line
> end.
> 
If you add unit Variants to uses clause, the bug is gone.

The compiler is known to add unit Variants automatically (and issue a warning when it does so).
Strange thing is that it doesn't happen in this particular case.

Sergei



More information about the fpc-devel mailing list