Dmitry Stogov
8d2e0a7e0f
Added closures support
2008-07-08 07:05:04 +00:00
Dmitry Stogov
ecf108e681
Allowed to override internal classaes with "use"
2008-06-20 17:17:19 +00:00
Felipe Pena
737dd4ef6e
- MFB: Fixed bug #45089 (__callStatic $name case sensitivity)
2008-06-03 19:01:26 +00:00
Felipe Pena
15ec44e0bd
- Fixed bug #44769 (declaring private magic methods should throw error)
2008-06-03 13:55:47 +00:00
Dmitry Stogov
25aaecc64d
Fixed bug #44952 (isset() does not checks correctly variable variable)
2008-05-12 09:09:28 +00:00
Dmitry Stogov
37691b0cd0
Use IS_CV for dirrent access to $this variable
2008-05-07 12:04:58 +00:00
Dmitry Stogov
c1b01f7318
- Use ZEND_FREE() opcode instead of ZEND_SWITCH_FREE(IS_TMP_VAR)
...
- Fixed bug #44913 (Segfault when using return in combination with nested loops and continue 2)
2008-05-05 11:02:46 +00:00
Dmitry Stogov
a0f5a72a8a
Support for old-style constructors in namespaces
2008-05-05 09:44:07 +00:00
Dmitry Stogov
1d0f893b49
Lazy EG(active_symbol_table) initialization
2008-04-29 08:15:49 +00:00
Felipe Pena
d69738604f
- Removed unused variables
2008-04-24 16:15:33 +00:00
Dmitry Stogov
3e7fc16078
Bug #44653 (Invalid namespace name resolution)
2008-04-09 08:55:31 +00:00
Scott MacVicar
e55a0de496
MFB 5.3: Rewrite scanner to be based on re2c instead of flex
...
There are still changes in regards to parsing of Unicode encoded scripts to come.
2008-03-26 14:23:02 +00:00
Felipe Pena
c3ca82f363
- Renamed zend_do_fetch_class_name() to zend_do_build_full_name() (It is not used only for classes)
...
- Moved zend_resolve_class_name prototype to zend_compile.h
2008-03-22 19:10:20 +00:00
Felipe Pena
24505f7c87
- Simplify zend_do_build_namespace_name()
...
- Fix macro (Z_USTRLEN/Z_STRLEN -> Z_UNILEN) in zend_do_fetch_class_name()
2008-03-21 20:41:22 +00:00
Dmitry Stogov
d390956ccb
Removed hack (we don't need to modify class name).
...
(the problem is covered by Zend/tests/ns_056.phpt)
2008-03-18 11:37:15 +00:00
Dmitry Stogov
ea9305c543
Implemented concept of "delayed early binding" that allows opcode caches to perform class declaration (early and/or run-time binding) in exactly the same order as vanila php.
...
The following pseudo-code explains how it should be used in opcode cache.
function cache_compile_file($filename) {
if (!is_cached($filename)) {
...
orig_compiler_options = CG(compiler_optins);
CG(compiler_options) |= ZEND_COMPILE_IGNORE_INTERNAL_CLASSES |
ZEND_COMPILE_DELAYED_BINDING;
$op_array = orig_compile_file($filename);
CG(compiler_options) = orig_copiler_options;
...
} else {
$op_array = restore_from_cache($filename);
}
zend_do_delayed_early_binding($op_array);
}
2008-03-18 08:36:49 +00:00
Felipe Pena
2c7b9a55cb
Fix build
2008-03-18 00:37:35 +00:00
Antony Dovgal
abbd1e8ece
fix #39127i (Old-style constructor fallbacks produce strange results)
2008-03-17 14:53:43 +00:00
Dmitry Stogov
32073866e9
Code simplification
2008-03-12 10:40:13 +00:00
Dmitry Stogov
b8debfd876
Optimized ZEND_FETCH_CLASS + ZEND_ADD_INTERFACE into single ZEND_ADD_INTERFACE opcode
2008-03-12 10:32:39 +00:00
Dmitry Stogov
6fae346fb4
Fixed bug #44414 (Incomplete reporting about abstract methods)
2008-03-12 09:46:57 +00:00
Felipe Pena
3cbc824eb7
Better readability (USTR_BYTES)
2008-03-07 00:51:02 +00:00
Robin Fernandes
0188a097cc
Remove inconsistent behaviour when a protected static prop is overridden by public static prop (details: http://turl.ca/phhhf ).
2008-03-03 14:24:11 +00:00
Johannes Schlüter
e3c4c2496c
- Allow implementation of abstract methods with optional parameters (Christian
...
Schneider)
2008-03-01 13:53:10 +00:00
Marcus Boerger
93b6edcf06
- Felipe just told me we forgot this one
2008-02-23 21:24:18 +00:00
Marcus Boerger
6b58678c63
- Add E_DEPRECATED (Lars Strojny, Felipe Pena, Marcus)
2008-02-23 17:03:53 +00:00
Dmitry Stogov
478cbe5892
Fixed bug #44184 (Double free of loop-variable on exception)
2008-02-20 12:06:29 +00:00
Dmitry Stogov
87a8f72f49
Added NOWDOC
2008-02-12 09:28:30 +00:00
Stanislav Malyshev
c38d56e371
MFB __DIR_ constant support
2008-02-12 01:02:06 +00:00
Antony Dovgal
392d250c32
fix typo and bug #43646
2008-01-29 00:06:42 +00:00
Dmitry Stogov
b9dcdd409d
Additional executor specialization
2008-01-23 17:56:15 +00:00
Dmitry Stogov
27d1e925e2
Changed exception handling. Now each op_array doesn't contain ZEND_HANDLE_EXCEPTION opcode in the end
2008-01-21 19:41:41 +00:00
Sebastian Bergmann
9b620d50b4
Bump copyright year, 2 of 2.
2007-12-31 07:12:20 +00:00
Dmitry Stogov
9da3b7cf8e
Fixed bug #38469 (unexpected creation of cycle, json tests failed, leaks memory)
2007-12-28 13:22:17 +00:00
Dmitry Stogov
35111ba922
Initialize operand type
2007-12-28 09:47:56 +00:00
Dmitry Stogov
5e649f9e8d
Use proper result type
2007-12-27 13:52:29 +00:00
Dmitry Stogov
579defac82
Allowed import of global classes "use ::GlobalClassName;" (Gregory)
2007-12-13 10:02:26 +00:00
Dmitry Stogov
d47c88feb2
Allowed multiple namespaces per file (Gregory)
2007-12-13 08:58:28 +00:00
Dmitry Stogov
31f6f1583e
Fixed bug #43344 (Wrong error message for undefined namespace constant)
2007-12-07 17:12:22 +00:00
Dmitry Stogov
7cac634fc4
Fixed uninitialized value
2007-12-04 12:36:20 +00:00
Dmitry Stogov
4de1707062
Fixed bug #43332 (self and parent as type hint in namespace)
2007-12-03 14:15:55 +00:00
Dmitry Stogov
975a66da79
Fixed bug #43318
...
The "const" statement is still allowed outside of namespaces but arrays are disabled.
2007-11-22 10:46:44 +00:00
Dmitry Stogov
32ff00efce
Speed-up of ZEND_DO_FCALL and ZEND_INIT_FCALL_BY_NAME by lowercasing and calculating hash values at compile time.
2007-11-22 09:03:11 +00:00
Dmitry Stogov
2a84434ea3
Added support for "namespace::" prefix that is resolved to current namespace name.
2007-11-20 08:53:17 +00:00
Antony Dovgal
9c7296f165
disallow multiple access modifiers and 'abstract abstract' methods
...
add tests
2007-11-13 16:51:22 +00:00
Dmitry Stogov
b6963efdda
better error messages
2007-11-12 17:53:36 +00:00
Antony Dovgal
0c07db4420
fix error message (reported by Felipe Nascimento)
2007-11-12 16:55:28 +00:00
Dmitry Stogov
c74918f5d5
Fixed bug #43183 ("use" of the same class in difference scripts results in a fatal error)
2007-11-12 15:52:11 +00:00
Dmitry Stogov
cdbeea7e2e
Fixed type-hint compatibility check in namespaces
2007-11-09 13:35:22 +00:00
Dmitry Stogov
aea2368bda
Fixed implementation of internal interfaces in namespaces
2007-11-09 12:16:55 +00:00