Пересборка проекта

This commit is contained in:
Mikhalkovich Stanislav 2020-03-21 20:53:02 +03:00
parent 585b444475
commit a78527d5bf
9 changed files with 5862 additions and 1953 deletions

View file

@ -15,7 +15,7 @@ internal static class RevisionClass
public const string Major = "3";
public const string Minor = "6";
public const string Build = "2";
public const string Revision = "2388";
public const string Revision = "2390";
public const string MainVersion = Major + "." + Minor;
public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision;

View file

@ -1,4 +1,4 @@
%COREVERSION%=2
%REVISION%=2388
%REVISION%=2390
%MINOR%=6
%MAJOR%=3

View file

@ -1 +1 @@
3.6.2.2388
3.6.2.2390

View file

@ -1 +1 @@
!define VERSION '3.6.2.2388'
!define VERSION '3.6.2.2390'

File diff suppressed because it is too large Load diff

View file

@ -1526,10 +1526,25 @@ type
begin
var ec: ErrorCode;
self._program := cl.CreateProgramWithSource(c._context, files_texts.Length, files_texts, files_texts.ConvertAll(s->new UIntPtr(s.Length)), ec);
self._program := cl.CreateProgramWithSource(c._context, files_texts.Length, files_texts, nil, ec);
ec.RaiseIfError;
cl.BuildProgram(self._program, 1,c._device, nil, nil,IntPtr.Zero).RaiseIfError;
ec := cl.BuildProgram(self._program, 1,c._device, nil, nil,IntPtr.Zero);
if ec=ErrorCode.BUILD_PROGRAM_FAILURE then
begin
var sz: UIntPtr;
cl.GetProgramBuildInfo(self._program, c._device, ProgramBuildInfo.PROGRAM_BUILD_LOG, UIntPtr.Zero,IntPtr.Zero,sz).RaiseIfError;
var str_ptr := Marshal.AllocHGlobal(IntPtr(pointer(sz)));
cl.GetProgramBuildInfo(self._program, c._device, ProgramBuildInfo.PROGRAM_BUILD_LOG, sz,str_ptr,IntPtr.Zero).RaiseIfError;
var str := Marshal.PtrToStringAnsi(str_ptr);
Marshal.FreeHGlobal(str_ptr);
raise new OpenCLException(str);
end else
ec.RaiseIfError;
end;

File diff suppressed because it is too large Load diff

View file

@ -9517,8 +9517,7 @@ begin
Result := Self.Aggregate((max, x)-> comp.Compare(selector(x), selector(max)) >= 0 ? x : max);
end;
/// Возвращает последние count элементов последовательности
function TakeLast<T>(Self: sequence of T; count: integer): sequence of T; extensionmethod;
{function TakeLast<T>(Self: sequence of T; count: integer): sequence of T; extensionmethod;
begin
if count < 0 then
raise new System.ArgumentOutOfRangeException('count', count, GetTranslation(PARAMETER_MUST_BE_GREATER_EQUAL_0));
@ -9549,15 +9548,15 @@ begin
yield buf[p];
p := (p+1) mod count;
end;
end;
{function TakeLast<T>(Self: sequence of T; count: integer): sequence of T; extensionmethod;
begin
Result := Self.Reverse.Take(count).Reverse;
end;}
/// Возвращает последовательность без последних count элементов
function SkipLast<T>(Self: sequence of T; count: integer): sequence of T; extensionmethod;
/// Возвращает последние count элементов последовательности
function TakeLast<T>(Self: sequence of T; count: integer): sequence of T; extensionmethod;
begin
Result := Self.Reverse.Take(count).Reverse;
end;
{function SkipLast<T>(Self: sequence of T; count: integer): sequence of T; extensionmethod;
begin
if count < 0 then
raise new System.ArgumentOutOfRangeException('count', count, GetTranslation(PARAMETER_MUST_BE_GREATER_EQUAL_0));
@ -9581,15 +9580,16 @@ begin
buf[p] := x;
p := (p+1) mod count;
end;
end;
end;}
function SkipLast<T>(Self: sequence of T): sequence of T; extensionmethod :=
Self.SkipLast(1);
{function SkipLast<T>(Self: sequence of T): sequence of T; extensionmethod :=
Self.SkipLast(1);}
{function SkipLast<T>(self: sequence of T; count: integer := 1): sequence of T; extensionmethod;
/// Возвращает последовательность без последних count элементов
function SkipLast<T>(self: sequence of T; count: integer := 1): sequence of T; extensionmethod;
begin
Result := Self.Reverse.Skip(count).Reverse;
end;}
end;
/// Декартово произведение последовательностей
function Cartesian<T, T1>(Self: sequence of T; b: sequence of T1): sequence of (T, T1); extensionmethod;

3
TestSuite/TakeLast.pas Normal file
View file

@ -0,0 +1,3 @@
begin
Assert(Arr(1, 2, 3, 4).Order.TakeLast(2).SequenceEqual(Arr(3,4)))
end.