8b48786f29
Add missing data types.
The build was successful.
2018-09-14 08:47:16 +02:00
74b1c196f9
Treat invalid type name as error.
The build was successful.
2018-09-13 18:56:01 +02:00
d4992ff4ba
At least try to report correct line number.
The build was successful.
2018-09-12 19:24:48 +02:00
ae79cb57de
No need to store information about line number in ph7_class struct.
The build was successful.
2018-09-05 17:42:10 +02:00
894dbe47d6
Allow compiler to specify line number, on which instruction has been generated.
...
The build was successful.
This also fixes line number on OP_CLASS_INIT and OP_INTERFACE_INIT.
2018-09-05 17:31:06 +02:00
03e452ea7b
Shutdown library properly on error.
The build was successful.
2018-09-04 09:13:28 +02:00
94b213674a
Change the script located in memory indicator.
...
The build was successful.
For easier reading with line numbers.
2018-08-23 18:27:14 +02:00
dbe373d537
Resolve __CLASS__ at compile time.
...
The build was successful.
Ticket: #45 : __CLASS__ constant must be resolved at compile time, not run time. Otherwise it returns incorrect data.
2018-08-22 09:59:10 +02:00
3e18a5b8e8
Optimize the code, #45 .
The build was successful.
2018-08-22 08:51:45 +02:00
a0f7949b24
Resolve __DIR__ at compile time.
...
The build was successful.
Ticket: #45 : __DIR__ constant must be resolved at compile time, not run time. Otherwise it returns incorrect data.
2018-08-22 06:23:43 +02:00
02242bb93d
Resolve __FILE__ at compile time.
...
The build was successful.
Ticket: #45 : __FILE__ constant must be resolved at compile time, not run time. Otherwise it returns incorrect data.
2018-08-21 20:18:39 +02:00
19a504fe11
Enter the class block during compilation, #45 .
The build was successful.
2018-08-21 19:45:50 +02:00
f28c671e69
Compile closures.
The build was successful.
2018-08-16 18:31:12 +02:00
a8961eb36f
Fix build
The build was successful.
2018-08-16 17:48:17 +02:00
2c28b63d90
Properly interpret language constructs, fixes #28 .
2018-08-16 17:42:30 +02:00
510410096b
Aer is OOP language. There is nothing like function.
The build was successful.
2018-08-16 13:57:35 +02:00
4961922b1d
Unify error with other related to namespace.
The build was successful.
2018-08-16 13:36:19 +02:00
793b6127d5
Temporarily fix namespace support.
...
The build was successful.
The namespace feature is not supported in this version, they are treated same way as global scope.
2018-08-16 12:39:05 +02:00
787f3b5d5f
Synchronize the namespace also with first semicolon.
The build was successful.
2018-08-16 12:01:36 +02:00
be27532fdf
Unify error level for namespace support.
The build was successful.
2018-08-16 11:26:47 +02:00
e208e778e0
Compile global scope independently, fixes #40 .
The build was successful.
2018-08-16 11:15:03 +02:00
64b9ac4406
Forward declaration already in compiler.h
The build was successful.
2018-08-15 11:18:40 +02:00
be454ff7be
Rename PH7_COMPILE_SINGLE_STMT to PH7_COMPILE_STATEMENT
The build was successful.
2018-08-14 23:48:15 +02:00
ece036b214
Rework the entry point
...
The build was successful.
* some functions were not used and have been removed
* some parameters seemed to be useless and have been removed
* code cleanup
2018-08-14 13:45:27 +02:00
7e3c79d3c5
Functions naming cleanup
The build was successful.
2018-08-13 20:16:37 +02:00
02fde9c30f
It is not PHP compiler
The build was successful.
2018-08-13 19:53:08 +02:00
aa6e00db27
Forward declaration for all functions.
The build was successful.
2018-08-12 21:58:27 +02:00
59c15caf4e
Use something more human readable
The build was successful.
2018-08-12 21:16:05 +02:00
6b7591a137
Move common part to compiler.h
The build was successful.
2018-08-12 21:11:13 +02:00
289af8f9ae
Unify compiler's function naming convenction
The build was successful.
2018-08-12 20:58:01 +02:00
5ef5cf3e46
Make errors more readable.
The build was successful.
2018-08-12 19:36:17 +02:00
429c28d0cc
Rework error lovels for AerScript.
The build was successful.
2018-08-12 19:35:43 +02:00
c39e627aef
Remove the backtick quoted string.
The build was successful.
2018-08-12 11:08:09 +02:00
cef0f40820
Compile namespace
The build was successful.
2018-08-12 11:06:01 +02:00
c298a41eb7
More verbose error messages
The build was successful.
2018-08-12 10:30:44 +02:00
e866575cb5
More verbose errors
The build was successful.
2018-08-12 10:18:42 +02:00
c759b1f106
Improove error reporting for method declarations
The build was successful.
2018-08-12 09:23:21 +02:00
b61fc9d3e6
Rename function to save it from typo
The build was successful.
2018-08-11 23:21:40 +02:00
576edc6c20
Several changes to virtual class/method. Fixes #41
...
The build was successful.
* do not automatically mark class as virtual when at least one virtual method found
* force non-virtual method to contain body
* force non-virtual class to implement all methods
2018-08-11 22:50:05 +02:00
3f46f01805
Rename anonymous functions
The build was successful.
2018-08-11 21:40:05 +02:00
0d8391eaaa
Correct typos
The build was successful.
2018-08-11 21:22:04 +02:00
e4ab5974fa
Let the compiler use OP_ADD instead of OP_CAT
The build was successful.
2018-08-07 07:47:25 +02:00
4bbdc20174
This commit contains several changes:
...
The build was successful.
* print() is now treated as standard function
* get rid of echo() function
* fix test suite
and it fixes #26 .
2018-08-06 17:18:27 +02:00
Piotr Likoski
bcde1f446d
It does not matter if it is empty string or not, we want to process it. Empty string should not ever been even considered as a NULL. Fixing #35 .
The build was successful.
2018-08-06 16:13:49 +02:00
Piotr Likoski
a8259e7dbc
Empty double-quoted string can be served as single-quoted string. Preparing for further changes in scope of #35 .
The build was successful.
2018-08-06 16:03:22 +02:00
2c37807370
Get rid of global keyword, fixes #29
2018-07-31 15:24:56 +02:00
7b3e6c5b76
P# introduces virtual classes and virtual methods
2018-07-30 17:08:25 +02:00
b7792dfc3d
P# is not going to derive namespace syntax from PHP, but from C++.
2018-07-30 16:55:49 +02:00
48b2e9d1c6
Update comments
2018-07-28 23:40:00 +02:00
e300575ab1
P# does not support PHP tags, thus there is also no need to support shortcut for echo.
2018-07-28 23:18:48 +02:00