Commit graph

950 Commits

Autor SHA1 Nachricht Datum
3dcc908788 Enable threading.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-27 20:52:37 +02:00
4881ddf6de Pass compatible pointer type.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-27 20:44:50 +02:00
312fb97db6 Another FS-related bugfix to make compiler happy.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-25 20:25:56 +02:00
0a2f1133d5 Do not use pointer for file path.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-25 20:10:27 +02:00
647454b98d Another signedness correction.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-22 20:45:22 +02:00
72782b147a Do not convert between data pointers and function pointers.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-22 12:35:33 +02:00
edb62ed692 Correct signedness.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-22 12:34:49 +02:00
8b2086402e Fix all compiler warnings in AerScript compiler.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-22 11:59:43 +02:00
8ee2dece06 Test NULL-coalescing operator.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-21 23:53:01 +02:00
dcf37af75e Implement a NULL-coalescing '??' operator.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-21 00:34:41 +02:00
6d964d6113 Add missing declaration for PH7_MemObjIsNull() function.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-21 00:30:35 +02:00
3045bd2d88 Update lexer. Add missing operators.
Alle Prüfungen waren erfolgreich
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.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-20 13:36:30 +02:00
59811ac742 Completely rely on the compiler.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-20 12:10:02 +02:00
e40dc34026 Pass proper line number from compiler to the virtual machine.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-20 12:07:47 +02:00
c76ae15a7b Disable undefined behavior sanitizer.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-20 00:19:52 +02:00
a1f1d50d25 Allow to use compiler's sanitizer. This fixes #53.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-19 17:38:36 +02:00
ca51e2a5da Add comments.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-19 10:14:01 +02:00
bd24aa0605 Correct more compiler warnings.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-19 09:31:40 +02:00
690213e0c7 Do not use a pointer for temporary value.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-18 13:25:40 +02:00
0be38392bd Correct variable types, to make compiler silent.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-17 14:28:03 +02:00
bffd44a7b4 Get rid of some annoying compiler warnings.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-17 09:51:37 +02:00
173bac16ad Add missing definitions.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-16 19:54:42 +02:00
b3eb2d0139 Include missing header.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-16 08:41:42 +02:00
050a637e88 Add missing declarations.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-16 08:31:43 +02:00
8d0c128d22 Fix comparison of integer expressions of different signedness.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-16 00:37:20 +02:00
c7b6e76d0d Get rid of unused variables/labels/etc.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-16 00:33:03 +02:00
1a91fedb1f Proper SXUNUSED() macro implementation.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-16 00:10:27 +02:00
fffce10ba8 Test for implicitly typed declarations.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-15 23:44:10 +02:00
ace4d56d7f The '-Og' is a better choice than '-O0' for producing debuggable code because some compiler passes that collect debug information are disabled at '-O0'.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-15 18:12:27 +02:00
8985044054 Remove some unused variables.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-15 17:43:24 +02:00
77150e9d26 Enable some code diagnostics.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-15 17:20:51 +02:00
aff19a98da Fibonacci sequence in AerScript implementation.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-14 22:52:02 +02:00
010bdd7331 Properly destroy temporary memory object. Fix memory leak.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-14 17:16:41 +02:00
0bef248298 Implement PH7_VmDestroyMemObj() to forcibly destroy a memory object.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-14 17:11:34 +02:00
d09a33da55 Do not duplicate variable name in this case.
Alle Prüfungen waren erfolgreich
The build was successful.
This should save a lot of memory on many method calls.
2019-06-14 10:17:50 +02:00
673796d878 Add missing function description.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-13 08:04:58 +02:00
ea948216ff Merge 'master' branch.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-12 18:56:04 +02:00
4723128b74 Implement PH7_MemObjIsNull().
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-12 18:55:41 +02:00
da2e74ba08 Revert commit 815b1481fc.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-12 09:53:13 +02:00
0ef6b449c6 Make a free slot in operator precedence for NULL-coalescing operator.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-11 09:35:47 +02:00
815b1481fc Permit a discontiguous stack which is grown automatically as needed.
Alle Prüfungen waren erfolgreich
The build was successful.
The stack will have a guaranteed zone which is always available. The size of the guard area will be target specific. It will include enough stack space to actually allocate more stack space. Each function will have to verify that
it has enough space in the current stack to execute.
2019-06-10 20:06:25 +02:00
5c824ec67d Do not set any recursion depth limit.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-10 12:11:55 +02:00
9aa192db69 Remove unused argument from PH7_MemObjInitFromVoid().
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-08 14:36:24 +02:00
fdba2c0a5c Set data type to void, not just NULL.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-08 13:59:44 +02:00
6c277c1eca Allow implicitly-typed variable declarations inside 'for' and 'foreach' loops.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-08 13:35:16 +02:00
0327c3130f Do not allow to initialize an implicitly-typed variable with an array initializer.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-08 13:09:35 +02:00
78c416c6b8 Implement the implicit 'auto' type.
Alle Prüfungen waren erfolgreich
The build was successful.
An implicitly typed local variable is strongly typed just as if it had been declared the type, but the compiler determines the type. The following two declarations of $i are functionally equivalent:
int $i = 10; // Explicitly typed.
auto $i = 10; // Implicitly typed.
2019-06-08 12:55:57 +02:00
cbe4f29909 Define 'auto' keyword.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-08 12:19:00 +02:00
a00d30afa2 Set NULL data type instead of throwing an error.
Alle Prüfungen waren erfolgreich
The build was successful.
2019-06-08 09:14:16 +02:00