33 Commits (e4ab5974fa36ea2d32d3713b07aea1620549c8db)

Author SHA1 Message Date
Rafal Kupiec e4ab5974fa
Let the compiler use OP_ADD instead of OP_CAT 3 years ago
Rafal Kupiec 9a56751879
Allow addition operator (+) to concatenate strings. 3 years ago
Rafal Kupiec 4bbdc20174
This commit contains several changes: 3 years ago
Rafal Kupiec 7b3e6c5b76
P# introduces virtual classes and virtual methods 3 years ago
Rafal Kupiec 159cd76020
No need to duplicate exit() 3 years ago
Rafal Kupiec ef2ea60a60
Treat whole file as P# source code. Fixes #24. 3 years ago
Rafal Kupiec bdf053a205
Implement a fix also for interface. This commit also adds initial and partial support for multiple inheritance. 3 years ago
Rafal Kupiec caf9126f0b
Several changes: 3 years ago
Rafal Kupiec e47eef7d97
Fix error reporting 3 years ago
Rafal Kupiec 33ab488ace
Removing a debug printf calls and improve error handling. 3 years ago
Rafal Kupiec 9e885b3196
Generally speaking ... this is working. 3 years ago
Rafal Kupiec af2c23d3b2
Add some basic checks. At this point, I can say it detects correctly a class declared inside inclueded file. 3 years ago
Rafal Kupiec e70a89fcdb
This is useless. 3 years ago
Rafal Kupiec b040886b97
Test and temporary version of compiler emiting PH7_OP_CLASS_INIT instruction. 3 years ago
Rafal Kupiec 09451f4042
Two changes come here: 3 years ago
Rafal Kupiec 63b0f450d3
Move VM initialization into separate step to enable errors reporting earlier. 3 years ago
Rafal Kupiec 7bf76c3fa0 Make reported errors more PHP-like 3 years ago
Rafal Kupiec eaf5ca7b5f
Make reported errors more PHP-like 3 years ago
Rafal Kupiec 11b4c95c6f
Remove useless duplicated debug functions, they returned some trash information (nothing we don't get via debug_backtrace). 3 years ago
Rafal Kupiec 52d9616503
Revert d937d0c825 3 years ago
Rafal Kupiec c28e0dbc88
There are problably still a lot of typos, here and there. 3 years ago
Rafal Kupiec 38186c3fda
Correct error messages 3 years ago
Rafal Kupiec 17c486d599
Make reported errors more PHP-like 3 years ago
David Carlier aa2d762b29 Fixing include files functions 3 years ago
David Carlier dba8e5098f fixing in the vm context instead, making the feature available in case realpath could be implemented as well 3 years ago
Rafal Kupiec 7bb9924699
Call to undefined function should also be an error, not warning 3 years ago
Rafal Kupiec 9cae9eb905
Throw an error if it cannot match the overloaded function/method. This fixes #13. 3 years ago
Rafal Kupiec 63385281bf
Break script execution on exit 3 years ago
Rafal Kupiec ceca007cd1 Correct some typos 3 years ago
David Carlier e7b78be8e5 Fix #15, merge from fix_debug_backtrace branch (#18) 3 years ago
David Carlier 357be5ec0d Attempt to fix #3 (#14) 3 years ago
Rafal Kupiec dc4c51ca5a
Allow to use operating systems's native dynamic library extension 3 years ago
Rafal Kupiec abb91a9874
Reorganize the repository for new build system 3 years ago
Rafal Kupiec a00e81f4f8
Move XML support into separate module. 3 years ago
Rafal Kupiec 95e9174058
Move JSON support into separate module. 3 years ago
Rafal Kupiec 0dc9a04f0e
It is a bad idea to compare memory. This fixes some false-positives. 3 years ago
Rafal Kupiec 28dbeeb1ad
I'm not a big Windows fun, so please correct me if this is not working 3 years ago
Rafal Kupiec d1e56b9206
sizeof() is enough 3 years ago
devnexen f0b3adc44a Further change for module load (#11) 3 years ago
devnexen e755fd55b9 Little build fix (#10) 3 years ago
Rafal Kupiec 5908307885
Automatically unload all modules and free up memory on VM release. 3 years ago
Rafal Kupiec ee5504ea3a
Initial support for modules, partially implements #1 3 years ago
David Carlier 62344a99ef Adding random_int/random_bytes functions but still using PH7 PRNG. 3 years ago
Rafal Kupiec 6d0e346b7d
Correct coding style 3 years ago
Rafal Kupiec 4f4371545b
Implement register_autoload_handler() builtin function, that registers any number of autoloaders, enabling for classes to be automatically loaded if they are not defined. 3 years ago
Rafal Kupiec d0357787db
Do not consider a method with the same name as class name to be a constructor, nor do not create such alias. This is some event from old PHP4, we do not want to support. Magic methods <__construct() & __destruct()> are more than 3 years ago
Rafal Kupiec 5d1e75d72c
There will be no PDO. P# will contain DBAL 3 years ago
Rafal Kupiec 0c4f5bcd75
Serialization cannot depend on JSON. It needs to be rewritten in the future 3 years ago
Rafal Kupiec d898cd1e36
Code formatting 3 years ago
Rafal Kupiec f212588ab1
Removing unnecessary operators (eq, ne). Some special strings comparison should be implemented as a function like strcmp(). 3 years ago