Rafal Kupiec
5e6ed0f668
New pipeline for new CI/CD.
2 years ago
Rafal Kupiec
c940224d21
Tower of Hanoi test.
3 years ago
Rafal Kupiec
3eb82e632b
Add new test - sudoku solver.
3 years ago
Rafal Kupiec
709b5971c6
Return can break loop execution as well. If it does, it needs to ensure VM_FRAME_ACTIVE is on top.
3 years ago
Rafal Kupiec
c730082fa0
Do not issue OP_LF_STOP on 'break' inside 'switch' statement.
3 years ago
Rafal Kupiec
0bf2f6d94f
Correct error message.
3 years ago
Rafal Kupiec
b527840f10
Correct arguments length. Get rid of some additional non-printable characters from the end of string.
3 years ago
Rafal Kupiec
ab36234ff3
Add beaufort cipher test.
3 years ago
Rafal Kupiec
9d762a2350
Move debug-related code into separate file.
3 years ago
Rafal Kupiec
0b5e94bacc
Add missing operator description.
3 years ago
Rafal Kupiec
e623111f41
Correct comment.
3 years ago
Rafal Kupiec
fd0685f16e
Code formatting.
3 years ago
Rafal Kupiec
ad5784f81f
Reimplement import() builtin function as a global-scope statement. This fixes #58 .
3 years ago
Rafal Kupiec
0e757111a3
Add 'include' & 'require' statements test.
3 years ago
Rafal Kupiec
469e5ba059
Do not need debug symbols in CI/CD.
3 years ago
Rafal Kupiec
9290db2504
Another changes in file inclusion mechanism ( #58 ):
...
* Remove builtin functions: 'include' & 'require'
* Implement 'include' and 'require' statements compiler
* Implement OP_INCLUDE operator
* Allow 'require' statement to be used in global scope as well as in method body and 'include' only in method body
3 years ago
Rafal Kupiec
09e7400349
Add forward declaration for VmExecIncludedFile().
3 years ago
Rafal Kupiec
cb91a4bbf4
Rework including mechanism ( #58 ) related changes:
...
* VmExecIncludedFile() does not need a call context
* Builtin include() function does not need to return false, it throws an error
3 years ago
Rafal Kupiec
f3156bcbd5
Throw E_ERROR when impossible to include specified file.
3 years ago
Rafal Kupiec
cb71daec12
Code inclusion rework that include several changes ( #58 ):
...
* include() builtin function allows now to include a chunk of code, eg. a body of some loop
* include() allows to load and execute file several times
* require() still allows to include file just once and included file must have a valid OOP syntax
* both functions will throw E_ERROR when impossible to include specified file
3 years ago
Rafal Kupiec
63fd76c9c8
Rework PH7_GenStateGetGlobalScopeHandler() function.
3 years ago
Rafal Kupiec
e1e6a19f30
Update code formatting.
3 years ago
Rafal Kupiec
d3479a6e80
Correct formatting.
3 years ago
Rafal Kupiec
a24e44fbf3
Completely remove this broken threading implementation. Fixes #55 .
3 years ago
Rafal Kupiec
f3972a9ca2
Rename LFB/LFE operators.
3 years ago
Rafal Kupiec
f323e3cb57
Make a use from PH7_MemObjIsHashmap().
3 years ago
Rafal Kupiec
426ec932ec
Implement MemObjIsHashmap().
3 years ago
Rafal Kupiec
3aa31a9dfa
Make a use from MemObjIsNumeric().
3 years ago
Rafal Kupiec
f0aba06f4f
Allow increment/decrement operations only on numeric operands.
3 years ago
Rafal Kupiec
18b96064e4
Do not allow to call non-existen array/string index.
...
PHP returns a NULL for each call to non-existen array element, while AerScript design disallows usage of indexes outside the bounds. This fixes one of most serious PHP problems.
3 years ago
Rafal Kupiec
91887c0185
Do not try to access non-existen string index.
3 years ago
Rafal Kupiec
3b9d91f186
Revert 3dcc908788
.
3 years ago
Rafal Kupiec
0fb44bb1ae
GitHub Funding.
3 years ago
Piotr Likoski
d2335c86b2
Base32::decode() cannot return boolean values.
3 years ago
Piotr Likoski
843c2d67d9
I am pretty sure we want to use the number of elements in array in this place, not the actual size of array.
...
The size of a structure is greater than the sum of its parts because of what is called packing. A particular processor has a preferred data size that it works with. Most modern processors' preferred size if 32-bits (4 bytes).
3 years ago
Piotr Likoski
33b0f20573
Check the snprintf() return value.
3 years ago
David Carlier
d96dcdf1e0
Little build warning removal
3 years ago
Rafal Kupiec
a09c6b3fad
Fix for index outside the bounds.
3 years ago
Rafal Kupiec
4d150c2fe3
No way this is working!
3 years ago
Rafal Kupiec
c94de60c29
Properly implement tests.
3 years ago
Rafal Kupiec
376b9510a9
Fix typos, formatting.
3 years ago
Rafal Kupiec
ad49b81b33
Add support for HTTP/2.0 protocol version.
3 years ago
Rafal Kupiec
4afcbc0815
Extend singleton test.
3 years ago
Rafal Kupiec
171456beb4
Release all elements in object allocation table.
3 years ago
Rafal Kupiec
204060fa9d
Implement TAU.
3 years ago
Rafal Kupiec
616b2eeae3
Cleanup the headers a bit.
3 years ago
Rafal Kupiec
563c10bd20
Do not omit floating point.
3 years ago
Rafal Kupiec
2e695a9d35
Link dynamically with libC.
3 years ago
Rafal Kupiec
2ef2b6265c
Never disable IO library.
3 years ago
Rafal Kupiec
a6d89da16b
Do not support old libC.
3 years ago