anchor.diff:      ///	</returns>
       class operator Implicit(const ProgramImpl: Compute.OpenCL.Detail.ICLProgram): CLProgram;
   
  -    function Build(const Devices: TArray<CLDevice>; const Defines: array of string; const Options: string = ''): boolean; overload;
  -    function Build(const Devices: TArray<CLDevice>; const Options: string = ''): boolean; overload;
  +    function Build(const Devices: array of CLDevice; const Defines: array of string; const Options: string = ''): boolean; overload;
  +    function Build(const Devices: array of CLDevice; const Options: string = ''): boolean; overload;
   
       function CreateKernel(const Name: string): CLKernel;
   
  
positive.code:   result := FProgram.Build(devs, Defines, Options);
  end;
  
  function CLProgram.Build(const Devices: TArray<CLDevice>;
    const Options: string): boolean;
  begin
    result := Build(Devices, [], Options);
  
negative.code: 
  function CLEvent.GetCommandExecutionStatus: CLCommandExecutionStatus;
  begin
    result := MapCommandExecutionStatus(Event.CommandExecutionStatus);
  end;
  
  function CLEvent.GetCommandType: CLCommandType;
  