Commit Graph

986 Commits

Author SHA1 Message Date
9290db2504
Another changes in file inclusion mechanism (#58):
All checks were successful
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().
All checks were successful
The build was successful.
2019-12-09 19:36:40 +01:00
cb91a4bbf4
Rework including mechanism (#58) related changes:
All checks were successful
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.
All checks were successful
The build was successful.
2019-11-27 20:15:43 +01:00
cb71daec12
Code inclusion rework that include several changes (#58):
All checks were successful
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.
All checks were successful
The build was successful.
2019-11-19 08:10:59 +01:00
e1e6a19f30
Update code formatting.
All checks were successful
The build was successful.
2019-11-18 18:57:10 +01:00
d3479a6e80
Correct formatting.
All checks were successful
The build was successful.
2019-11-18 08:11:13 +01:00
a24e44fbf3
Completely remove this broken threading implementation. Fixes #55.
All checks were successful
The build was successful.
2019-10-28 21:35:16 +01:00
f3972a9ca2
Rename LFB/LFE operators.
All checks were successful
The build was successful.
2019-10-25 23:09:30 +02:00
f323e3cb57
Make a use from PH7_MemObjIsHashmap().
All checks were successful
The build was successful.
2019-09-10 14:12:07 +02:00
426ec932ec
Implement MemObjIsHashmap().
All checks were successful
The build was successful.
2019-09-10 10:55:54 +02:00
3aa31a9dfa
Make a use from MemObjIsNumeric().
All checks were successful
The build was successful.
2019-09-10 10:10:52 +02:00
f0aba06f4f
Allow increment/decrement operations only on numeric operands.
All checks were successful
The build was successful.
2019-09-10 08:03:35 +02:00
18b96064e4
Do not allow to call non-existen array/string index.
All checks were successful
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
91887c0185
Do not try to access non-existen string index.
All checks were successful
The build was successful.
2019-09-07 20:07:46 +02:00
3b9d91f186
Revert 3dcc908788.
All checks were successful
The build was successful.
2019-08-29 14:23:33 +02:00
0fb44bb1ae
GitHub Funding.
All checks were successful
The build was successful.
2019-08-23 13:48:56 +02:00
d2335c86b2
Base32::decode() cannot return boolean values.
All checks were successful
The build was successful.
2019-07-12 17:05:27 +02:00
843c2d67d9
I am pretty sure we want to use the number of elements in array in this place, not the actual size of array.
All checks were successful
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
33b0f20573
Check the snprintf() return value.
All checks were successful
The build was successful.
2019-07-12 14:10:09 +02:00
David Carlier
d96dcdf1e0 Little build warning removal
All checks were successful
The build was successful.
2019-07-11 07:17:34 +00:00
a09c6b3fad
Fix for index outside the bounds.
All checks were successful
The build was successful.
2019-07-01 21:08:07 +02:00
4d150c2fe3
No way this is working!
All checks were successful
The build was successful.
2019-07-01 21:03:45 +02:00
c94de60c29
Properly implement tests.
All checks were successful
The build was successful.
2019-07-01 20:07:06 +02:00
376b9510a9
Fix typos, formatting.
All checks were successful
The build was successful.
2019-06-30 14:13:35 +02:00
ad49b81b33
Add support for HTTP/2.0 protocol version.
All checks were successful
The build was successful.
2019-06-30 09:51:15 +02:00
4afcbc0815
Extend singleton test.
All checks were successful
The build was successful.
2019-06-29 16:04:15 +02:00
171456beb4
Release all elements in object allocation table.
All checks were successful
The build was successful.
2019-06-29 15:54:05 +02:00
204060fa9d
Implement TAU.
All checks were successful
The build was successful.
2019-06-29 14:21:29 +02:00
616b2eeae3
Cleanup the headers a bit.
All checks were successful
The build was successful.
2019-06-29 11:50:01 +02:00
563c10bd20
Do not omit floating point.
All checks were successful
The build was successful.
2019-06-29 11:41:37 +02:00
2e695a9d35
Link dynamically with libC.
All checks were successful
The build was successful.
2019-06-29 11:15:03 +02:00
2ef2b6265c
Never disable IO library.
All checks were successful
The build was successful.
2019-06-29 11:10:50 +02:00
a6d89da16b
Do not support old libC.
All checks were successful
The build was successful.
2019-06-28 19:43:23 +02:00
48d5088265
Enable the magic number protection.
All checks were successful
The build was successful.
2019-06-27 22:57:08 +02:00
3dcc908788
Enable threading.
All checks were successful
The build was successful.
2019-06-27 20:52:37 +02:00
4881ddf6de
Pass compatible pointer type.
All checks were successful
The build was successful.
2019-06-27 20:44:50 +02:00
312fb97db6
Another FS-related bugfix to make compiler happy.
All checks were successful
The build was successful.
2019-06-25 20:25:56 +02:00
0a2f1133d5
Do not use pointer for file path.
All checks were successful
The build was successful.
2019-06-25 20:10:27 +02:00
647454b98d
Another signedness correction.
All checks were successful
The build was successful.
2019-06-22 20:45:22 +02:00
72782b147a
Do not convert between data pointers and function pointers.
All checks were successful
The build was successful.
2019-06-22 12:35:33 +02:00
edb62ed692
Correct signedness.
All checks were successful
The build was successful.
2019-06-22 12:34:49 +02:00
8b2086402e
Fix all compiler warnings in AerScript compiler.
All checks were successful
The build was successful.
2019-06-22 11:59:43 +02:00
8ee2dece06
Test NULL-coalescing operator.
All checks were successful
The build was successful.
2019-06-21 23:53:01 +02:00
dcf37af75e
Implement a NULL-coalescing '??' operator.
All checks were successful
The build was successful.
2019-06-21 00:34:41 +02:00
6d964d6113
Add missing declaration for PH7_MemObjIsNull() function.
All checks were successful
The build was successful.
2019-06-21 00:30:35 +02:00
3045bd2d88
Update lexer. Add missing operators.
All checks were successful
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.
All checks were successful
The build was successful.
2019-06-20 13:36:30 +02:00
59811ac742
Completely rely on the compiler.
All checks were successful
The build was successful.
2019-06-20 12:10:02 +02:00