Commit Graph

626 Commits

Author SHA1 Message Date
Rafal Kupiec a24e44fbf3
Completely remove this broken threading implementation. Fixes #55.
The build was successful. Details
2019-10-28 21:35:16 +01:00
Rafal Kupiec f3972a9ca2
Rename LFB/LFE operators.
The build was successful. Details
2019-10-25 23:09:30 +02:00
Rafal Kupiec f323e3cb57
Make a use from PH7_MemObjIsHashmap().
The build was successful. Details
2019-09-10 14:12:07 +02:00
Rafal Kupiec 426ec932ec
Implement MemObjIsHashmap().
The build was successful. Details
2019-09-10 10:55:54 +02:00
Rafal Kupiec 3aa31a9dfa
Make a use from MemObjIsNumeric().
The build was successful. Details
2019-09-10 10:10:52 +02:00
Rafal Kupiec f0aba06f4f
Allow increment/decrement operations only on numeric operands.
The build was successful. Details
2019-09-10 08:03:35 +02:00
Rafal Kupiec 18b96064e4
Do not allow to call non-existen array/string index.
The build was successful. Details
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
Rafal Kupiec 3b9d91f186
Revert 3dcc908788.
The build was successful. Details
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. Details
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. Details
2019-07-12 14:10:09 +02:00
David Carlier d96dcdf1e0 Little build warning removal
The build was successful. Details
2019-07-11 07:17:34 +00:00
Rafal Kupiec 376b9510a9
Fix typos, formatting.
The build was successful. Details
2019-06-30 14:13:35 +02:00
Rafal Kupiec ad49b81b33
Add support for HTTP/2.0 protocol version.
The build was successful. Details
2019-06-30 09:51:15 +02:00
Rafal Kupiec 171456beb4
Release all elements in object allocation table.
The build was successful. Details
2019-06-29 15:54:05 +02:00
Rafal Kupiec 563c10bd20
Do not omit floating point.
The build was successful. Details
2019-06-29 11:41:37 +02:00
Rafal Kupiec 2e695a9d35
Link dynamically with libC.
The build was successful. Details
2019-06-29 11:15:03 +02:00
Rafal Kupiec 2ef2b6265c
Never disable IO library.
The build was successful. Details
2019-06-29 11:10:50 +02:00
Rafal Kupiec a6d89da16b
Do not support old libC.
The build was successful. Details
2019-06-28 19:43:23 +02:00
Rafal Kupiec 48d5088265
Enable the magic number protection.
The build was successful. Details
2019-06-27 22:57:08 +02:00
Rafal Kupiec 3dcc908788
Enable threading.
The build was successful. Details
2019-06-27 20:52:37 +02:00
Rafal Kupiec 4881ddf6de
Pass compatible pointer type.
The build was successful. Details
2019-06-27 20:44:50 +02:00
Rafal Kupiec 312fb97db6
Another FS-related bugfix to make compiler happy.
The build was successful. Details
2019-06-25 20:25:56 +02:00
Rafal Kupiec 0a2f1133d5
Do not use pointer for file path.
The build was successful. Details
2019-06-25 20:10:27 +02:00
Rafal Kupiec 647454b98d
Another signedness correction.
The build was successful. Details
2019-06-22 20:45:22 +02:00
Rafal Kupiec 72782b147a
Do not convert between data pointers and function pointers.
The build was successful. Details
2019-06-22 12:35:33 +02:00
Rafal Kupiec edb62ed692
Correct signedness.
The build was successful. Details
2019-06-22 12:34:49 +02:00
Rafal Kupiec 8b2086402e
Fix all compiler warnings in AerScript compiler.
The build was successful. Details
2019-06-22 11:59:43 +02:00
Rafal Kupiec dcf37af75e
Implement a NULL-coalescing '??' operator.
The build was successful. Details
2019-06-21 00:34:41 +02:00
Rafal Kupiec 3045bd2d88
Update lexer. Add missing operators.
The build was successful. Details
2019-06-20 14:30:49 +02:00
Rafal Kupiec 19d0628afc
Do not try to duplicate an array when source equals to destination.
The build was successful. Details
2019-06-20 13:36:30 +02:00
Rafal Kupiec 59811ac742
Completely rely on the compiler.
The build was successful. Details
2019-06-20 12:10:02 +02:00
Rafal Kupiec e40dc34026
Pass proper line number from compiler to the virtual machine.
The build was successful. Details
2019-06-20 12:07:47 +02:00
Rafal Kupiec ca51e2a5da
Add comments.
The build was successful. Details
2019-06-19 10:14:01 +02:00
Rafal Kupiec bd24aa0605
Correct more compiler warnings.
The build was successful. Details
2019-06-19 09:31:40 +02:00
Rafal Kupiec 690213e0c7
Do not use a pointer for temporary value.
The build was successful. Details
2019-06-18 13:25:40 +02:00
Rafal Kupiec 0be38392bd
Correct variable types, to make compiler silent.
The build was successful. Details
2019-06-17 14:28:03 +02:00
Rafal Kupiec bffd44a7b4
Get rid of some annoying compiler warnings.
The build was successful. Details
2019-06-17 09:51:37 +02:00
Rafal Kupiec 8d0c128d22
Fix comparison of integer expressions of different signedness.
The build was successful. Details
2019-06-16 00:37:20 +02:00
Rafal Kupiec c7b6e76d0d
Get rid of unused variables/labels/etc.
The build was successful. Details
2019-06-16 00:33:03 +02:00
Rafal Kupiec 8985044054
Remove some unused variables.
The build was successful. Details
2019-06-15 17:43:24 +02:00
Rafal Kupiec 010bdd7331
Properly destroy temporary memory object. Fix memory leak.
The build was successful. Details
2019-06-14 17:16:41 +02:00
Rafal Kupiec 0bef248298
Implement PH7_VmDestroyMemObj() to forcibly destroy a memory object.
The build was successful. Details
2019-06-14 17:11:34 +02:00
Rafal Kupiec d09a33da55
Do not duplicate variable name in this case.
The build was successful. Details
This should save a lot of memory on many method calls.
2019-06-14 10:17:50 +02:00
Rafal Kupiec 673796d878
Add missing function description.
The build was successful. Details
2019-06-13 08:04:58 +02:00
Rafal Kupiec 4723128b74
Implement PH7_MemObjIsNull().
The build was successful. Details
2019-06-12 18:55:41 +02:00
Rafal Kupiec 0ef6b449c6
Make a free slot in operator precedence for NULL-coalescing operator.
The build was successful. Details
2019-06-11 09:35:47 +02:00
Rafal Kupiec 5c824ec67d
Do not set any recursion depth limit.
The build was successful. Details
2019-06-10 12:11:55 +02:00
Rafal Kupiec 9aa192db69
Remove unused argument from PH7_MemObjInitFromVoid().
The build was successful. Details
2019-06-08 14:36:24 +02:00
Rafal Kupiec fdba2c0a5c
Set data type to void, not just NULL.
The build was successful. Details
2019-06-08 13:59:44 +02:00
Rafal Kupiec 6c277c1eca
Allow implicitly-typed variable declarations inside 'for' and 'foreach' loops.
The build was successful. Details
2019-06-08 13:35:16 +02:00