Dmitry Stogov
189ac4f201
Late Static Binding (Dmitry, Etienne Kneuss)
2007-09-26 07:16:33 +00:00
Dmitry Stogov
611abb17fc
Namespace constants
2007-08-24 13:50:52 +00:00
Dmitry Stogov
c7d82c75c9
Added namespace related optimizations and comments
2007-08-20 09:48:41 +00:00
Johannes Schlüter
e80d138b1c
- Add possibility to call static class members using variables (Etienne Kneuss)
2007-08-02 21:53:53 +00:00
Dmitry Stogov
9703e90904
Support for namespaces in compile-time constant reference
2007-07-27 09:04:12 +00:00
Dmitry Stogov
1f413bbc37
Namespaces
2007-07-12 09:23:48 +00:00
Stanislav Malyshev
2ab4eededb
MF5 __HALT_COMPILER fix:
...
Remove limitation of __HALT_COMPILER() that allowed only one instance
per request.
# Patch by Gregory Beaver
2007-06-28 00:01:58 +00:00
Stanislav Malyshev
602c6c7986
fix unary operator precision (bug #41401 )
2007-05-18 20:48:19 +00:00
Dmitry Stogov
5dc51fecf8
Improved compilation of heredocs and interpolated strings. (Matt)
2007-05-18 13:12:47 +00:00
Andrei Zmievski
d0ff39e936
Set CG(literal_type) for backticks.
2007-04-26 15:50:12 +00:00
Marcus Boerger
80c2f1f92c
- Improved version of ternary shortcut
2007-03-08 17:30:28 +00:00
Marcus Boerger
b24f840411
- Implement '?:'
...
[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-03-04 16:25:57 +00:00
Ilia Alshanetsky
ce8285d289
Copyright update
2007-01-29 04:40:46 +00:00
Dmitry Stogov
f6387758c6
- 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:59:56 +00:00
Antony Dovgal
7d1e0e7f30
fix #39903 (Notice message when executing __halt_compiler() more than once)
2006-12-20 16:30:00 +00:00
Andrei Zmievski
a27b78c2d2
Add (binary) cast operator.
2006-03-23 21:54:00 +00:00
Dmitry Stogov
89a1a4cbc4
Return "new" by reference now throws an E_STRICT error
2006-03-16 15:35:26 +00:00
Ilia Alshanetsky
fe2842d21b
MFB51: As per agreement during PDM, remove the E_STRICT deprecation notice
...
from "var".
2006-03-12 16:53:41 +00:00
Dmitry Stogov
f8576f84dc
Implemented "jump label" operator (limited "goto")
2006-03-10 08:29:43 +00:00
Dmitry Stogov
432cae3222
Reverted "break label"
2006-03-07 08:43:21 +00:00
Dmitry Stogov
2a2050d4e3
Added support for "continue" and "break" operators with labels. Each loop or switch statement can be marked by label and then it is possible to write "break <label>" instead of "break <number>".
2006-03-03 13:09:13 +00:00
Andrei Zmievski
7f5c395781
*** empty log message ***
2006-02-23 18:06:36 +00:00
Andrei Zmievski
ea1c076155
Fix a bug where the default value for function argument could be an
...
array with array (!) keys.
2006-02-23 18:06:04 +00:00
Dmitry Stogov
b424a32610
Preparation for portable string API (use macroses to access zval).
2006-02-20 19:03:43 +00:00
Dmitry Stogov
227295a4f1
Unicode stuff is changed according to decision maden on PDM.
...
Now IS_BINRAY data type is removed and IS_STRING starts behave as IS_BINARY in unicode mode. IS_STRING is incompatible with IS_UNICODE, so ALL functions should be improved to support unicode mode.
2006-01-17 12:18:53 +00:00
Andi Gutmans
5de7cc3194
- Update copyright notices to 2006
2006-01-04 23:54:12 +00:00
Marcus Boerger
73fe423ede
- WS
2005-12-16 23:13:24 +00:00
Dmitry Stogov
bc446eec5b
Fixed bug #34873 (Segmentation Fault on foreach in object)
2005-10-17 08:01:07 +00:00
Marcus Boerger
d376c1e4a5
- Fix Bug #34243 ReflectionClass::getDocComment() returns no result
2005-09-21 09:56:35 +00:00
Andrei Zmievski
b80cb7bd2f
Unicode support
2005-08-11 23:35:03 +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