[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.


More information about the fpc-devel mailing list