Commit Graph

1701 Commits

Author SHA1 Message Date
77b99c3ce2 ChangeLog update 2002-04-26 00:43:34 +00:00
Harald Radi
f62e63dae7 unbreak the win32 build 2002-04-25 08:59:36 +00:00
da643f3fea ChangeLog update 2002-04-25 00:49:15 +00:00
Harald Radi
8bf59c8fd0 MFZE1 saschas 'Avoid exceeding buffer limits' patch 2002-04-24 15:46:40 +00:00
0cb2b488f7 ChangeLog update 2002-04-24 00:23:03 +00:00
Harald Radi
51e797f1e3 some type cleanup work 2002-04-23 18:06:54 +00:00
d16ea58e8b ChangeLog update 2002-04-23 00:28:29 +00:00
Harald Radi
6ac6cb1040 added get_class_entry callback handler to the
object handlers structure
2002-04-22 14:22:27 +00:00
Sebastian Bergmann
79d71a17a5 MFZE1: Change default value of inline-opt to yes (Sascha). 2002-04-22 11:06:22 +00:00
Harald Radi
2afbbd2e4f fixed linkage warning under win32 2002-04-22 09:33:25 +00:00
804aa39035 ChangeLog update 2002-04-21 00:18:00 +00:00
Zeev Suraski
579b9bff3d MFZE1 2002-04-20 20:14:14 +00:00
62efcae45e ChangeLog update 2002-04-20 00:19:10 +00:00
Sebastian Bergmann
bf5bb84277 MFZE1: make sure the resource-list is always consistent during shutdown (Thies). 2002-04-19 16:53:36 +00:00
Sebastian Bergmann
2697ce689d MFZE1: Fix imbalance bug (Zeev). 2002-04-19 16:43:27 +00:00
fde8ae2074 ChangeLog update 2002-04-11 00:23:36 +00:00
foobar
3eafd2207c MFZE1 2002-04-10 21:33:34 +00:00
foobar
60ccb411ba MFZE1 2002-04-10 21:23:01 +00:00
091a06946d ChangeLog update 2002-04-08 00:23:10 +00:00
Stanislav Malyshev
a68b448169 make compatible with current PHP 2002-04-07 17:12:38 +00:00
Stanislav Malyshev
3b6b13b08a sync 2002-04-07 15:38:45 +00:00
ae336171bd ChangeLog update 2002-03-30 01:19:21 +00:00
Derick Rethans
17116438da - revert patch 2002-03-29 12:34:25 +00:00
e74c66bb14 ChangeLog update 2002-03-26 01:19:23 +00:00
Derick Rethans
7394b8fc6f - MFZE1 2002-03-25 20:37:02 +00:00
a927404520 ChangeLog update 2002-03-24 01:18:49 +00:00
Andi Gutmans
3e3ae4f61c - Fix build without ZTS. If someone has a nicer fix let me know. 2002-03-23 12:18:50 +00:00
2b87db1674 ChangeLog update 2002-03-22 01:20:21 +00:00
Andi Gutmans
e7100e22dc - No idea how this slipped in. Fix delete $obj statement. 2002-03-21 04:20:03 +00:00
ba81ebf46c ChangeLog update 2002-03-21 01:19:29 +00:00
Harald Radi
d5e64b2287 added thread safe hashtable which allows concurrent
reads but only exclusive writes
2002-03-20 21:26:46 +00:00
92adc9456a ChangeLog update 2002-03-20 01:21:12 +00:00
Andi Gutmans
a990c4da3e - Finish covering all parsed methods to check for validity in parser.
- Change zval's refcount to zend_uint (If it doesn't slow down the Engine
- too much it should probably stay this way). If anyone has time to test
- the difference in speed between zend_ushort & zend_uint in zend.h of
- the struct _zval_struct (one line change) I'd be glad to get some
- figures.
2002-03-19 19:09:53 +00:00
c7b7b5a9b1 ChangeLog update 2002-03-19 01:22:04 +00:00
Andi Gutmans
c5ad6ae1b8 - More fixes to check for member/function call legality. 2002-03-18 20:27:03 +00:00
67d75b177d ChangeLog update 2002-03-18 01:21:55 +00:00
Andi Gutmans
46afe61d25 - Start putting error handling where method calls are being used in a
- context where only writable variables should be used.
2002-03-17 19:13:46 +00:00
801b8f4340 ChangeLog update 2002-03-16 01:19:01 +00:00
Andi Gutmans
c84a4ead95 - Pass TSRMLS to callbacks. 2002-03-15 16:26:17 +00:00
Andi Gutmans
db84afb206 - Scope fix. When calling an imported function the scope will change
- correctly to the scope of the functions class.
<?php

	function Hello()
	{
		print "Wrong one\n";
	}

	class MyClass {
		static $hello = "Hello, World\n";

		function Hello()
		{
			print self::$hello;
		}

		function Trampoline()
		{
			Hello();
		}
	}

	import function Trampoline from MyClass;

	Trampoline();
