Commit Graph

778 Commits

Author SHA1 Message Date
Felipe Pena
402fb5285d - MFH: Fixed bug #44769 (declaring private magic methods should throw error) 2008-06-03 14:07:15 +00:00
Dmitry Stogov
af1ed80274 Fixed bug #44952 (isset() does not checks correctly variable variable) 2008-05-12 09:09:05 +00:00
Dmitry Stogov
5521912b15 Use IS_CV for dirrent access to $this variable 2008-05-07 12:04:39 +00:00
Dmitry Stogov
1b317f1526 - 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:03:35 +00:00
Dmitry Stogov
5a0253c14c Support for old-style constructors in namespaces 2008-05-05 09:44:39 +00:00
Dmitry Stogov
2ecf4bb0a7 Lazy EG(active_symbol_table) initialization 2008-04-29 08:15:20 +00:00
Nuno Lopes
7507ff326e fix heredoc+nowdoc
#patch by Matt Wilmas
2008-04-10 19:19:04 +00:00
Dmitry Stogov
dfacfae34a Bug #44653 (Invalid namespace name resolution) 2008-04-09 08:55:45 +00:00
Felipe Pena
f66f55edc5 MFH: Implemented "jump label" operator (limited "goto")
[DOC]
2008-03-28 14:35:01 +00:00
Ilia Alshanetsky
44a6326b15 Removed unused variable 2008-03-25 20:19:04 +00:00
Felipe Pena
9e2894f5ff MFH:
- 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-25 18:08:37 +00:00
Marcus Boerger
51e9bd075f - Simplify 2008-03-21 18:20:07 +00:00
Dmitry Stogov
8b01532f64 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:00 +00:00
Dmitry Stogov
8c885b8913 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:30 +00:00
Antony Dovgal
7dd943ac5c MFH: fix #39127 (Old-style constructor fallbacks produce strange results) 2008-03-17 14:54:42 +00:00
Marcus Boerger
af316021e8 - Rewrite scanner to be based on re2c instead of flex
The full patch is available as:
  http://php.net/~helly/php-re2c-5.3-20080316.diff.txt
  This is against php-re2c repository version 98
  An older patch against version 97 is available under:
  http://php.net/~helly/php-re2c-97-20080316.diff.txt
2008-03-16 21:06:55 +00:00
Dmitry Stogov
2564bdc73c Code simplification 2008-03-12 10:40:02 +00:00
Dmitry Stogov
be8daf1f47 Optimized ZEND_FETCH_CLASS + ZEND_ADD_INTERFACE into single ZEND_ADD_INTERFACE opcode 2008-03-12 10:32:12 +00:00
Dmitry Stogov
0f2247ae94 Fixed bug #44414 (Incomplete reporting about abstract methods) 2008-03-12 09:46:42 +00:00
Robin Fernandes
0455ccb805 Remove inconsistent behaviour when a protected static prop is overridden by public static prop (details: http://turl.ca/phhhf ). 2008-03-03 15:07:04 +00:00
Johannes Schlüter
68de75f0b5 MFH: Allow implementation of abstract methods with optional parameters (Christian
Schneider)
2008-03-01 13:53:32 +00:00
Marcus Boerger
d3e5026564 - MFH Add E_DEPRECATED (Lars Strojny, Felipe Pena, Marcus)
[DOC] Finally added deprecation messages
2008-02-23 17:06:22 +00:00
Dmitry Stogov
8c32f99c25 Fixed bug #44184 (Double free of loop-variable on exception) 2008-02-20 12:05:57 +00:00
Dmitry Stogov
ddcf7a2f49 Added NEWDOC 2008-02-12 09:27:45 +00:00
Stanislav Malyshev
bbc813d360 fix folding 2008-02-12 01:17:48 +00:00
Stanislav Malyshev
fd597dce1b [DOC] Add compile-time __DIR__ constant which implements dirname(__FILE__) 2008-02-12 00:21:15 +00:00
Antony Dovgal
4252942abd MFH: fix typo and bug #43646 2008-01-29 00:07:26 +00:00
Dmitry Stogov
0095544c4d Additional executor specialization 2008-01-23 17:55:55 +00:00
Dmitry Stogov
fa47e900e2 Changed exception handling. Now each op_array doesn't contain ZEND_HANDLE_EXCEPTION opcode in the end 2008-01-21 19:39:55 +00:00
Dmitry Stogov
b5c4244069 Fixed bug #43703 (Signature compatibility check broken) 2008-01-09 07:57:42 +00:00
Sebastian Bergmann
d1dded8751 MFH: Bump copyright year, 2 of 2. 2007-12-31 07:17:19 +00:00
Dmitry Stogov
5a3eb53723 Fixed bug #38469 (unexpected creation of cycle, json tests failed, leaks memory) 2007-12-28 13:22:00 +00:00
Dmitry Stogov
2fa0078a71 Initialize operand type 2007-12-28 09:46:52 +00:00
Dmitry Stogov
ba8dcae76d Use proper result type 2007-12-27 13:52:05 +00:00
Dmitry Stogov
64e8f22355 Allowed import of global classes "use ::GlobalClassName;" 2007-12-13 10:02:03 +00:00
Dmitry Stogov
80e77c1366 Allowed multiple namespaces per file (Gregory) 2007-12-13 08:57:52 +00:00
Dmitry Stogov
6484b3c458 Fixed bug #43344 (Wrong error message for undefined namespace constant) 2007-12-07 17:11:24 +00:00
Dmitry Stogov
d161978c56 Fixed uninitialized value 2007-12-04 12:38:42 +00:00
Dmitry Stogov
0f59a01e4a Fixed bug #43332 (self and parent as type hint in namespace) 2007-12-03 14:15:43 +00:00
Dmitry Stogov
648fbe9d58 Fixed bug #43128 (Very long class name causes segfault) 2007-11-22 13:27:13 +00:00
Dmitry Stogov
1836daf7f9 Fixed bug #43318
The "const" statement is still allowed outside of namespaces but arrays are disabled.
2007-11-22 10:46:26 +00:00
Dmitry Stogov
ea0a1c09e9 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:02:55 +00:00
Johannes Schlüter
45f6b4ce2f - MFH Improved version of ternary shortcut (Marcus) 2007-11-21 09:41:35 +00:00
Dmitry Stogov
9f230a0d79 Added support for "namespace::" prefix that is resolved to current namespace name. 2007-11-20 08:53:02 +00:00
Antony Dovgal
714aad97e7 MFH: disallow multiple access modifiers and 'abstract abstract' methods (patch by Etienne Kneuss)
add tests
2007-11-13 16:52:14 +00:00
Dmitry Stogov
6d64218bc5 better error messages 2007-11-12 17:52:15 +00:00
Antony Dovgal
52e773740c MFH: fix error message (reported by Felipe Nascimento) 2007-11-12 16:55:44 +00:00
Dmitry Stogov
a90a0305b0 Fixed bug #43183 ("use" of the same class in difference scripts results in a fatal error) 2007-11-12 15:52:22 +00:00
Dmitry Stogov
8646d9afce Fixed type-hint compatibility check in namespaces 2007-11-09 13:34:39 +00:00
Dmitry Stogov
98b3c247a8 Fixed implementation of internal interfaces in namesapces 2007-11-09 12:15:41 +00:00