643 Коммитов

Автор SHA1 Сообщение Дата
709b5971c6
Return can break loop execution as well. If it does, it needs to ensure VM_FRAME_ACTIVE is on top.
Все проверки выполнены успешно
The build was successful.
2019-12-22 22:40:11 +01:00
c730082fa0
Do not issue OP_LF_STOP on 'break' inside 'switch' statement.
Все проверки выполнены успешно
The build was successful.
2019-12-21 22:48:44 +01:00
0bf2f6d94f
Correct error message.
Все проверки выполнены успешно
The build was successful.
2019-12-21 16:22:16 +01:00
b527840f10
Correct arguments length. Get rid of some additional non-printable characters from the end of string.
Все проверки выполнены успешно
The build was successful.
2019-12-21 15:33:55 +01:00
9d762a2350
Move debug-related code into separate file.
Все проверки выполнены успешно
The build was successful.
2019-12-15 13:32:45 +01:00
0b5e94bacc
Add missing operator description.
Все проверки выполнены успешно
The build was successful.
2019-12-15 00:00:54 +01:00
e623111f41
Correct comment.
Все проверки выполнены успешно
The build was successful.
2019-12-14 23:37:55 +01:00
fd0685f16e
Code formatting.
Все проверки выполнены успешно
The build was successful.
2019-12-14 23:31:47 +01:00
ad5784f81f
Reimplement import() builtin function as a global-scope statement. This fixes #58.
Все проверки выполнены успешно
The build was successful.
2019-12-14 23:30:38 +01:00
9290db2504
Another changes in file inclusion mechanism (#58):
Все проверки выполнены успешно
The build was successful.
* 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
2019-12-10 16:09:26 +01:00
09e7400349
Add forward declaration for VmExecIncludedFile().
Все проверки выполнены успешно
The build was successful.
2019-12-09 19:36:40 +01:00
cb91a4bbf4
Rework including mechanism (#58) related changes:
Все проверки выполнены успешно
The build was successful.
* VmExecIncludedFile() does not need a call context
 * Builtin include() function does not need to return false, it throws an error
2019-12-09 19:30:28 +01:00
f3156bcbd5
Throw E_ERROR when impossible to include specified file.
Все проверки выполнены успешно
The build was successful.
2019-11-27 20:15:43 +01:00
cb71daec12
Code inclusion rework that include several changes (#58):
Все проверки выполнены успешно
The build was successful.
* 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
2019-11-27 20:07:50 +01:00
63fd76c9c8
Rework PH7_GenStateGetGlobalScopeHandler() function.
Все проверки выполнены успешно
The build was successful.
2019-11-19 08:10:59 +01:00
e1e6a19f30
Update code formatting.
Все проверки выполнены успешно
The build was successful.
2019-11-18 18:57:10 +01:00
d3479a6e80
Correct formatting.
Все проверки выполнены успешно
The build was successful.
2019-11-18 08:11:13 +01:00
a24e44fbf3
Completely remove this broken threading implementation. Fixes #55.
Все проверки выполнены успешно
The build was successful.
2019-10-28 21:35:16 +01:00
f3972a9ca2
Rename LFB/LFE operators.
Все проверки выполнены успешно
The build was successful.
2019-10-25 23:09:30 +02:00
f323e3cb57
Make a use from PH7_MemObjIsHashmap().
Все проверки выполнены успешно
The build was successful.
2019-09-10 14:12:07 +02:00
426ec932ec
Implement MemObjIsHashmap().
Все проверки выполнены успешно
The build was successful.
2019-09-10 10:55:54 +02:00
3aa31a9dfa
Make a use from MemObjIsNumeric().
Все проверки выполнены успешно
The build was successful.
2019-09-10 10:10:52 +02:00
f0aba06f4f
Allow increment/decrement operations only on numeric operands.
Все проверки выполнены успешно
The build was successful.
2019-09-10 08:03:35 +02:00
18b96064e4
Do not allow to call non-existen array/string index.
Все проверки выполнены успешно
The build was successful.
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.
2019-09-09 16:55:48 +02:00
3b9d91f186
Revert 3dcc908788.
Все проверки выполнены успешно
The build was successful.
2019-08-29 14:23:33 +02:00
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 build was successful.
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).
2019-07-12 14:36:56 +02:00
Piotr Likoski
33b0f20573
Check the snprintf() return value.
Все проверки выполнены успешно
The build was successful.
2019-07-12 14:10:09 +02:00
David Carlier
d96dcdf1e0 Little build warning removal
Все проверки выполнены успешно
The build was successful.
2019-07-11 07:17:34 +00:00
376b9510a9
Fix typos, formatting.
Все проверки выполнены успешно
The build was successful.
2019-06-30 14:13:35 +02:00
ad49b81b33
Add support for HTTP/2.0 protocol version.
Все проверки выполнены успешно
The build was successful.
2019-06-30 09:51:15 +02:00
171456beb4
Release all elements in object allocation table.
Все проверки выполнены успешно
The build was successful.
2019-06-29 15:54:05 +02:00
563c10bd20
Do not omit floating point.
Все проверки выполнены успешно
The build was successful.
2019-06-29 11:41:37 +02:00
2e695a9d35
Link dynamically with libC.
Все проверки выполнены успешно
The build was successful.
2019-06-29 11:15:03 +02:00
2ef2b6265c
Never disable IO library.
Все проверки выполнены успешно
The build was successful.
2019-06-29 11:10:50 +02:00
a6d89da16b
Do not support old libC.
Все проверки выполнены успешно
The build was successful.
2019-06-28 19:43:23 +02:00
48d5088265
Enable the magic number protection.
Все проверки выполнены успешно
The build was successful.
2019-06-27 22:57:08 +02:00
3dcc908788
Enable threading.
Все проверки выполнены успешно
The build was successful.
2019-06-27 20:52:37 +02:00
4881ddf6de
Pass compatible pointer type.
Все проверки выполнены успешно
The build was successful.
2019-06-27 20:44:50 +02:00
312fb97db6
Another FS-related bugfix to make compiler happy.
Все проверки выполнены успешно
The build was successful.
2019-06-25 20:25:56 +02:00
0a2f1133d5
Do not use pointer for file path.
Все проверки выполнены успешно
The build was successful.
2019-06-25 20:10:27 +02:00
647454b98d
Another signedness correction.
Все проверки выполнены успешно
The build was successful.
2019-06-22 20:45:22 +02:00
72782b147a
Do not convert between data pointers and function pointers.
Все проверки выполнены успешно
The build was successful.
2019-06-22 12:35:33 +02:00
edb62ed692
Correct signedness.
Все проверки выполнены успешно
The build was successful.
2019-06-22 12:34:49 +02:00
8b2086402e
Fix all compiler warnings in AerScript compiler.
Все проверки выполнены успешно
The build was successful.
2019-06-22 11:59:43 +02:00
dcf37af75e
Implement a NULL-coalescing '??' operator.
Все проверки выполнены успешно
The build was successful.
2019-06-21 00:34:41 +02:00
3045bd2d88
Update lexer. Add missing operators.
Все проверки выполнены успешно
The build was successful.
2019-06-20 14:30:49 +02:00
19d0628afc
Do not try to duplicate an array when source equals to destination.
Все проверки выполнены успешно
The build was successful.
2019-06-20 13:36:30 +02:00
59811ac742
Completely rely on the compiler.
Все проверки выполнены успешно
The build was successful.
2019-06-20 12:10:02 +02:00
e40dc34026
Pass proper line number from compiler to the virtual machine.
Все проверки выполнены успешно
The build was successful.
2019-06-20 12:07:47 +02:00
ca51e2a5da
Add comments.
Все проверки выполнены успешно
The build was successful.
2019-06-19 10:14:01 +02:00