?>
2002-03-15 15:28:06 +00:00
Andi Gutmans
0ce019f715 - Fix issues with $this when using it by itself without indirection such as
- $this->foo.
2002-03-15 15:09:46 +00:00
57505b6a13 ChangeLog update 2002-03-15 01:19:57 +00:00
Stanislav Malyshev
508c82ad2a more cleanup 2002-03-14 17:13:02 +00:00
Stanislav Malyshev
929bdc6998 Update howto 2002-03-14 17:08:06 +00:00
Stanislav Malyshev
40becd37e5 fix for delete $this and unset $this 2002-03-14 16:00:48 +00:00
Stanislav Malyshev
3af5b15f30 Fix call_user_function 2002-03-14 12:18:01 +00:00
5aa7d604a4 ChangeLog update 2002-03-13 01:20:11 +00:00
Andi Gutmans
0ee65254ee - Forgot to close comment. 2002-03-12 19:41:02 +00:00
Andi Gutmans
9760fdcb37 - Macro for duality between Engine 1 and 2 2002-03-12 19:36:24 +00:00
Andi Gutmans
fb6976e46d - Another couple of indirection fixes.
- Make class_entry->refcount be part of the structure and not allocated.
2002-03-12 19:22:29 +00:00
Andi Gutmans
c8c629b3fc - Fix bug introduced with latest class hash table change. 2002-03-12 18:53:27 +00:00
Stanislav Malyshev
b75ffba9bb Fix standard object creation 2002-03-12 11:28:30 +00:00
Stanislav Malyshev
92dd5e611b - make class tables contain class_entry *, not class_entry
- fix isset($this)
2002-03-12 10:08:47 +00:00
aef0ea1beb ChangeLog update 2002-03-11 01:20:33 +00:00
Andi Gutmans
d77ff9607e - Fix build in ZTS mode. 2002-03-10 21:02:00 +00:00
Stanislav Malyshev
04ed2b520f New stuff for objects API:
- Better assignment handling
- More flexible operations with zval-containing objects
2002-03-10 13:42:37 +00:00
61eb6fb4b6 ChangeLog update 2002-03-10 01:19:17 +00:00
Andi Gutmans
1229705743 - Add the original example script to the CVS so that it's always available. 2002-03-09 16:25:51 +00:00
aae9a035c5 ChangeLog update 2002-03-09 01:19:56 +00:00
Sebastian Bergmann
2f010abe51 Add 'import const' example. 2002-03-08 11:36:56 +00:00
Andi Gutmans
90f6005f58 - Support importing constants. e.g.:
<?php

	class MyOuterClass {
		const Hello = "Hello, World\n";
	}

	import const Hello from MyOuterClass;
	print Hello;
2002-03-08 10:58:24 +00:00
2139ba0922 ChangeLog update 2002-03-08 01:20:50 +00:00
Sebastian Bergmann
0e17eea049 Add another 'import' example and merge 'import' section into 'Namespaces' section. 2002-03-07 10:31:51 +00:00
01d0e7ec15 ChangeLog update 2002-03-07 01:21:51 +00:00
Andi Gutmans
83f102fd9f - Add function * and class * functionality. Only constants are left.
<?php

	class MyOuterClass {
		class MyInnerClass {
			function func1()
			{
				print "func1()\n";
			}

			function func2()
			{
				print "func2()\n";
			}
		}
	}

	import class * from MyOuterClass;
	import function func2 from MyOuterClass::MyInnerClass;

	MyInnerClass::func1();
	func2();
2002-03-06 17:08:26 +00:00
a97fc9703c ChangeLog update 2002-03-03 01:20:44 +00:00
Sebastian Bergmann
3930d70fba Consistency. 2002-03-02 22:26:17 +00:00
Sebastian Bergmann
3b7435fc51 Add 'import statement' section. 2002-03-02 22:24:46 +00:00
Andi Gutmans
b90d80b588 - Initial patch to support importing from class scopes (for Stig).
- It isn't complete yet but I want to work on it from another machine. It
- shouldn't break anything else so just don't try and use it.
- The following is a teaser of something that already works:
<?php

	class MyClass
	{
		function hello()
		{
			print "Hello, World\n";
		}
		class MyClass2
		{
			function hello()
			{
				print "Hello, World in MyClass2\n";
			}
		}
	}

	import function hello, class MyClass2 from MyClass;

	MyClass2::hello();
	hello();
