Skip to content

Commit

Permalink
Merge pull request #663 from ELENA-LANG/develop
Browse files Browse the repository at this point in the history
Iteration25 (#662)
  • Loading branch information
arakov authored Jun 12, 2024
2 parents 3f63862 + bc9dd90 commit f1c76f1
Show file tree
Hide file tree
Showing 85 changed files with 1,164 additions and 719 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/msbuild.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ env:
# https://docs.github.com/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
BUILD_CONFIGURATION: Release

BUILD_TAG: 6.1.1
BUILD_TAG: 6.1.2

permissions:
contents: read
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
6.1.1
6.1.2
3 changes: 2 additions & 1 deletion asm/x32/core60.asm
Original file line number Diff line number Diff line change
Expand Up @@ -4224,8 +4224,9 @@ labNextBaseClass:
jnz labNextOverloadlist

pop ebx
mov esi, [esp+4] // ; restore arg0
add esp, 8
mov edx, __arg32_1
mov esi, [esp+4] // ; restore arg0

end

Expand Down
27 changes: 26 additions & 1 deletion asm/x32/corex60.asm
Original file line number Diff line number Diff line change
Expand Up @@ -837,7 +837,7 @@ inline %02Ch

end

// ; system 3
// ; system 3 (thread startup)
inline %3CFh

mov eax, [data : %CORE_TLS_INDEX]
Expand All @@ -860,6 +860,31 @@ inline %4CFh

end

// ; system : enter GC critical section
inline %6CFh

mov edi, data : %CORE_GC_TABLE + gc_lock
mov ecx, 1
labWait:
xor eax, eax
lock cmpxchg dword ptr[edi], ecx
jnz short labWait

end

// ; system : leave GC critical section
inline %7CFh

// ; GCXT: clear sync field
mov edi, data : %CORE_GC_TABLE + gc_lock
mov ecx, 0FFFFFFFFh
// ; GCXT: free lock
// ; could we use mov [esi], 0 instead?
lock xadd [edi], ecx

end

// ; xhookdpr
inline %0E6h

Expand Down
2 changes: 1 addition & 1 deletion build/aarch64/build_package_arm64.script
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/bin/bash
RELEASE=elena-6.1.1.aarch64-linux
RELEASE=elena-6.1.2.aarch64-linux

mkdir -p /usr/share/elena
mkdir -p /etc/elena/
Expand Down
2 changes: 1 addition & 1 deletion build/aarch64/control
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Package: elena-lang
Version: 6.1.1
Version: 6.1.2
Architecture: aarch64
Maintainer: Alex Rakov <[email protected]>
Depends: libc6 (>= 2.1)
Expand Down
2 changes: 1 addition & 1 deletion build/amd64/build_package_amd64.script
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/bin/bash
RELEASE=elena-6.1.1.amd64-linux
RELEASE=elena-6.1.2.amd64-linux

mkdir -p /usr/share/elena
mkdir -p /etc/elena/
Expand Down
2 changes: 1 addition & 1 deletion build/amd64/control
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Package: elena-lang
Version: 6.1.1
Version: 6.1.2
Architecture: amd64
Maintainer: Alex Rakov <[email protected]>
Depends: libc6 (>= 2.1)
Expand Down
39 changes: 12 additions & 27 deletions build/create_package_x64.bat
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

ECHO =========== Compiling ELENA files ==================

md %~dp0\x86
md %~dp0\x64
md %~dp0\x64\bin
md %~dp0\x64\bin\templates
md %~dp0\x64\bin\scripts
Expand Down Expand Up @@ -98,10 +98,20 @@ md %~dp0\x64\src60\forms
xcopy %~dp0\..\src60\forms\*.l %~dp0\x64\src60\forms /s
xcopy %~dp0\..\src60\forms\*.prj %~dp0\x64\src60\forms /s

md %~dp0\x64\src60\xforms
xcopy %~dp0\..\src60\xforms\*.l %~dp0\x64\src60\xforms /s
xcopy %~dp0\..\src60\xforms\*.prj %~dp0\x64\src60\xforms /s

md %~dp0\x64\src60\net
xcopy %~dp0\..\src60\net\*.l %~dp0\x64\src60\net /s
xcopy %~dp0\..\src60\net\*.prj %~dp0\x64\src60\net /s

md %~dp0\x64\src60\ltests
xcopy %~dp0\..\src60\ltests\*.l %~dp0\x64\src60\ltests /s
xcopy %~dp0\..\src60\ltests\*.prj %~dp0\x64\src60\ltests /s

copy %~dp0\..\src60\elena_api.prjcol %~dp0\x64\src60\

%~dp0\..\bin\sg64-cli.exe %~dp0\..\dat\sg\syntax60.txt
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
Expand All @@ -127,32 +137,7 @@ if %ERRORLEVEL% EQU -2 GOTO CompilerError
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

%~dp0\x64\bin\elena64-cli %~dp0\x64\src60\system\system.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

%~dp0\x64\bin\elena64-cli %~dp0\x64\src60\extensions\extensions.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

%~dp0\x64\bin\elena64-cli %~dp0\x64\src60\cellular\cellular.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

%~dp0\x64\bin\elena64-cli %~dp0\x64\src60\algorithms\algorithms.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

%~dp0\x64\bin\elena64-cli %~dp0\x64\src60\sqlite\sqlite.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

%~dp0\x64\bin\elena64-cli %~dp0\x64\src60\forms\forms.prj
%~dp0\x64\bin\elena64-cli %~dp0x64\src60\elena_api.prjcol
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on
Expand Down
44 changes: 3 additions & 41 deletions build/create_package_x86.bat
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,8 @@ md %~dp0\x86\src60\net
xcopy %~dp0\..\src60\net\*.l %~dp0\x86\src60\net /s
xcopy %~dp0\..\src60\net\*.prj %~dp0\x86\src60\net /s

copy %~dp0\..\src60\elena_api.prjcol %~dp0\x86\src60\

%~dp0\..\bin\sg-cli.exe %~dp0\..\dat\sg\syntax60.txt
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
Expand All @@ -167,47 +169,7 @@ if %ERRORLEVEL% EQU -2 GOTO CompilerError
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

%~dp0\x86\bin\elena-cli %~dp0\x86\src60\system\system.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

%~dp0\x86\bin\elena-cli %~dp0\x86\src60\extensions\extensions.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

%~dp0\x86\bin\elena-cli %~dp0\x86\src60\cellular\cellular.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

%~dp0\x86\bin\elena-cli %~dp0\x86\src60\algorithms\algorithms.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

%~dp0\x86\bin\elena-cli %~dp0\x86\src60\ltests\ltests.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

%~dp0\x86\bin\elena-cli %~dp0\x86\src60\sqlite\sqlite.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

%~dp0\x86\bin\elena-cli %~dp0\x86\src60\forms\forms.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

%~dp0\x86\bin\elena-cli %~dp0\x86\src60\xforms\xforms.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

%~dp0\x86\bin\elena-cli %~dp0\x86\src60\net\net.prj
%~dp0\x86\bin\elena-cli %~dp0x86\src60\elena_api.prjcol
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on
Expand Down
6 changes: 3 additions & 3 deletions build/elena_inno.iss
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppId={{3CAA69D3-0F98-44B1-A73E-E864BA51D5BD}
AppName=ELENA Programming Language
AppVersion=6.1.1
;AppVerName=ELENA Programming Language 6.0.10
AppVersion=6.1.2
;AppVerName=ELENA Programming Language 6.1.2
AppPublisher=Alexey Rakov
AppPublisherURL=http://github.com/ELENA-LANG/elena-lang
AppSupportURL=http://github.com/ELENA-LANG/elena-lang
Expand All @@ -18,7 +18,7 @@ DefaultGroupName=ELENA Programming Language
AllowNoIcons=yes
LicenseFile=..\doc\license
InfoAfterFile=..\CHANGELOG.md
OutputBaseFilename=elena-lang-6.1.1.x86-setup
OutputBaseFilename=elena-lang-6.1.2.x86-setup
Compression=lzma
SolidCompression=yes
ChangesEnvironment=yes
Expand Down
2 changes: 1 addition & 1 deletion build/i386/build_package_i386.script
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/bin/bash
RELEASE=elena-6.1.1.i386-linux
RELEASE=elena-6.1.2.i386-linux

mkdir -p /usr/share/elena
mkdir -p /etc/elena/
Expand Down
2 changes: 1 addition & 1 deletion build/i386/control
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Package: elena-lang
Version: 6.1.1
Version: 6.1.2
Architecture: i386
Maintainer: Alex Rakov <[email protected]>
Depends: libc6 (>= 2.1)
Expand Down
2 changes: 1 addition & 1 deletion build/ppc64le/build_package_ppc64le.script
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/bin/bash
RELEASE=elena-6.1.1.ppc64le-linux
RELEASE=elena-6.1.2.ppc64le-linux

mkdir -p /usr/share/elena
mkdir -p /etc/elena/
Expand Down
2 changes: 1 addition & 1 deletion build/ppc64le/control
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Package: elena-lang
Version: 6.1.1
Version: 6.1.2
Architecture: ppc64le
Maintainer: Alex Rakov <[email protected]>
Depends: libc6 (>= 2.1)
Expand Down
32 changes: 1 addition & 31 deletions build/rebuild_lib60_x64.bat
Original file line number Diff line number Diff line change
Expand Up @@ -44,37 +44,7 @@ bin\asm64-cli -bc64 src60\core\system.win_core_routines.esm lib60_64
if %ERRORLEVEL% EQU -1 GOTO Asm2BinError
@echo on

bin\elena64-cli src60\system\system.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

bin\elena64-cli src60\extensions\extensions.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

bin\elena64-cli src60\cellular\cellular.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

bin\elena64-cli src60\algorithms\algorithms.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

bin\elena64-cli src60\ltests\ltests.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

bin\elena64-cli src60\sqlite\sqlite.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

bin\elena64-cli src60\forms\forms.prj
bin\elena64-cli src60\elena_api.prjcol
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on
Expand Down
37 changes: 1 addition & 36 deletions build/rebuild_lib60_x86.bat
Original file line number Diff line number Diff line change
Expand Up @@ -54,42 +54,7 @@ bin\asm-cli -bc32 src60\core\system.win_core_routines.esm lib60
if %ERRORLEVEL% EQU -1 GOTO Asm2BinError
@echo on

bin\elena-cli src60\system\system.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

bin\elena-cli src60\extensions\extensions.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

bin\elena-cli src60\cellular\cellular.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

bin\elena-cli src60\algorithms\algorithms.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

bin\elena-cli src60\ltests\ltests.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

bin\elena-cli src60\sqlite\sqlite.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

bin\elena-cli src60\forms\forms.prj
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on

bin\elena-cli src60\xforms\xforms.prj
bin\elena-cli src60\elena_api.prjcol
@echo off
if %ERRORLEVEL% EQU -2 GOTO CompilerError
@echo on
Expand Down
1 change: 1 addition & 0 deletions dat/sg/syntax60.txt
Original file line number Diff line number Diff line change
Expand Up @@ -892,6 +892,7 @@ RI_F ::=

L_F ::=
L0_OP+ L2_OP* L3_OP* L4_OP* L5_OP* L6_OP? L7_OP* L8_OP? L9_OP?
| ":" ^EXPRESSION identifier TEMPLATE_ARG ^ TEMPLATE_EXPR_BLOCK
| L2_OP+ L3_OP* L4_OP* L5_OP* L6_OP? L7_OP* L8_OP? L9_OP?
| L3_OP+ L4_OP* L5_OP* L6_OP? L7_OP* L8_OP? L9_OP?
| L4_OP+ L5_OP* L6_OP? L7_OP* L8_OP? L9_OP?
Expand Down
17 changes: 13 additions & 4 deletions doc/api/forms.html
Original file line number Diff line number Diff line change
Expand Up @@ -713,7 +713,16 @@ <H3>Method Summary</H3>
<CODE>
<i>internal </i>&nbsp;</CODE></TD>
<TD CLASS="colLast">
<CODE>appendControlInternal(control)
<CODE>appendControlInternal(<SPAN CLASS="memberNameLink"><A HREF="forms.html#BaseControl">BaseControl</A></SPAN> control)
</CODE>
</TD>
</TR>
<TR CLASS="rowColor">
<TD CLASS="colFirst">
<CODE>
<i>internal </i>&nbsp;</CODE></TD>
<TD CLASS="colLast">
<CODE>appendControlInternal(<SPAN CLASS="memberNameLink"><A HREF="forms.html#ImageList">ImageList</A></SPAN> control)
</CODE>
</TD>
</TR>
Expand Down Expand Up @@ -895,7 +904,7 @@ <H3>Method Summary</H3>
<TR CLASS="altColor">
<TD CLASS="colFirst">
<CODE>
</CODE></TD>
<SPAN CLASS="memberNameLink"><A HREF="forms.html#IControl">IControl</A></SPAN></CODE></TD>
<TD CLASS="colLast">
<CODE>retrieve(<SPAN CLASS="memberNameLink"><A HREF="system.html#Handle">Handle</A></SPAN> handle)
</CODE>
Expand Down Expand Up @@ -1186,7 +1195,7 @@ <H3>Method Summary</H3>
<TR CLASS="rowColor">
<TD CLASS="colFirst">
<CODE>
</CODE></TD>
<SPAN CLASS="memberNameLink"><A HREF="forms.html#IControl">IControl</A></SPAN></CODE></TD>
<TD CLASS="colLast">
<CODE>retrieve(<SPAN CLASS="memberNameLink"><A HREF="system.html#Handle">Handle</A></SPAN> handle)
</CODE>
Expand Down Expand Up @@ -1396,7 +1405,7 @@ <H3>Method Summary</H3>
<CODE>
</CODE></TD>
<TD CLASS="colLast">
<CODE>appendControl(control)
<CODE>appendControl(<SPAN CLASS="memberNameLink"><A HREF="forms.html#BaseControl">BaseControl</A></SPAN> control)
</CODE>
</TD>
</TR>
Expand Down
Loading

0 comments on commit f1c76f1

Please sign in to comment.