(* FLAG -Werror *)

program fjf551b;

var
  Called: Boolean = False;

function x: Integer;
begin
  Called := True;
  x := 42
end;

begin
  if ( {$local W-} Frac (x) {$endlocal} = 0) and_then Called then WriteLn ('OK') else WriteLn ('failed')
end.