?>
2002-03-02 20:38:52 +00:00
Derick Rethans
1f9464e345 - MFZE1 2002-03-02 13:48:13 +00:00
Derick Rethans
0c6be86747 - MFZE1 2002-03-02 13:26:37 +00:00
8ff2ad53f2 ChangeLog update 2002-03-02 01:20:39 +00:00
Andrei Zmievski
a8609b1ba7 MFZE1 2002-03-01 17:34:52 +00:00
Andrei Zmievski
2310414868 MFZE1 2002-03-01 17:26:31 +00:00
Andi Gutmans
90bd4539c7 - Remove use of C++ reserved words namespace/this 2002-03-01 14:27:26 +00:00
Andi Gutmans
d1eea3de9c - Fix bug in nested try/catch's
- Infrastructure for implementing imports of methods.
2002-03-01 14:04:51 +00:00
Andi Gutmans
2505f6b400 - Fix crash reported by Sebastian when destructor function causes a fatal
- error. I hope this does it and we don't find any other problems.
2002-03-01 10:26:10 +00:00
71139b307d ChangeLog update 2002-02-27 01:33:13 +00:00
Andi Gutmans
7df1601239 - MFZE1 2002-02-26 19:17:26 +00:00
8ca013f2ae ChangeLog update 2002-02-22 01:29:52 +00:00
Sebastian Bergmann
6a59c7fcd3 Maintain ZEND_CHANGES to account for the addition of private member variables. 2002-02-21 13:10:31 +00:00
Andi Gutmans
00e90f2ff3 - Experimental support for private members.
<?
	class MyClass {
		private $Hello = "Hello, World!\n";

		function printHello()
		{
			print $this->Hello;
		}
	}

	class MyClass2 extends MyClass {
		function printHello()
		{
			MyClass::printHello(); /* Should print */
			print $this->Hello; /* Shouldn't print out anything */
		}
	}

	$obj = new MyClass();
	print $obj->Hello; /* Shouldn't print out anything */
	$obj->printHello(); /* Should print */

	$obj = new MyClass2();
	print $obj->Hello; /* Shouldn't print out anything */
	$obj->printHello();
?>
2002-02-21 11:50:44 +00:00
37a929e5dd ChangeLog update 2002-02-15 01:22:47 +00:00
Stanislav Malyshev
cefbdccb98 Pass TSRM to create_object 2002-02-14 09:20:51 +00:00
Andrei Zmievski
68a82f14a2 Fix the bug where the declared properties without init values were not
entered into the table.
2002-02-14 04:01:53 +00:00
6578efea09 ChangeLog update 2002-02-14 01:20:35 +00:00
Andi Gutmans
21b04ff2a6 @ Allow a series of consecutive catch() statements (Andi, Zend Engine)
<?php
	class MyException1 {

	}

	class MyException2 {

	}

	try {
		throw new MyException2();
	} catch (MyException1 $m) {
		print "Caught MyException1";
	} catch (MyException2 $m) {
		print "Caught MyException2";
	}
2002-02-13 19:26:07 +00:00
3b01fd8973 Adding automagically updated ChangeLog. 2002-02-12 17:28:41 +00:00
Sebastian Bergmann
1fd542fd38 Export lex_scan(). Both the PHPDoc and tokenizer extension need this. I hope this is okay with Z&A. 2002-02-10 12:54:02 +00:00
Andi Gutmans
b04238698f - Remove object debug messages. 2002-02-08 00:22:37 +00:00
Stanislav Malyshev
6608f07322 Mega-commit: Enter the new object model
Note: only standard Zend objects are working now. This is definitely going to
break custom objects like COM, Java, etc. - this will be fixed later.
Also, this may break other things that access objects' internals directly.
2002-02-07 14:08:43 +00:00
Andi Gutmans
8535164f21 - This small patch should also take care of allowing unseting of $this->foo
- and static members. The unset() opcode was luckily already suitable for
- object overloading.
2002-02-04 20:44:24 +00:00
Andi Gutmans
e366f5dbd8 - Fix problem with the objects_destructor called during shutdown. It was
- freeing objects from id 0 instead of id 1. id 0 is not used.
- Change isset/empty opcodes to support static members and the new way of
- doing $this->foobar. Also the opcodes operate now on the hash table
- combined with the variable names so that they can be overloaded by the
- soon to be added overloading patch.
2002-02-04 19:29:56 +00:00
Adam Dickmeiss
4935636521 Zend config sets ZEND_EXTRA_LIBS. Bugs 14452, 14602, 14616, 14824 2002-02-03 20:42:10 +00:00
Sebastian Bergmann
cb2124be7c Revert per Andi's request. Sorry :-( 2002-02-02 19:55:21 +00:00
Sebastian Bergmann
fd884e2bea Fix warning. Again :-) 2002-02-02 19:47:24 +00:00
Andi Gutmans
2c95fc2d55 - Please don't use strcmp() and friends in Zend but only the mem*
- functions. I didn't check this patch so please check that it works.
2002-02-02 19:35:18 +00:00
Sebastian Bergmann
86469a0dfb Fix a warning. 2002-02-02 19:18:25 +00:00
Andi Gutmans
180f91bac8 - Nice catch by Derick. GINIT is dead. 2002-02-02 16:56:17 +00:00
Sebastian Bergmann
031784c687 MFZE1: is_a() 2002-02-01 22:55:02 +00:00