Hi,
I noticed something strange (to me at least) when using the -Sh compiler commandline option.
It seems that the {$mode objfpc} directive or the -S2 compile commandline option resets the -Sh commandline option. When runnig the attached sample I get the following output (notice the order of -Sh and -S2):
-1------------------------
marc:~/lazarus/test$ ppc386 stringtest.pp -S2 -Sh Free Pascal Compiler version 1.0.5 [2001/01/09] for i386 Copyright (c) 1993-2000 by Florian Klaempfl
Target OS: Linux for i386
Compiling stringtest.pp
Assembling (pipe) stringtest.s
Linking stringtest
11 Lines compiled, 0.0 sec
marc:~/lazarus/test$ ./stringtest
Ansi Strings
--------------------------
-2------------------------
marc:~/lazarus/test$ ppc386 stringtest.pp -Sh -S2
Free Pascal Compiler version 1.0.5 [2001/01/09] for i386 Copyright (c) 1993-2000 by Florian Klaempfl
Target OS: Linux for i386
Compiling stringtest.pp
Assembling (pipe) stringtest.s
Linking stringtest
8 Lines compiled, 0.0 sec
marc:~/lazarus/test$ ./stringtest
Short Strings
--------------------------
-3------------------------
program StringTest;
begin
{$IFOPT H+}
WriteLN('Ansi Strings');
{$ELSE}
WriteLN('Short Strings');
{$ENDIF}
end.
--------------------------