Commit Graph

190 Commits

Author SHA1 Message Date
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
ddcf7a2f49 Added NEWDOC 2008-02-12 09:27:45 +00:00
Dmitry Stogov
51278b6d22 Fixed ext/tokenizer test failures because of token renumbering 2008-02-12 08:49:08 +00:00
Stanislav Malyshev
fd597dce1b [DOC] Add compile-time __DIR__ constant which implements dirname(__FILE__) 2008-02-12 00:21:15 +00:00
Marcus Boerger
1ecdaa3885 - Fix warnings 2008-02-03 14:32:48 +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
64e8f22355 Allowed import of global classes "use ::GlobalClassName;" 2007-12-13 10:02:03 +00:00
Dmitry Stogov
6484b3c458 Fixed bug #43344 (Wrong error message for undefined namespace constant) 2007-12-07 17:11:24 +00:00
Johannes Schlüter
45f6b4ce2f - MFH Improved version of ternary shortcut (Marcus) 2007-11-21 09:41:35 +00:00
Johannes Schlüter
4a8ed7ab68 - MFH ?: operator (Marcus)
[DOC] "expr1 ?: expr1" is a shortcut for: "expr1 ? expr1 : expr2" as
        exists in gcc and discussed some time back. Note that this is not
        an implementation ifsetor($var, default). While ifsetor would not
        generate any message for non existing variables or array indices
        the ternary shortcut does. Also the ternary shortcut does a boolean
        evaluation rather then checking for isset(). That way ther ternary
        shortcut can work on any expression while ifsetor can only work on
        variables. Also to be silent one has do do: "@$expr1 ?: $expr2".
2007-11-21 00:03:16 +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
Johannes Schlüter
18a656de6f - MFH: static can't be used as type hint, fixes #43126 (Etienne Kneuss) 2007-11-11 22:11:25 +00:00
Dmitry Stogov
b7d87bebc9 T_IMPORT -> T_USE 2007-11-07 09:13:50 +00:00
Dmitry Stogov
b599e434ad Fixed bug #35163 (Array elements can lose references) 2007-10-23 09:55:11 +00:00
Dmitry Stogov
41e9b6b61c Fixed bug #42802 (Namespace not supported in typehints) 2007-10-01 10:37:14 +00:00
Dmitry Stogov
166266df68 Added support for Late Static Binding. (Dmitry, Etienne Kneuss) 2007-09-29 07:28:34 +00:00
Dmitry Stogov
f32ffe9b43 Namespaces 2007-09-28 19:52:53 +00:00
Johannes Schlüter
9483a2ff23 - Readd support for ynamic access of static members (Etienne) 2007-09-27 00:32:40 +00:00
Stanislav Malyshev
c8f090c13e Revert variable class patch for 5.2 2007-08-13 21:16:57 +00:00
Johannes Schlüter
b3c6a9dffc - Add possibility to call static class members using variables (Etienne Kneuss) 2007-08-02 21:55:23 +00:00
Stanislav Malyshev
bc2b546dcc fix #41401 - parser precedence on unary operators
# now 1/-2*5 is -2.5 as it should be
2007-05-18 18:36:04 +00:00
Dmitry Stogov
80d2409fd8 Improved compilation of heredocs and interpolated strings. (Matt, Dmitry) 2007-05-18 13:12:05 +00:00
Ilia Alshanetsky
17c0c49a54 Addres limitation of __HALT_COMPILER() that allowed only one instance
per request.

