Commit Graph

1481 Commits

Author SHA1 Message Date
Andi Gutmans
94cfe03da5 - Revert one of the changes because it might be before the memory
- manager has started.
2001-12-01 08:46:02 +00:00
Andi Gutmans
bb9a36cad1 - Use alloca() when possible. 2001-12-01 08:33:48 +00:00
Andi Gutmans
e858d27888 - Initial support for class constants. There are still a few semantic
- issues which need to be looked into but basically it seems to work.
- Example:
<?php
	class foo
	{
		const hey = "hello";
	}

	print foo::hey;
?>
2001-11-30 16:29:47 +00:00
Andi Gutmans
7f66d5e99a - Fix typo 2001-11-30 11:42:30 +00:00
Andi Gutmans
f289014922 - Support syntax for class constants (doesn't do anything yet but
- required some reworking of the grammar).
2001-11-27 17:46:31 +00:00
Andi Gutmans
7cd6ccc0ec - Support static $var = 0; style initialization of static class
- members. For example:
-	class foo {
-		static $my_static = 5;
-
-	}
-
-	print foo::$my_static;
2001-11-26 18:05:01 +00:00
Andi Gutmans
0d559f17cd - Fix crash and leak 2001-11-25 12:29:08 +00:00
Andi Gutmans
4f3eaaa854 - Whitespace 2001-11-25 08:58:59 +00:00
Andi Gutmans
d2da63f629 - Support static members. The following script works:
<?
	class foo
	{
		class bar
		{
			function init_values()
			{
				for ($i=1; $i<10; $i++) {
					foo::bar::$hello[$i] = $i*$i;
				}
			}

			function print_values()
			{
				for ($i=1; $i<10; $i++) {
					print foo::bar::$hello[$i] . "\n";
				}
			}
		}
	}

	foo::bar::init_values();
	foo::bar::print_values();

	for ($i=1; $i<10; $i++) {
		print $hello[$i]?"Shouldn't be printed\n":"";
	}
?>
2001-11-25 08:49:09 +00:00
Andi Gutmans
559d611a86 - MFZE1 2001-11-24 18:27:20 +00:00
Zeev Suraski
08615c6f68 MFZE1 2001-11-15 23:26:52 +00:00
Stig S. Bakken
78f108d31a add newline at end of file to avoid warnings 2001-11-05 00:17:28 +00:00
Stig S. Bakken
9382ddec52 non-zts compile fix 2001-11-05 00:16:33 +00:00
Andi Gutmans
a332f826a7 - Support instantiation of nested class. The following script now should
- work:
-<?php
-	class foo
-	{
-		function bar()
-		{
-			print "bar() in class bar\n";
-		}
-
-		class barbara
-		{
-			function bar()
-			{
-				print "bar() in class foo::barbara\n";
-			}
-		}
-	}
-
-	$obj = new foo();
-	$obj->bar();
-
-	$obj = new foo::barbara();
-	$obj->bar();
-
2001-11-04 19:30:49 +00:00
Andi Gutmans
48e54e0c7a - RISC OS patch by Alex Waugh 2001-11-03 13:35:14 +00:00
Andi Gutmans
2eccd95ca4 - Add some initializations 2001-11-03 12:19:52 +00:00
Andi Gutmans
b87194e0c6 - Add constructor to the zend_class_entry instead of looking it up each
- time by name.
- This will allow the next patch of being able to instantiate nested
- classes such as new foo::bar::barbara();
2001-11-03 11:59:14 +00:00
Andi Gutmans
0a682c6d70 - Fix internal classes 2001-10-29 18:10:36 +00:00
Andi Gutmans
26578c386d - Initial support for nested class definitions 2001-10-29 17:19:02 +00:00
Zeev Suraski
8b53a129f7 MFTGZE1 2001-10-27 09:43:38 +00:00
Andi Gutmans
89a0e85251 - Fix Zeev's MFZE1 2001-10-26 14:13:42 +00:00
Zeev Suraski
aecd5b89ee MFZE1 2001-10-23 01:23:36 +00:00
Andrei Zmievski
3ead31449f MFHZ1 2001-10-20 13:55:47 +00:00
Sebastian Bergmann
01850714ee MFZE1: Introduced extension version numbers (Stig) 2001-10-12 18:40:30 +00:00
Sebastian Bergmann
43c7615c51 MFZE1 2001-10-04 14:18:52 +00:00
Andi Gutmans
2eabb14dc7 - Merge the NAMESPACES_BRANCH. It wasn't a good idea to have a branch when
- the whole CVS tree is work in progress
2001-09-30 17:29:55 +00:00
Andi Gutmans
279b468bf7 - Bump it up in the right place 2001-09-27 08:08:33 +00:00
Sebastian Bergmann
76ccb015e8 Keep ZEND_CHANGES up-to-date. 2001-09-22 17:03:05 +00:00
Zeev Suraski
e42ab2c95f MFZE1 2001-09-22 14:03:27 +00:00
Zeev Suraski
17352812a3 MFZE1 2001-09-22 00:09:24 +00:00
Andi Gutmans
d58240d0f5 - Nuke unused enum 2001-09-20 15:50:11 +00:00
Zeev Suraski
483fc4c73a MFZE1 2001-09-19 22:34:11 +00:00
Andi Gutmans
88d408ee11 - MFZE1 2001-09-19 10:41:35 +00:00
Sebastian Bergmann
3bdddb4910 MFZE1 2001-09-19 10:25:04 +00:00
Sebastian Bergmann
da5a79d185 MFZE1 2001-09-19 10:06:09 +00:00
Brian Moon
b285fae0bc adding RFC for loose type requirements for functions 2001-09-17 16:01:20 +00:00
Zeev Suraski
f88c25b60e MFZE1 2001-09-16 16:48:38 +00:00
Zeev Suraski
9f61e47c24 MFZE1 (nuke cplusplus code) 2001-09-10 00:08:24 +00:00
Zeev Suraski
b06440bceb MFZE1 (support return value in execute_scripts) 2001-09-10 00:07:32 +00:00
Stig S. Bakken
d07cfabce4 remove bogus comment :) 2001-09-08 11:17:25 +00:00
Stig S. Bakken
b07b4c6029 RFC document for namespaces 2001-09-08 11:02:06 +00:00
Stig S. Bakken
4585ae9fb1 wrapped to 80 columns :) 2001-09-08 08:55:42 +00:00
Andi Gutmans
d7536a8a5f - Shift around the variable parsing code to make it simpler. 2001-09-07 14:46:12 +00:00
Andi Gutmans
fc1abec531 - Fix warning (was fixed in ZE1 and not merged at some point). Please make
sure you merge patches!
2001-09-07 06:40:03 +00:00
Stanislav Malyshev
d082fb373d MFZE1 2001-09-05 09:29:28 +00:00
Andi Gutmans
7c4a0cc6cf - CLS_CC -> TSRMLS_CC 2001-09-03 16:57:49 +00:00
Sterling Hughes
c57ed1b93b spaces->tabs 2001-08-31 21:55:43 +00:00
Sterling Hughes
498f7fd90f MFZE1 2001-08-31 21:52:44 +00:00
Sterling Hughes
69c7346f0e MFZE1 2001-08-31 21:47:26 +00:00
Zeev Suraski
819ea51d00 MFZE1 2001-08-31 13:11:52 +00:00