Commit graph

1660 commits

Author SHA1 Message Date
Nikita Popov
130b6340d2 Code cleanup 2014-07-22 13:30:26 +02:00
Nikita Popov
cc0bef6636 Fix namespace\, maybe 2014-07-22 13:25:47 +02:00
Nikita Popov
9c69c41a64 Port top level stmt
Problem: namespace\foo no longer works :/
2014-07-22 13:02:51 +02:00
Nikita Popov
8a2ff6b53d Partial NS port (semicolon, no errors) 2014-07-22 12:45:44 +02:00
Nikita Popov
b6c9eb21d4 Port constant declaration 2014-07-22 11:55:07 +02:00
Nikita Popov
64151ec37a Port function/const use 2014-07-21 23:41:11 +02:00
Nikita Popov
573d25b5e7 Drop dead code 2014-07-21 22:58:38 +02:00
Nikita Popov
37ac1b96ed Port use statement 2014-07-21 22:49:31 +02:00
Nikita Popov
94d5d7d01b Remove one usage of implementing_class 2014-07-21 18:25:46 +02:00
Nikita Popov
6c6dd84c50 Dead code 2014-07-21 18:24:10 +02:00
Nikita Popov
f8ce5e6efc Handle const expr __CLASS__ in trait 2014-07-21 18:21:13 +02:00
Nikita Popov
61a6083e99 Fix some remaining class declaration issues 2014-07-21 18:15:09 +02:00
Nikita Popov
df970e9fc2 Pre-evaluate magic constants 2014-07-21 18:02:31 +02:00
Nikita Popov
18fd2a1897 Port __TRAIT__ and __CLASS__ to AST 2014-07-21 17:34:00 +02:00
Nikita Popov
005315510a Mostly finish class declarations (~50 failing tests) 2014-07-21 17:14:01 +02:00
Nikita Popov
b24bda6be1 Partial port of class declarations 2014-07-21 16:34:45 +02:00
Nikita Popov
461bce5222 Prepare zend_ast_decl for reuse with classes 2014-07-21 15:38:21 +02:00
Nikita Popov
09564ebacf zend_begin_func_decl 2014-07-21 15:22:13 +02:00
Nikita Popov
028c7d20fb Throw \self etc error
Could only enable this now that everything uses the new format
2014-07-19 23:44:33 +02:00
Nikita Popov
c8d99a1333 No need to handle leading \ in class_name_literal 2014-07-19 23:39:51 +02:00
Nikita Popov
e6e8867550 Fix class name resolution in traits 2014-07-19 23:36:01 +02:00
Nikita Popov
86f1004c4e Improve class name handling 2014-07-19 23:30:07 +02:00
Nikita Popov
e572a32657 Dead code 2014-07-19 22:46:22 +02:00
Nikita Popov
291bcfe4f1 Port trait uses 2014-07-19 22:39:01 +02:00
Nikita Popov
fd7387a761 Handle class const doc comment
Property doc comments not yet handled
2014-07-19 15:20:35 +02:00
Nikita Popov
222430d99c Port class const decl 2014-07-19 15:13:50 +02:00
Nikita Popov
43d6e599cf Port property declarations 2014-07-19 14:54:56 +02:00
Nikita Popov
1aaaedc1eb Dead code 2014-07-19 13:23:25 +02:00
Nikita Popov
6513e959d6 Fix for with empty expression lists 2014-07-19 13:21:12 +02:00
Nikita Popov
ef26f95676 Load lineno when compiling exprs 2014-07-19 13:13:58 +02:00
Nikita Popov
446cf29ab7 Fix compound assign to static property 2014-07-19 13:03:58 +02:00
Nikita Popov
09309a543f Remove dead code 2014-07-19 13:00:57 +02:00
Nikita Popov
74dba7e4db __autoload error 2014-07-19 12:57:31 +02:00
Nikita Popov
547331d24d Port methods
The duplicated magic method checks are ugly
2014-07-19 12:52:44 +02:00
Nikita Popov
b9f62be2e6 Cleanup 2014-07-18 20:24:44 +02:00
Nikita Popov
d0b66f3af3 zend_emit_jump and zend_emit_cond_jump 2014-07-18 20:03:29 +02:00
Nikita Popov
ca7a490758 zend_update_jump_target 2014-07-18 16:11:43 +02:00
Nikita Popov
0eab81f32b Remove bits of dead code 2014-07-18 15:53:38 +02:00
Nikita Popov
adbddf4e5b Support static closures 2014-07-18 15:47:46 +02:00
Nikita Popov
405b97e8a9 Handle function doc comments 2014-07-18 15:23:16 +02:00
Nikita Popov
cdcf78f730 Fix lexer/compiler interdependency 2014-07-18 15:05:31 +02:00
Nikita Popov
359f99fe48 Use dedicated func_decl ast node
Functions need a bunch of extra info, that becomes inconvenient
to handle using the normal ast structure.
2014-07-18 14:57:00 +02:00
Nikita Popov
3ad55e001e Small cleanup
Current problem: build_runtime_defined_function_key is lexer
coupled
2014-07-18 13:15:58 +02:00
Nikita Popov
ae5ba9abfb Port closures 2014-07-18 12:58:24 +02:00
Nikita Popov
abfc8bd894 Port closure use 2014-07-18 12:30:39 +02:00
Nikita Popov
20d2a044ee Lineno corrections 2014-07-16 23:33:22 +02:00
Nikita Popov
64a7132185 Port __METHOD__ 2014-07-16 23:23:25 +02:00
Nikita Popov
a75921dcb1 Port __FUNCTION__ to AST 2014-07-16 23:10:16 +02:00
Nikita Popov
f589713cc4 Preliminary function decl support
Problem: __FUNCTION__ etc don't work anymore, due to lexer/parser
interdependency.
2014-07-16 00:07:09 +02:00
Nikita Popov
1ee3277aba Port parameter defs
Has one bug re \self
2014-07-14 23:03:53 +02:00