# Patch by Greg Beaver
2007-04-04 00:42:42 +00:00
Dmitry Stogov
e470e22e20 - Fixed bug #35106 (nested foreach fails when array variable has a reference).
- Fixed bug #36214 (__get method works properly only when conditional operator is used).
- Fixed bug #39449 (Overloaded array properties do not work correctly).
- Fixed bug #39990 (Cannot "foreach" over overloaded properties).
2007-01-10 15:58:08 +00:00
Antony Dovgal
c348c293c8 MFH: fix #39903 (Notice message when executing __halt_compiler() more than once) 2006-12-20 16:31:10 +00:00
Marcus Boerger
7a5240e846 - MFH missing bits and pieces of the partial sync with head
# This time i added:
# ZEND_FE_RESET_VARIABLE
# ZEND_FE_RESET_REFERENCE
# and dapted parser,compiler,executor,interfaces to handle these flags
# their purpose is to be able to pass whetehr foreach is done by ref to
# the current() handler so that it can error out in case it is not capable
# to comply to the requested return signature/protocol/semantics (weyp).
2006-05-11 21:07:39 +00:00
Ilia Alshanetsky
e7f6a3fab2 As per agreement during PDM, remove the E_STRICT deprecation notice from
"var".
2006-03-12 16:52:18 +00:00
Andi Gutmans
61e93ccfe8 - Update copyright notices to 2006 2006-01-04 23:53:05 +00:00
Dmitry Stogov
cc50a96139 Fixed bug #34873 (Segmentation Fault on foreach in object) 2005-10-17 07:57:00 +00:00
Marcus Boerger
967413c58c - MFH Fix Bug #34243 ReflectionClass::getDocComment() returns no result 2005-09-21 09:56:51 +00:00
foobar
916815b779 Bump up the year 2005-08-03 13:30:58 +00:00
Dmitry Stogov
343af548a6 Fixed SIGSEGV on 'global ${"{$blah}_ID"};' 2005-07-04 13:24:46 +00:00
Dmitry Stogov
0a44789bf3 Fixed bug #30961 (Wrong linenumber in ReflectionClass getStartLine()) 2005-06-08 06:49:01 +00:00
Zeev Suraski
d33500ee20 Thought I committed it ages ago... Anyway, without further delays, the final
__halt_compiler() patch
2005-06-04 16:16:19 +00:00
Dmitry Stogov
1a72341328 Added array type hinting. (This patch requires full re-make) 2005-05-26 13:46:17 +00:00
Marcus Boerger
a29f5391db - Cleanup foreach handling 2005-02-11 22:26:45 +00:00
Dmitry Stogov
fc96c7f7fa foreash($a as $key => $val) optimization
Removed temorary array creation on each iteration.
2005-02-07 16:09:54 +00:00
Marcus Boerger
2d13dd0ef0 - Remove part of the cleanup which causes a problem with unnormal code
like tests/lang/040.phpt
# However there is a memleak introduced somewhen after august 04 for such
# code now, 5.0 and 4.3 are fine though.
2005-02-07 15:22:38 +00:00
Marcus Boerger
662cd8262e - Cleanup foreach statement 2005-02-05 14:01:59 +00:00
Andi Gutmans
db507dd153 - Commit the variable fetch optimization.
- Extensions which delete global variables need to use new special function
- delete_global_variable() (I'm about to rename it) to remove them.
- Will post to internals@ or via commit messages if there's anything else.
2004-10-04 19:54:35 +00:00
Sebastian Bergmann
6ccbb6b51b ZTS fix. 2004-09-16 05:43:29 +00:00
Andi Gutmans
d8efe626b5 - Fix bug #27669 (Dmitry).
Fixes:
<?
        class A
        {
                function hello()
                {
                        echo "Hello World\n";
                }
        }
        $y[0] = 'hello';
        A::$y[0]();
?>
2004-09-16 00:40:38 +00:00
Marcus Boerger
dc7cb19993 - Remove all for now
# - the optimization part can be done in apc or compareable products
# - NULL can be reintroduced later when needed
2004-08-02 16:38:09 +00:00
Sara Golemon
d96e7a170c Revert goto opcode 2004-07-29 17:45:31 +00:00
Sara Golemon
5865b3680a Add goto operator by popular request. 2004-07-29 15:23:47 +00:00
Marcus Boerger
86d46f7cc1 - Speed up by making null/false/true reserved word which allows to drop
an opcode (FETCH_CONSTANT) for every usage.
2004-07-16 06:50:57 +00:00
Andi Gutmans
173782b73e - Fix bug #27283 - Exceptions where the last catch() statement was sometimes
- skipped.
2004-04-20 14:14:55 +00:00
Stanislav Malyshev
1293330175 check writability on =& too 2004-03-28 16:37:57 +00:00
Marcus Boerger
50ee116f08 Clearify the different method/class flags (as discussed with Andi). 2004-03-09 16:38:37 +00:00
Marcus Boerger
059c533b4a Fix __METHOD__ (noticed by Davey Sahfik) 2004-02-26 19:59:49 +00:00