From: Date: Tue, 12 Feb 2002 17:28:41 +0000 (+0000) Subject: Adding automagically updated ChangeLog. X-Git-Tag: php-4.2.0RC1~361 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=3b01fd897317e9aca2444038ba476159c0f7b530;p=php Adding automagically updated ChangeLog. --- diff --git a/Zend/ChangeLog b/Zend/ChangeLog new file mode 100644 index 0000000000..58439f708f --- /dev/null +++ b/Zend/ChangeLog @@ -0,0 +1,8512 @@ +2002-02-10 Sebastian Bergmann + + * zend_compile.h: + Export lex_scan(). Both the PHPDoc and tokenizer extension need this. I hope this is okay with Z&A. + +2002-02-08 Andi Gutmans + + * zend_objects.c: - Remove object debug messages. + +2002-02-07 Stanislav Malyshev + + * Makefile.am + OBJECTS2_HOWTO + ZendTS.dsp + configure.in + zend.h + zend_API.c + zend_API.h + zend_builtin_functions.c + zend_compile.c + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_globals.h + zend_object_handlers.c + zend_object_handlers.h + zend_objects.c + zend_objects.h + zend_operators.c + zend_operators.h + zend_variables.c: 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-04 Andi Gutmans + + * zend_execute.c: + - 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. + + * zend_compile.c + zend_compile.h + zend_execute.c + zend_objects.c: + - 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-03 Adam Dickmeiss + + * Makefile.am + configure.in: + Zend config sets ZEND_EXTRA_LIBS. Bugs 14452, 14602, 14616, 14824 + +2002-02-02 Sebastian Bergmann + + * zend_builtin_functions.c: Revert per Andi's request. Sorry :-( + + * zend_builtin_functions.c: Fix warning. Again :-) + +2002-02-02 Andi Gutmans + + * zend_builtin_functions.c: + - 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 Sebastian Bergmann + + * zend_builtin_functions.c: Fix a warning. + +2002-02-02 Andi Gutmans + + * zend_modules.h: - Nice catch by Derick. GINIT is dead. + +2002-02-01 Sebastian Bergmann + + * zend_builtin_functions.c: MFZE1: is_a() + +2002-01-27 Sebastian Bergmann + + * zend_config.w32.h: + MFZE1: define a couple of macros under win32. (Patch By: Jon Parise ) + +2002-01-25 Andi Gutmans + + * zend_compile.c + zend_execute_API.c + zend_objects.c + zend_objects.h + zend_opcode.c: + - First destructor hell fix. There was a situation where an object's + - destructor could be run after its class was already dead. Right now + - object destructors is the first thing whic happens during shutdown in + - order to prevent this problem. It's very likely that destructors will + - cause more grief and we'll have to outline exactly when you should use + - them and what kind of logic you're allowed to do inside of them. + - This bug was reported by sebastian. + +2002-01-22 Andi Gutmans + + * zend_execute.c: + - Fix a bug reported by Sebastian with indirect class names not working. + +2002-01-20 Andi Gutmans + + * zend_compile.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_language_parser.y + zend_opcode.c: - Improve performance of functions that use $GLOBALS[] + - Please check this and make sure it doesn't break anything. + +2002-01-19 Thies C. Arntzen + + * zend_language_parser.y: MFZE1 + +2002-01-14 Andi Gutmans + + * zend_execute_API.c: + - Fix crash bug in call_user_function_ex(). Thanks to Sebastian for the + - very nice and short reproducing script. + + +2002-01-14 Sebastian Bergmann + + * ZEND_CHANGES: Update Exceptions example. + +2002-01-13 Andi Gutmans + + * zend_compile.c + zend_compile.h + zend_execute.c + zend_globals.h + zend_language_parser.y: + - Change exception handling to use the Java-like catch(MyException $exception) + - semantics. Example: + exception = $exception; + } + + function Display() + { + print "MyException: $this->exception\n"; + } + + } + class MyExceptionFoo extends MyException { + function __construct($exception) + { + $this->exception = $exception; + } + function Display() + { + print "MyException: $this->exception\n"; + } + } + + try { + throw new MyExceptionFoo("Hello"); + } catch (MyException $exception) { + $exception->Display(); + } + ?> + + * zend_ini_scanner.l: - MFZE1 + +2002-01-06 Andi Gutmans + + * zend.c: + - Output error when there's an uncaught exception (by Timm Friebe) + + * zend_execute.c: - Make sure $this is passed on to methods + +2002-01-06 Sebastian Bergmann + + * zend_ini.h + zend_ini_parser.y + zend_ini_scanner.l + zend_language_parser.y + zend_language_scanner.h + zend_language_scanner.l + zend_list.c + zend_list.h + zend_llist.c + zend_llist.h + zend_modules.h + zend_opcode.c + zend_operators.c + zend_operators.h + zend_ptr_stack.c + zend_ptr_stack.h + zend_qsort.c + zend_qsort.h + zend_sprintf.c + zend_stack.c + zend_stack.h + zend_static_allocator.c + zend_static_allocator.h + zend_variables.c + zend_variables.h + zend.c + zend.h + zend_API.c + zend_API.h + zend_alloc.c + zend_alloc.h + zend_builtin_functions.c + zend_builtin_functions.h + zend_compile.c + zend_compile.h + zend_config.w32.h + zend_constants.c + zend_constants.h + zend_dynamic_array.c + zend_dynamic_array.h + zend_errors.h + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_extensions.c + zend_extensions.h + zend_fast_cache.h + zend_globals.h + zend_globals_macros.h + zend_hash.c + zend_hash.h + zend_highlight.c + zend_highlight.h + zend_indent.c + zend_indent.h + zend_ini.c: Happy New Year. + +2002-01-05 Andi Gutmans + + * zend_compile.c: - Small fix + + * zend_compile.c + zend_compile.h + zend_execute.c: - Allow passing of $this as function arguments. + - Fix a bug which I introduced a couple of months ago + + * zend_compile.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_globals.h: + - Significantly improve the performance of method calls and $this->member + - lookups. + +2002-01-04 Andi Gutmans + + * zend_execute.c: + - Improve performance of indirect-referenced function calls + + * zend_compile.c: - Nuke C++ comments + + * zend_compile.c + zend_compile.h + zend_execute.c: - Separate other kinds of function calls too. + - Significantly improve performance of function calls by moving lowercasing + - the function name to compile-time when possible. + + * zend_compile.c + zend_compile.h + zend_execute.c: + - Start splitting up different kinds of function calls into different + - opcodes. + +2002-01-03 Derick Rethans + + * zend_API.c + zend_API.h + zend_execute.c + zend_list.c: + - MFZE1 for exit fix, exposing current function name in error messages and + exposing zend_zval_type_name(). + +2001-12-31 Sebastian Bergmann + + * ZEND_CHANGES: Consistency. + +2001-12-31 Andi Gutmans + + * ZEND_CHANGES: + - Add example of default argument for argument passed by-ref + +2001-12-30 Sebastian Bergmann + + * ZEND_CHANGES: Typo. + +2001-12-29 Andi Gutmans + + * zend.h: + - #define to help #ifdef stuff in PHP sources to make them work w/ ZE1 and + - 2 + + * ZEND_CHANGES: - A few clarifications + +2001-12-29 Sebastian Bergmann + + * ZEND_CHANGES: Integrate Andi's examples and some notes by Stig. + + * ZEND_CHANGES: Update Exceptions example. + +2001-12-28 Andi Gutmans + + * zend_compile.c + zend_compile.h + zend_language_parser.y: + - Fix some case insensitivity stuff in respect to classes + + * zend_execute.c + zend_language_parser.y: + - Support default arguments for reference parameters + - Fix two compile warnings + + * zend_compile.c: + - Wasn't adding the lower case version of the class name to the hash + +2001-12-27 Andi Gutmans + + * zend_compile.c + zend_objects.c: + - Use two underscores for __construct(), __clone and friends... + + * zend_objects.c: + - Only check refcount of object if the destructor was called. + + * zend.c + zend.h + zend_API.h + zend_compile.c + zend_objects.c + zend_objects.h: + - Experimental support for destructors. We need to see if destructors + - will actually work well in the context of PHP so we should consider this + - as experimental. Possible problems might be that when the constructor is + - run PHP might not be in a stable state. + + * zend_compile.c + zend_compile.h + zend_execute.c: - Support parent:: again + + * zend_compile.c: - Support unified constructor name _construct() + +2001-12-26 Andi Gutmans + + * zend_execute.c + zend_execute_API.c: - Fix scoping issue. The following works now: + id = self::$id++; + } + + function _clone() + { + $this->name = $clone->name; + $this->address = "New York"; + $this->id = self::$id++; + } + } + + + + $obj = new MyClass(); + + $obj->name = "Hello"; + $obj->address = "Tel-Aviv"; + + print $obj->id; + print "\n"; + + $obj = $obj->_clone(); + + print $obj->id; + print "\n"; + print $obj->name; + print "\n"; + print $obj->address; + print "\n"; + + * zend.c: - Print out object id for easier debugging + + * zend.c + zend.h + zend_API.h + zend_compile.c + zend_objects.c: - Pretty much finish _clone() support + + * zend_compile.c + zend_compile.h + zend_execute.c + zend_language_parser.y: - Initial support for _clone() + + * zend_compile.c + zend_language_parser.y: + - Start fixing the parsing rules so that function and method calls + - can't be used in a write context. + + * zend.c: - Fix crash correctly. + +2001-12-25 Andi Gutmans + + * zend_language_parser.y: - Revert delete syntax patch + + * zend.c + zend_execute.c: - Fix a crash (not a thorough fix). + - Commented old code + +2001-12-24 Andi Gutmans + + * zend_execute.c: + - Fixed bug where global functions weren't called if they didn't exist + - in the class scope + +2001-12-23 Andi Gutmans + + * zend.c: + - Fix a bug where function's didn't work anymore in multi-threaded + - servers after the latest startup changes. + +2001-12-22 Andi Gutmans + + * zend_compile.c + zend_execute_API.c + zend_language_parser.y: + - Add initial capability of defining nested classes as class foo::bar + +2001-12-18 Zeev Suraski + + * zend_language_scanner.h + zend_language_scanner.l: MFZE1 + +2001-12-16 Sebastian Bergmann + + * ZEND_CHANGES: I'm too trigger-happy. + + * ZEND_CHANGES: delete is now function + +2001-12-16 Andi Gutmans + + * zend_language_parser.y: + - Seems like most people prefer delete($obj) over delete $obj. + + * zend_compile.c + zend_compile.h + zend_language_parser.y: - Start adding parsed variable checks. + + * zend_compile.h + zend_language_parser.y: + - Framework for knowing what kind of variable we just parsed. + - This will be used in compile-time error checking which couldn't be done + - at the level of the grammar. + +2001-12-13 Andi Gutmans + + * zend_language_parser.y: + - Rearrange grammar to allow dereferencing of objects returned from + - functions. It still crashes though. + + * zend.c + zend.h + zend_API.c + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_globals.h + zend_opcode.c: - Fix crash bug in startup code. + - Start work on being able to reference global and local scope + +2001-12-12 Andi Gutmans + + * Zend.dsp + zend.c + zend_constants.c + zend_globals.h: + - Infrastructure changes for allowing to access the global scope from + - within a class scope. + - Fix the Zend.dsp project a bit. It seems someone pretty much killed it + - when commiting their own personal configuration. Please be careful in + - future. + + * zend.h + zend_API.c + zend_compile.c + zend_compile.h + zend_execute.c + zend_globals.h + zend_language_parser.y: + - Make classes have scope and function/constant lookups default to the class + +2001-12-11 Andi Gutmans + + * zend.c: - Merge from ZE1 + + * zend.c + zend.h + zend_API.c + zend_compile.c + zend_execute.c + zend_execute_API.c + zend_opcode.c: + - Rename zend_class_entry.constants -> zend_class_entry.constants_table + + * zend_execute.c: + - Start making scope change correctly when calling namespace functions. + - When inside a namespace fallback to global namespace when function + - or constant is not found. + +2001-12-11 Sebastian Bergmann + + * LICENSE: Forgot to update the LICENSE. + + * LICENSE + zend.c + zend.h + zend_API.c + zend_API.h + zend_alloc.c + zend_alloc.h + zend_builtin_functions.c + zend_builtin_functions.h + zend_compile.c + zend_compile.h + zend_config.w32.h + zend_constants.c + zend_constants.h + zend_dynamic_array.c + zend_dynamic_array.h + zend_errors.h + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_extensions.c + zend_extensions.h + zend_fast_cache.h + zend_globals.h + zend_globals_macros.h + zend_hash.c + zend_hash.h + zend_highlight.c + zend_highlight.h + zend_indent.c + zend_indent.h + zend_ini.c + zend_ini.h + zend_ini_parser.y + zend_ini_scanner.l + zend_language_parser.y + zend_language_scanner.h + zend_language_scanner.l + zend_list.c + zend_list.h + zend_llist.c + zend_llist.h + zend_modules.h + zend_opcode.c + zend_operators.c + zend_operators.h + zend_ptr_stack.c + zend_ptr_stack.h + zend_qsort.c + zend_qsort.h + zend_sprintf.c + zend_stack.c + zend_stack.h + zend_static_allocator.c + zend_static_allocator.h + zend_variables.c + zend_variables.h: Update headers. + + * Zend.m4 + zend.h: MFZE1 (AIX fixes) + + * zend_highlight.h + zend_highlight.c: MFZE1 (added zend_strip mode in the highliter) + +2001-12-10 Andi Gutmans + + * zend.h + zend_API.c + zend_compile.c + zend_compile.h + zend_execute.c + zend_language_parser.y: - More namespaces work. + - Nuke memory leak. + +2001-12-08 Andi Gutmans + + * zend.c: - Fix crash with unhandled exceptions + +2001-12-06 Andi Gutmans + + * zend_execute.c: - Support constants. The following works now: + + + * zend_language_parser.y + zend_compile.c + zend_execute.c + zend_execute_API.c + zend_globals.h: + - Initial work on changing namespace scope. Only methods & variables + - right now. + + + * zend.c + zend_compile.c + zend_execute.c + zend_execute_API.c + zend_globals.h + zend_language_parser.y: + - Nuke the namespace work I did. It'll be redone differently. + +2001-12-05 Sebastian Bergmann + + * ZEND_CHANGES: Document recent changes. + +2001-12-04 Andi Gutmans + + * zend_builtin_functions.c: - Damn Zeev :) + +2001-12-01 Andi Gutmans + + * zend_API.c: + - Revert one of the changes because it might be before the memory + - manager has started. + + * zend_API.c + zend_constants.c: - Use alloca() when possible. + +2001-11-30 Andi Gutmans + + * zend.c + zend.h + zend_API.c + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_language_parser.y + zend_opcode.c: + - 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: + + + * Zend.m4: - Fix typo + +2001-11-27 Andi Gutmans + + * zend_language_parser.y: + - Support syntax for class constants (doesn't do anything yet but + - required some reworking of the grammar). + +2001-11-26 Andi Gutmans + + * zend_compile.c + zend_compile.h + zend_language_parser.y: + - Support static $var = 0; style initialization of static class + - members. For example: + - class foo { + - static $my_static = 5; + - + - } + - + - print foo::$my_static; + +2001-11-25 Andi Gutmans + + * zend.c + zend_compile.c: - Fix crash and leak + + * zend_compile.c: - Whitespace + + * zend.c + zend.h + zend_API.c + zend_compile.c + zend_compile.h + zend_execute.c + zend_language_parser.y + zend_opcode.c: - Support static members. The following script works: + + +2001-11-24 Andi Gutmans + + * zend_compile.c + zend_compile.h + zend_execute.c: - MFZE1 + +2001-11-15 Zeev Suraski + + * zend_compile.c: MFZE1 + +2001-11-05 stig + + * zend_objects.h: add newline at end of file to avoid warnings + + * zend_language_parser.y: non-zts compile fix + +2001-11-04 Andi Gutmans + + * zend_compile.c + zend_compile.h + zend_execute.c + zend_language_parser.y: + - Support instantiation of nested class. The following script now should + - work: + -bar(); + - + - $obj = new foo::barbara(); + - $obj->bar(); + - + +2001-11-03 Andi Gutmans + + * zend.h: - RISC OS patch by Alex Waugh + + * zend.c + zend_API.h + zend_compile.c: - Add some initializations + + * zend_compile.c + zend_execute.c + zend.h: + - 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-10-29 Andi Gutmans + + * zend_API.c + zend_opcode.c: - Fix internal classes + + * zend.h + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute.h + zend_globals.h + zend_language_parser.y + zend_opcode.c: - Initial support for nested class definitions + +2001-10-27 Zeev Suraski + + * zend_execute.c: MFTGZE1 + +2001-10-26 Andi Gutmans + + * zend_execute_API.c: - Fix Zeev's MFZE1 + +2001-10-23 Zeev Suraski + + * zend_constants.c + zend_execute_API.c + zend_globals.h: MFZE1 + +2001-10-20 Andrei Zmievski + + * zend_API.c: MFHZ1 + +2001-10-12 Sebastian Bergmann + + * zend_API.c + zend_API.h + zend_modules.h: MFZE1: Introduced extension version numbers (Stig) + +2001-10-04 Sebastian Bergmann + + * zend_hash.c: MFZE1 + +2001-09-30 Andi Gutmans + + * zend.c + zend.h + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_globals.h + zend_language_parser.y + zend_language_scanner.l: + - Merge the NAMESPACES_BRANCH. It wasn't a good idea to have a branch when + - the whole CVS tree is work in progress + + * zend_compile.h + zend_execute.c: + - At last I've had some time to move all execute() locals into one struct. + - No immediate gain but it makes it more clear what variables are temps + - and which ones are execute() locals. + +2001-09-27 Andi Gutmans + + * zend_modules.h: - Bump it up in the right place + + * zend_modules.h: - Increase API number + +2001-09-26 Andi Gutmans + + * zend.c + zend.h + zend_compile.c + zend_execute.c: - Good catch by Sterling + +2001-09-24 Andi Gutmans + + * zend_execute.c + zend_execute_API.c + zend_globals.h: - More namespaces work + +2001-09-22 Sebastian Bergmann + + * ZEND_CHANGES: Keep ZEND_CHANGES up-to-date. + +2001-09-22 Zeev Suraski + + * zend_globals.h + flex.skl + zend.c + zend_ini_scanner.l + zend_language_scanner.l: MFZE1 + +2001-09-20 Andi Gutmans + + * zend.c + zend_compile.c: - Fix build on Win32 + + * zend.h + zend_compile.c + zend_compile.h + zend_execute.c + zend_globals.h + zend_language_parser.y + zend_language_scanner.l + zend.c: + - Create a branch for namespaces. This isn't even remotely close to + - working. + + * zend_list.h: - Nuke unused enum + +2001-09-19 Zeev Suraski + + * flex.skl + zend.c + zend_globals.h + zend_ini_scanner.l + zend_language_scanner.l: MFZE1 + +2001-09-19 Andi Gutmans + + * Makefile.am: - MFZE1 + +2001-09-19 Sebastian Bergmann + + * Makefile.am + zend_hash.c + zend_hash.h + zend_ini.c + zend_llist.c + zend_llist.h + zend_qsort.c + zend_qsort.h + Zend.dsp + ZendTS.dsp: MFZE1 + +2001-09-17 Brian L. Moon + + * RFCs/003.txt: adding RFC for loose type requirements for functions + +2001-09-16 Zeev Suraski + + * zend_compile.c: MFZE1 + +2001-09-10 Zeev Suraski + + * zend_compile.h + zend_globals.h + zend_ini_scanner.h + zend_ini_scanner.l + zend_language_scanner.h + zend_language_scanner.l: MFZE1 (nuke cplusplus code) + + * zend.c + zend_execute_API.c + zend_globals.h: MFZE1 (support return value in execute_scripts) + +2001-09-08 stig + + * RFCs/002.txt: remove bogus comment :) + + * RFCs/002.txt: RFC document for namespaces + + * RFCs/001.txt: wrapped to 80 columns :) + +2001-09-07 Andi Gutmans + + * zend_compile.c + zend_language_parser.y: + - Shift around the variable parsing code to make it simpler. + + * zend_llist.c: + - Fix warning (was fixed in ZE1 and not merged at some point). Please make + sure you merge patches! + +2001-09-05 Stanislav Malyshev + + * zend_operators.c: MFZE1 + +2001-09-03 Andi Gutmans + + * zend_language_parser.y: - CLS_CC -> TSRMLS_CC + +2001-08-31 Sterling Hughes + + * zend_llist.h: spaces->tabs + + * zend_llist.c + zend_llist.h + zend_execute_locks.h: MFZE1 + +2001-08-31 Zeev Suraski + + * zend.c + zend_compile.h: MFZE1 + +2001-08-30 Andi Gutmans + + * zend_compile.h + zend_compile.c: - Make it compile in thread-safe mode. + + * zend_compile.c + zend_compile.h + zend_execute.c: - Get rid of warning and C++ comments + + * zend_compile.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_globals.h + zend_language_parser.y + zend_language_scanner.l: - Initial support for exceptions. + +2001-08-30 Zeev Suraski + + * zend_execute.c: MFZE1 + +2001-08-28 Zeev Suraski + + * zend_language_scanner.l: MFZE1 + +2001-08-27 Andi Gutmans + + * RFCs/001.txt: - Add sample RFC + +2001-08-26 Stanislav Malyshev + + * Zend.m4 + zend.h: Add dlsym underscore detection, by Jani Taskinen + +2001-08-26 Andi Gutmans + + * zend_operators.c: - MFZE1 + + * zend_API.c: + - Merge Andrei's fix from Engine 1. Please commit patches to both trees! + +2001-08-21 Zeev Suraski + + * zend.c + zend_execute_API.c: MFZE1 + +2001-08-20 Zeev Suraski + + * zend_hash.c + zend_hash.h: MFZE1 + +2001-08-19 Andi Gutmans + + * zend.h: - Fix compile problem + +2001-08-19 Zeev Suraski + + * zend_compile.c: MFZE1 + +2001-08-18 Andi Gutmans + + * zend_execute.c + zend_llist.c + zend_llist.h: - Merge Sterling's patches from ZE1 + +2001-08-17 Andrei Zmievski + + * zend_execute.c: MFZE1 + +2001-08-17 Zeev Suraski + + * zend_alloc.c: MFZE1 + +2001-08-16 Zeev Suraski + + * flex.skl + zend_ini_scanner.l + zend_language_scanner.l: MFZE1 + +2001-08-16 Andi Gutmans + + * zend_execute.c: - Try and nuke get_object_zval_ptr() + + * zend_objects.c: - Remove bogus notice + + * zend_variables.c: - Sync with ZE1 + + * zend.h + zend_execute.c + zend_objects.c + zend_objects.h + zend_operators.c + zend_operators.h + zend_variables.c: - Fix a bug in method calls. + - Try to get the old copying behavior of objects to work (doesn't work yet). + +2001-08-15 Zeev Suraski + + * zend_extensions.c: MFZE1 + +2001-08-14 Zeev Suraski + + * zend_constants.c + zend_constants.h + zend_variables.c + zend_variables.h: MFZE1 + +2001-08-13 Andi Gutmans + + * zend_execute.c: - MFZE1 + + * zend_execute.c: - Merge from Engine 1 + +2001-08-13 Zeev Suraski + + * zend_API.c + zend_operators.c + zend_operators.h: MFZE1 + +2001-08-12 Stanislav Malyshev + + * zend_API.h: _FUNCTION is used in definition, so use _D + +2001-08-11 Andi Gutmans + + * zend_API.c + zend_API.h + zend_objects.c + zend_operators.c: - More work on making objects work + + * zend_API.c + zend_objects.c + zend_objects.h + zend_operators.c: + - Fix some places which create objects. The fixes are ugly and will be + revised when things start working well + +2001-08-11 Zeev Suraski + + * zend.c + zend.h + zend_API.c + zend_API.h + zend_alloc.c + zend_alloc.h + zend_builtin_functions.c + zend_compile.c + zend_constants.c + zend_constants.h + zend_execute_API.c + zend_hash.c + zend_hash.h + zend_ini.h + zend_ini_scanner.l + zend_language_parser.y + zend_language_scanner.l + zend_list.c + zend_list.h + zend_llist.c + zend_operators.c: Whitespace + +2001-08-11 Andi Gutmans + + * Makefile.am + zend_objects.c: - Fix UNIX build. + + * zend_compile.c: + - Need to do some rewriting in the parser instead of this. + + * zend.h: + - For Sebastian. Will allow to see you're using the Engine 2 CVS via + phpinfo() + +2001-08-10 Andi Gutmans + + * zend_API.h: - Merge from Engine 1 + + * zend_compile.c: - A couple of fixes + + * zend_API.h: - Merge from Engine 1 CVS + +2001-08-09 Andi Gutmans + + * zend.c: - Merge from Engine 1 tree + +2001-08-08 Andi Gutmans + + * zend.c + zend_compile.c + zend_compile.h + zend_globals.h: - Merge new $_GET, $_POST etc. patch from Engine 1 tree + + * zend_compile.c + zend_compile.h + zend_language_parser.y: - Preliminary patch for method() dereferencing + + * zend.c + zend.h: - Merge zend_try fix from Engine 1 + +2001-08-07 Zeev Suraski + + * ZendTS.dsp: Migrate .dsp patches + +2001-08-07 Andi Gutmans + + * ZendTS.dsp: - Forgot to commit the updated dsp + + * ZendTS.dsp: - More sync with latest CVS + + * zend_objects.c + zend_objects.h + zend_operators.h + zend_variables.c + ZendTS.dsp + zend.h + zend_API.c + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_globals.h + zend_language_parser.y + zend_language_scanner.l: - Sync Engine2 CVS with latest Engine CVS + +2001-08-06 Zeev Suraski + + * zend_indent.c: Commit uncommitted build fix + + * zend_compile.c + zend_globals.h + zend_language_scanner.l: + Fix an off by one lineno issue, in case of an implicit ; + + * flex.skl + zend_highlight.c: Better shared code + + * Makefile.am + Zend.dsp + Zend.m4 + ZendTS.dsp + flex.skl + zend.c + zend_globals.h + zend_globals_macros.h + zend_highlight.c + zend_indent.c + zend_ini.h + zend_ini_parser.y + zend_ini_scanner.h + zend_ini_scanner.l + zend_language_scanner.h + zend_language_scanner.l: + Merge from branch - move to standard C scanners in thread safe mode + + * Makefile.am + Zend.m4 + flex.skl + zend_ini_scanner.l + zend_language_scanner.l: Make the C++less scanner compile under UNIX + +2001-08-06 Andi Gutmans + + * zend_execute.c: - Move to using Z_ macros + + * zend_API.h: - Use Z_ macros + +2001-08-05 Zeev Suraski + + * zend_globals_macros.h: More nulled-out macros + + * zend.c + zend_API.c + zend_API.h: TSRMLS_FETCH work + +2001-08-04 stig + + * .cvsignore: added some more stuff to .cvsignore + +2001-08-03 Zeev Suraski + + * zend_alloc.c: Fix buglet + + * zend_alloc.c: Fix macro + + * zend.c + zend_alloc.c + zend_globals.h: + Implement fast memory allocation and reduced fragmentation under Windows. + + * zend_globals_macros.h: Some compat macros + +2001-08-02 Zeev Suraski + + * zend_execute.c: + require_once()/include_once will return true in case a file was not included + because it was already included earlier. + Changed the default return value type of the include() family from long to + boolean + + * zend_constants.c + zend_execute_API.c + zend_hash.c + zend_hash.h: + Avoid going over huge lists of functions, classes and constants. + Special thanks to the guys from the MS lab for the profiling tools :) + + * zend.c + zend_execute_API.c + zend_hash.c + zend_hash.h + zend_list.c + zend_list.h: Some cleanup + + * zend_builtin_functions.c + zend_hash.c + zend_hash.h: TSRMLS fixes + + * zend_ini_parser.y: non ZTS build fix + + * Zend.dsp + ZendTS.dsp + flex.skl + zend.c + zend_globals.h + zend_globals_macros.h + zend_highlight.c + zend_indent.c + zend_ini.h + zend_ini_parser.y + zend_ini_scanner.h + zend_ini_scanner.l + zend_language_scanner.h + zend_language_scanner.l: + Implement a standard C thread safe scanner within flex + +2001-08-01 Zeev Suraski + + * flex.skl + zend_language_scanner.l: + Implement fast scanning in the multithreaded environment + +2001-07-31 Zeev Suraski + + * zend_language_scanner.l: the make Sebastian happy part of the day :) + + * zend_ini.c + zend_ini.h + zend_ini_parser.y + zend_ini_scanner.h + zend_ini_scanner.l: More TSRMLS_FETCH work + + * zend_list.c + zend_list.h: More TSRMLS_FETCH annihilation + + * zend.c + zend.h + zend_API.c + zend_API.h + zend_builtin_functions.c + zend_compile.c + zend_compile.h + zend_constants.c + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_extensions.c + zend_extensions.h + zend_hash.c + zend_hash.h + zend_ini.c + zend_list.c + zend_list.h + zend_llist.c + zend_llist.h + zend_modules.h + zend_opcode.c: More TSRMLS_FETCH work + +2001-07-30 Zeev Suraski + + * zend_language_scanner.l: Compile fix + + * zend.c + zend_API.c + zend_API.h + zend_builtin_functions.c + zend_compile.c + zend_compile.h + zend_constants.c + zend_constants.h + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_highlight.c + zend_highlight.h + zend_ini.c + zend_ini.h + zend_ini_parser.y + zend_language_scanner.l + zend_modules.h: More TSRMLS_FETCH work + + * zend_API.c + zend_API.h + zend_builtin_functions.c + zend_modules.h: + More TSRMLS_FETCH work, and get rid of redundant ParametersPassedByRef + +2001-07-30 Andrei Zmievski + + * zend_API.c + zend_API.h: + Let's be consisten and keep TSRMLS_DC declaration after num_args. + +2001-07-30 Zeev Suraski + + * zend_API.c + zend_API.h + zend_builtin_functions.c + zend_execute.c + zend_execute_API.c + zend_globals.h + zend_hash.c + zend_hash.h + zend_highlight.h + zend_ini_parser.y + zend_ini_scanner.h + zend_ini_scanner.l + zend_language_parser.y + zend_language_scanner.l + zend_list.c + zend_list.h + zend_operators.c + zend_operators.h + zend_variables.c: More TSRMLS_FETCH annihilation + + * zend_API.c + zend_API.h: Get rid of more TSRMLS_FETCH's + + * zend.c + zend_API.c + zend_API.h + zend_builtin_functions.c + zend_builtin_functions.h + zend_compile.h + zend_constants.c + zend_execute.c + zend_execute_API.c + zend_opcode.c: Avoid TSRMLS_FETCH()'s (still lots of work left) + +2001-07-29 Andi Gutmans + + * zend_execute.h: - More object junk + + * zend.c: - Object macros... + +2001-07-28 Andi Gutmans + + * zend_operators.c: - Fix build + + * zend_operators.c: - More object macros. + + * zend_builtin_functions.c: - Use the Z_OBJ* macros for accessing objects + + * zend.h + zend_operators.h: + - Small patch to allow fixing the PHP tree to be compatible w/ the initial + - Zend 2 objects patch. Hopefully I can commit that this week. + +2001-07-28 Zeev Suraski + + * Zend.dsp + ZendTS.dsp + zend.c + zend.h + zend_API.c + zend_alloc.c + zend_alloc.h + zend_builtin_functions.c + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_fast_cache.h + zend_globals_macros.h + zend_highlight.c + zend_indent.c + zend_ini_parser.y + zend_ini_scanner.l + zend_language_parser.y + zend_language_scanner.h + zend_language_scanner.l + zend_opcode.c: Redesigned thread safety mechanism - nua nua + +2001-07-28 sascha + + * zend.h: Fix build + +2001-07-27 Zeev Suraski + + * zend.h + zend_API.c + zend_API.h + zend_builtin_functions.c + zend_compile.c + zend_compile.h + zend_constants.c + zend_constants.h + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_execute_locks.h + zend_globals_macros.h + zend_ini.c + zend_ini.h + zend_language_parser.y + zend_language_scanner.l + zend_list.c + zend_list.h + zend_modules.h + zend_operators.c + zend_variables.c + zend.c: Get rid of ELS_*(), and use TSRMLS_*() instead. + This patch is *bound* to break some files, as I must have had typos somewhere. + If you use any uncommon extension, please try to build it... + +2001-07-23 sascha + + * zend_alloc.c: tsrm_error is only available, if TSRM_DEBUG is defined. + +2001-07-21 Zeev Suraski + + * zend.c + zend.h: Always track bailout file/lineno + + * zend.c: Fix Release builds + + * zend.c + zend.h + zend_execute_API.c + zend_globals.h + zend_list.c: + Improve bailout mechanism, supports nesting of bailouts a-la try..catch + + * zend_hash.c: Fix compile warning + +2001-07-21 Andrei Zmievski + + * zend_compile.c: + Fix certain cases where inheritance of base class's overloaded handlers wasn't + being done. + +2001-07-20 Zeev Suraski + + * zend.c + zend_execute_API.c + zend_list.c: + Implement a more granular shutdown mechanism for the executor - + prevent corruption of constants and missing destructions of resources + +2001-07-19 Zeev Suraski + + * zend_compile.c: Unfix, it has too strong effects + + * zend_compile.c: Catch all cases + + * zend_compile.c: Fix bug #11970, strike 2 + + * zend_execute.c: Revert bogus patch + +2001-07-18 Stanislav Malyshev + + * zend_operators.c: fix double->long conversion + +2001-07-17 Andi Gutmans + + * zend_hash.c: - Remove unused code + +2001-07-16 Zeev Suraski + + * zend_API.h + zend_compile.c + zend_globals.h + zend_variables.c: + Fix bug #10287 - avoid crashing under a bogus usage of list() + + * zend.h + zend_compile.c + zend_execute_API.c: Fix bug #10467 + +2001-07-15 Zeev Suraski + + * zend_hash.h: Minor cleaning + + * zend_language_parser.y: Optimize the parser a bit + + * zend_language_scanner.h + zend_language_scanner.l: Fix an inline + + * zend_variables.c + zend_variables.h: + Time to bid this old timer goodbye - get rid of var_uninit() + + * zend_hash.c: Fix bug #6239 + + * zend_language_parser.y: + Allow indirect reference to method names in class::method() construct + + * zend_execute_API.c: Fix bug #10257 + + * zend_execute.c: Fix bug #11970 + + * zend_compile.c: Fix bug #9884 + + * zend.c + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_globals.h + zend_language_scanner.l + zend_opcode.c: + Improved interactive mode - it is now available in all builds, without any significant slowdown + + * zend.c: Early initialization + +2001-07-13 Zeev Suraski + + * zend_hash.c: layout + +2001-07-13 Thies C. Arntzen + + * zend_hash.c + zend_hash.h + zend_list.c: + the resource-lists are now destroyed backwards. this will make sure that + resources get destroyed in the opposite order they were created and thereby + db-cursors will always be released before their corresponding connection etc. + this sould not break anything! + +2001-07-11 Zeev Suraski + + * zend_API.c + zend_ptr_stack.c + zend_ptr_stack.h: Remove the last couple of bogus inlines + +2001-07-11 Andi Gutmans + + * zend_hash.c + zend_hash.h: - Move inline_zend_hash_func() to header file + +2001-07-11 Thies C. Arntzen + + * zend_API.h: fixed ZVAL_FALSE and ZVAL_TRUE + +2001-07-11 Stanislav Malyshev + + * zend_hash.h: No hashpjw anymore, but we have zend_hash_func + +2001-07-11 Zeev Suraski + + * zend_operators.c + zend_variables.h: Get rid of ZVAL_RESET... + + * zend_API.c + zend_operators.c + zend_variables.c + zend_variables.h: Get rid of some inlines + +2001-07-10 Andi Gutmans + + * zend_extensions.h + zend_hash.c + zend_hash.h: - Merge faster hash implementation. + - The hash function parameter in hash_init(...) is not used anymore. + - It should be removed but it is "to be decided" if we want to do that now + - or in a major version as it means changing MANY places and third party + - modules might stop working. + +2001-07-10 Thies C. Arntzen + + * zend_API.h + zend_variables.c: cleaned up the RETVAL_ RETURN_ and ZVAL_ macros + + added check for \0 at end-of-string at some places. all strings in PHP + have to be terminated with \0 because 3th party libraries might not be + binary-safe. + +2001-07-10 Andi Gutmans + + * zend_compile.c: - Commit Thies' patch. str.len was too long. + +2001-07-09 Andrei Zmievski + + * zend_API.c + zend_API.h: Adding new parameter parsing API. + +2001-07-09 Andi Gutmans + + * zend_hash.c + zend_hash.h: + - Significantly improve hash table performance by using djb's hash function + instead of hashpjw() and by using power of two sizes of hash tables (this + saves the % and isn't necessary with a good hash function). + Please try this patch. + +2001-07-03 Rasmus Lerdorf + + * zend_API.c: Trivial fix - but the period looks odd in error messages + +2001-06-30 Andi Gutmans + + * zend_alloc.c: - Fix the memory limit fix. + +2001-06-29 Andi Gutmans + + * zend_operators.c: - Remove bogus comment. + +2001-06-29 Zeev Suraski + + * zend_alloc.c: Fix memory_limit, kill warning + +2001-06-28 Zeev Suraski + + * zend_execute_locks.h: Fix warnings + +2001-06-27 Zeev Suraski + + * zend_execute.c: + Fix leak in the patch, and revert a couple of lines I didn't mean to commit + + * zend_execute.c: - Warn about illegal offsets + - Allow assignments to uninitialized string offsets (automatically pads the + string with spaces) + +2001-06-26 Zeev Suraski + + * zend_operators.c: + Fixed autoconversion of negative values to double (Fix bug #11685) + +2001-06-26 Andi Gutmans + + * zend_builtin_functions.c: - Fix crash bug (fix by Jani). + +2001-06-24 Andi Gutmans + + * zend.h: - Bump Zend version + +2001-06-21 Andi Gutmans + + * zend_execute.c + zend_execute_locks.h + zend_globals.h: + - Hopefully fix bug #11476 and improve garbage to be freed very quickly. + Tree tagged as PRE_GRANULAR_GARBAGE_FIX before commiting. + + * zend_execute_locks.h: + - Use inline instead of macro for PZVAL_LOCK()/PZVAL_UNLOCK() so that it + can be debugged. + + * zend_execute.c + zend_execute.h + zend_execute_API.c: + - Nuke dependency of all of PHP on zend_execute_locks.h. + +2001-06-21 Zeev Suraski + + * zend_execute.c: + Eliminate the leak that the original bogus code tried to solve + + * zend_compile.c + zend_execute.c + zend_globals.h: + parent::methodname() now works better with runtime classes (fix bug #11589) + + * zend_execute.c: + Fix bug #11590 (I want Andi to also review this patch before it goes into 4.0.6) + +2001-06-20 Andi Gutmans + + * zend_execute.c: - MFH + + * zend_execute.c: - Fix string offsets crash. + +2001-06-19 Andi Gutmans + + * zend_alloc.c: - Real MFH of memory fragmentation patch + + * zend_alloc.c: - Bad merge. Revert the previous patch (damn CVS). + + * zend_alloc.c: - MFH + + * zend_alloc.c: + - Fix memory fragmention problem which could lead to web server processes + growing much more than they should. (bug #11344?) + + * zend_execute.c + zend_execute.h: - MFH + +2001-06-19 Zeev Suraski + + * zend_execute.c + zend_execute.h: Add missing exports + + * zend_execute.c: Fix warning + +2001-06-13 Zeev Suraski + + * zend.c: MFH + + * zend.c: + Avoid crashing if the error reporting function is called after a bailout during shutdown + +2001-06-12 Zeev Suraski + + * zend_highlight.c: + Improve XHTML compliance (suggested by Anil Madhavapeddy) + +2001-06-10 Zeev Suraski + + * zend.c: Fix ZTS build problem + +2001-06-07 Andi Gutmans + + * zend_compile.h: - Avoid breaking op_array compatibility for 4.0.6 + +2001-05-30 Zeev Suraski + + * Zend.m4 + zend_execute_API.c: Add missing check + +2001-05-25 Andi Gutmans + + * zend_compile.c: + - Change if() to while() to make sure we skip enough opcodes + + * zend_compile.c: - MFH + + * zend_compile.c: - Fix memory leak + +2001-05-23 Andrei Zmievski + + * zend_builtin_functions.c: + Fix segfault -- need to copy-construct constant value. + +2001-05-21 Andrei Zmievski + + * zend_builtin_functions.c: Moving some functions into Zend. + +2001-05-20 sascha + + * .cvsignore: ignore ylwrap + +2001-05-20 Andi Gutmans + + * zend_list.h: - The previous name could be confused with resource # + + * zend_list.c + zend_list.h: + - Whitespace and change the name of the macro to something more verbose + ZEND_GET_RESOURCE_ID(...) + +2001-05-20 James Moore + + * zend_list.c + zend_list.h: - Add new ZEND_GET_LE macro for retrieving destructor + id's from remote extensions. (Jmoore, Zend Engine) + +2001-05-20 Andi Gutmans + + * zend_list.c: - Don't allow resource types of 0 + +2001-05-19 sascha + + * zend_hash.c: Fix segfault when using zend_hash_add_empty_element + +2001-05-18 Thies C. Arntzen + + * zend_alloc.c: reset allocated_memory_peak after each request. + +2001-05-17 Zeev Suraski + + * zend_language_scanner.l: That's slightly clearer that way :) + + * zend_alloc.c: Fix build + + * zend.c: MFH + + * zend.c: Fix corruption issue + +2001-05-16 Zeev Suraski + + * zend_hash.c + zend_hash.h: + Implement zend_hash_add_empty_element() using the existing infrastructure + + * zend_globals.h: Commit missing fix + + * Zend.m4 + zend_alloc.c + zend_globals.h: Merge memory usage into memory limit + +2001-05-14 sascha + + * zend_hash.c: + Initialize empty pDataPtr to a pseudo value to prevent a pefree on + pData. + +2001-05-12 Andi Gutmans + + * zend_variables.c: - Remove check for ht == NULL in copy_ctor. + If ht is NULL at this point then we are better off crashing and fixing + the bug that caused it. + +2001-05-11 sascha + + * zend.h: add missing closing paranthesis + + * zend_hash.c: Some extensions don't associate any data with hash entries, + except the key. Prior to this change, a separate chunk of memory + was allocated in that case to store exactly zero bytes (plus + memory manager overhead). We treat that case similar to the + pointer case, but don't copy any data at all (because the pointer + is usually the NULL pointer). + + * zend_constants.c: + Fix a memory leak which occured upon registering an already existing + constant. + +2001-05-11 Thies C. Arntzen + + * Zend.m4 + zend_alloc.c + zend_globals.h: added --enable-memory-usage-info + +2001-05-11 Andi Gutmans + + * zend_opcode.c: - MFH + + * zend_opcode.c: + - Fix crash bug when opcodes array is erealloc()'ed to a different memory + area before it reaches the loop. + - Some whitespace stuff + +2001-05-10 Zeev Suraski + + * zend_operators.c: + Treat numeric strings as numbers in the increment operator + +2001-05-09 Andrei Zmievski + + * zend_API.c: Nuke unused variable. + + * zend_API.c: Fix a few bugs in zend_is_callable() and make it stricter. + +2001-05-08 Andi Gutmans + + * zend_language_scanner.l: - Fix line numbers when some lines end with \r + + * zend_opcode.c: - Fix crash bug reported by DBG author Dmitri Dmitrienko. + +2001-05-07 Zeev Suraski + + * zend.c: Make zend_execute_scripts() reentrant + +2001-05-06 Zeev Suraski + + * zend.c + zend_compile.c + zend_compile.h: + Recover from a parse error in include files (before, it could result in a crash under certain circumstances). Fix bug #8663 + +2001-05-06 Andi Gutmans + + * .cvsignore: - .cc files were renamed. Update .cvsignore. + +2001-05-06 Zeev Suraski + + * zend_operators.h: Yikes, that would have been a very bad bug :) + + * zend_execute.c: + Floating point keys didn't work in array() (fix bug #6662) + + * zend_compile.c + zend_execute_API.c: + Hear hear, interactive mode is finally showing some progress: + - Support function calls + - Fix crash bug + + * zend_compile.h + zend_language_parser.y + zend_language_scanner.l: Support interactive mode in thread-safe builds + + * zend_operators.h: Fix autoconversion of hexadecimal strings + It's time to close bug #5404 :) + + * zend_highlight.c: Retain single spaces as spaces to condense HTML + +2001-05-02 Andi Gutmans + + * zend_ini_scanner.l: - Support \r as newline in the ini scanner + + * zend_language_scanner.l: - Handle MAC OS X \r line endings + + * zend_execute.c: + - Patch by Andrei to prevent crash in error situation when not all + object overloading handles are defined. + +2001-05-01 Andi Gutmans + + * zend.h: - Bump up Zend version + +2001-04-30 Andi Gutmans + + * zend_builtin_functions.c: - Add mistakenly removen closing bracket + + * zend_builtin_functions.c: - Get rid of warning + + * zend_alloc.c: + - Try to solve crash on OS400. There is actually no reason I can see for + why his fix should solve a crash but it doesn't harm. + + * zend_execute_API.c: - Fix crash bug in interactive mode + +2001-04-29 Andi Gutmans + + * zend_alloc.h: - Whitespace + + * zend_alloc.c + zend_alloc.h: - Improve overwrite detection in debug mode. + + * zend_operators.c: + - Previous patch for too early freeing of resources seemed to have worked. + - Clean it up a bit. + + * zend_operators.c: + - Try and solve the too early resource destruction problem. + +2001-04-28 Zeev Suraski + + * zend.h + zend_hash.c + zend_language_scanner.l + zend_operators.c: include limits.h if available + + * zend.h: Fix bug 5661 + +2001-04-28 Andi Gutmans + + * zend_operators.c: - Move all cases into switch(). + + * zend_alloc.c: - Just some little whitespace stuff. + + * zend_alloc.c: + - Don't add/remove cached memory blocks from blocks list as this will slow + - down performance a bit. + +2001-04-28 Zeev Suraski + + * zend_operators.c: + Resources weren't being properly destroyed by the convert_to_*() functions + +2001-04-27 Andi Gutmans + + * zend_API.c + zend_builtin_functions.c + zend_hash.c + zend_language_scanner.l + zend_operators.c + zend_operators.h: - More whitespace fixes while I'm at it. + + * zend.h + zend_alloc.c + zend_builtin_functions.c + zend_execute_API.c + zend_extensions.c + zend_language_scanner.l: + - Whitespace changes to be standard like the rest of Zend + +2001-04-24 Andi Gutmans + + * zend_execute.c: - Due to popular demand merge the foreach() crash fix. + +2001-04-24 Andrei Zmievski + + * zend_builtin_functions.c: MFH. + +2001-04-21 Andi Gutmans + + * zend_llist.c + zend_llist.h: - Add typedef for function pointer of llist dtor + +2001-04-20 Andi Gutmans + + * zend_execute.c: + - Fix for crash bug when using invalid arguments in the foreach() loop. + - Reported by Yasuo Ohgaki + +2001-04-19 Andi Gutmans + + * zend_API.h: - Patch from Jason Greene. + - Make it easier to write PHP function definitions in more than just one .c + file while accessing the same module globals. + +2001-04-17 Zeev Suraski + + * zend_alloc.c: small beautification + +2001-03-28 Zeev Suraski + + * zend_list.c: Fix warning + + * zend_list.c: Make Windows happy + + * zend_list.c: Get rid of more redundant code + + * zend_list.c: + Cleaner way of making sure resources start at 1 and not 0... + + * zend_list.c + zend_list.h: Remove redundant code + +2001-03-27 Zeev Suraski + + * zend_list.c + zend_list.h: God knows what this code was doing... + +2001-03-26 Andrei Zmievski + + * zend_builtin_functions.c: + Updated get_class_methods() to take class instance as well as class name. + + * zend_builtin_functions.c: + Making it possible to pass a class name to get_parent_class() as well + as a class instance. + +2001-03-23 Andrei Zmievski + + * zend_builtin_functions.c: Fixing function name length. + +2001-03-19 Andi Gutmans + + * zend_language_parser.y: + - Add support for isset($var1, $var2, $var3); - Will be true only if all + - variables are set. + +2001-03-15 Andi Gutmans + + * zend_language_parser.y: - Nuke commented code + +2001-03-12 Andrei Zmievski + + * zend_API.c: Name length is already known. + +2001-03-12 Andi Gutmans + + * zend_API.c: - Missed second place. + + * zend_API.c: - Nuke snprintf() + + * zend_language_scanner.l: - White space + + * zend_language_scanner.l: + - Fix by Jani Taskinen for whole path also to work + with include_once()/require_once(). + +2001-03-12 Andrei Zmievski + + * zend_API.c + zend_API.h: + Improve zend_is_callable() to the point where it's actually useful. + Now it just needs to be invoked everywhere in PHP where a callback is + expected. + +2001-03-11 Andi Gutmans + + * Zend.m4 + acconfig.h: - Fix for Solaris. + +2001-03-10 Andi Gutmans + + * zend_execute.c: - Whitespace + +2001-03-07 Zeev Suraski + + * zend_ini.h: Add missing #define's + + * zend_compile.c + zend_execute.c: Make parent:: work in runtime bindings as well + +2001-03-06 sascha + + * Zend.m4: We actually only need AC_PROG_LEX here. + +2001-03-04 Zeev Suraski + + * zend_execute.c: Fix bug #8899 (thanks Jani) + +2001-03-03 sascha + + * Zend.m4: -Os is a valid GCC optimization level. + +2001-03-02 Zeev Suraski + + * zend_compile.c: Whitespace fix + +2001-02-28 Andrei Zmievski + + * zend_execute_API.c: Do case-insensitive class name matching when parsing + array('Class', 'method') structure. + You guys can clean it up, if there is a better way. + +2001-02-27 Andi Gutmans + + * zend_variables.c + zend_variables.h: - Nuke zval_del_ref() + +2001-02-27 Andrei Zmievski + + * zend_compile.c: Don't overwrite existing handlers with parent ones. + +2001-02-26 Andi Gutmans + + * Zend.dsp + ZendCore.dep + ZendTS.dsp + zend.c + zend_API.c + zend_API.h: - Rename modules.h to zend_modules.h + + * LICENSE: - One more copyright year update + + * zend_ini.h + zend_ini_parser.y + zend_ini_scanner.l + zend_language_parser.y + zend_language_scanner.h + zend_language_scanner.l + zend_list.c + zend_list.h + zend_llist.c + zend_llist.h + zend_opcode.c + zend_operators.c + zend_operators.h + zend_ptr_stack.c + zend_ptr_stack.h + zend_sprintf.c + zend_stack.c + zend_stack.h + zend_static_allocator.c + zend_static_allocator.h + zend_variables.c + zend_variables.h + zend.c + zend.h + zend_API.c + zend_API.h + zend_alloc.c + zend_alloc.h + zend_builtin_functions.c + zend_builtin_functions.h + zend_compile.c + zend_compile.h + zend_config.w32.h + zend_constants.c + zend_constants.h + zend_dynamic_array.c + zend_dynamic_array.h + zend_errors.h + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_extensions.c + zend_extensions.h + zend_fast_cache.h + zend_globals.h + zend_globals_macros.h + zend_hash.c + zend_hash.h + zend_highlight.c + zend_highlight.h + zend_indent.c + zend_indent.h + zend_ini.c + zend_modules.h: - Update copyright year + +2001-02-25 Andi Gutmans + + * zend_modules.h: - Fix dll linkage warnings + +2001-02-24 Andi Gutmans + + * zend_builtin_functions.c + zend_modules.h: - Add exports from Daniel Beulshausen + +2001-02-14 Stanislav Malyshev + + * zend.h: allow more extensions with resources + +2001-02-13 Zeev Suraski + + * zend_extensions.c: Move version registration to a more correct place + +2001-02-12 Andi Gutmans + + * zend_operators.c + zend_operators.h: - Remove two unused functions + + * zend_execute_API.c: - Fix whitespace. + +2001-02-12 Zeev Suraski + + * zend_execute_API.c: + Fix a bug that could cause corruption in case of an error during + get_zval_ptr() + +2001-02-09 Andi Gutmans + + * zend_execute.c: + - Remove duplicate code and do a tiny optimization in DO_FCALL + +2001-02-05 Zeev Suraski + + * zend_execute.c: Fix string offset data corruption + +2001-02-04 Andrei Zmievski + + * zend_execute_API.c: + Allow passing class name as well as an object instance to call methods. + +2001-02-03 Andrei Zmievski + + * zend_execute_API.c: + Set the correct function state during execution. This is mainly to have + get_active_function_name() to return proper value. + + * zend_compile.c: Inherit overloaded handlers. + +2001-02-01 Andrei Zmievski + + * zend_API.c + zend_API.h: + Added zend_is_callable() function that checks whether passed zval + represents a valid and exiting callable construct. + +2001-01-31 Andi Gutmans + + * zend_API.h + zend_API.c: - Change unset() functions to null(). unset() is legacy + + * zend_API.h: + - Quick fix. I'm for changing these to add_property_null() as we've nuked + - unset. + +2001-01-27 Andi Gutmans + + * zend_execute.c: - That doesn't seem like a smart thing to do :) + - I wonder if gcc optimized it out. + +2001-01-23 Thies C. Arntzen + + * zend_extensions.h + zend_ini_scanner.h + zend_list.c + zend_list.h: fix a couple of warnings + + * zend_API.c: fixed crash in add_index_bool. + +2001-01-22 Andrei Zmievski + + * zend_API.h: Make add_index_zval() available to the outside world. + +2001-01-21 Andi Gutmans + + * zend.h: + - Make people happy who like the Zend version number bumped up in parallel + with PHP. + +2001-01-20 Andi Gutmans + + * zend_API.c + zend_API.h: + - Patch from Sterling. Add API calls to add zval's as array indeces/ + object properties. Add _ex functions which take the string length as an + argument for better performance. + +2001-01-19 Andi Gutmans + + * zend_API.h + zend_API.c: + - For Sterling. I wonder if not all of the API functions should take the + - key_length as a parameter in order to save that strlen(). + +2001-01-17 Andi Gutmans + + * zend_execute.c: + - Fix leak in fetch_dim_address() which was already fixed in + - fetch_dim_object(). Take the oppertunity to make both use the same + - function and not duplicate the code. + +2001-01-16 Zeev Suraski + + * zend_list.c: Fix persistent resources, once and for all... + +2001-01-15 Zeev Suraski + + * zend.c + zend.h + zend_compile.c: Add free_estring() + +2001-01-12 Zeev Suraski + + * zend_istdiostream.h: Add newline + +2001-01-12 Rasmus Lerdorf + + * zend_highlight.c: Fix for bug number 8666 + +2001-01-07 Zeev Suraski + + * zend_ini.c: Fix mismatch in return values + + * zend.c + zend.h + zend_alloc.c + zend_ini.c + zend_ini.h: - Remove backward dependency from PHP -> Zend + - Rename get_ini_entry() as get_configuration_directive() for clarity + (it doesn't use the INI subsystem, but the module-supplied function for + retrieving configuration directives) + + * Zend.dsp + ZendTS.dsp: Remove -S option on all bison calls + + * zend.c: + Fix possibility of a crash during startup (very unlikely, but possible) + +2001-01-06 Zeev Suraski + + * ZendTS.dsp: Remove -S + +2001-01-06 Andi Gutmans + + * zend_ini.c: - This slipped in by mistake. + +2001-01-05 Zeev Suraski + + * zend_ini.c + zend_ini.h: + Merge in some ZEND_API additions from Daniel Beulshausen (needed for the + Win32 Apache module) + +2001-01-04 Andi Gutmans + + * zend_list.c: + - Make plist_destructor work like list_destructor to allow it to call + extended destructors. + +2001-01-03 Zeev Suraski + + * zend.h: Fix Zend version while we're at it + + * zend_execute_API.c: Merge call_user_function_ex() fixes + + * zend_language_scanner.l: Merge line number corruption bug fix + + * zend_language_scanner.l: + Fix another case of possible line number corruption + + * zend.h: Commit missing declaration + +2001-01-01 Andi Gutmans + + * zend_execute.c: - Remove unreachable code + +2000-12-30 Zeev Suraski + + * zend_language_scanner.l + zend_opcode.c: Fix possible corruption in line number information + +2000-12-27 Zeev Suraski + + * zend.c + zend_globals.h + zend_ini.c + zend_ini.h + ZendTS.dsp: + Make the INI mechanism thread safe (or at least thread safer :) + +2000-12-26 Zeev Suraski + + * zend_compile.h: + Use iostream.h instead of istream.h (IBM's compiler doesn't come with istream.h, + and iostream.h should include it) + + * ZendTS.dsp + zend_ini_scanner.l + zend_istdiostream.h + zend_language_scanner.l: + - Use supplied istdiostream definition for the INI scanner too + - Add Release_TSDbg configuration + +2000-12-24 Zeev Suraski + + * zend_extensions.h: This needs updating as well + + * zend_execute_API.c: + More aggressive protection in call_user_function_ex() + +2000-12-23 Zeev Suraski + + * zend_execute_API.c: + Fix a possible crash bug in call_user_function_ex(), if the function is + in fact not a user function + +2000-12-22 sascha + + * zend.c + zend_modules.h: + Set the floating-point exception mask on FreeBSD to 0 (as do other + FreeBSD system applications). Also bump up the module API number + as the zend_hash_get_current_key change affects source and binary + compatibility. + +2000-12-22 Zeev Suraski + + * zend.c + zend_builtin_functions.c + zend_execute.c + zend_hash.c + zend_hash.h: + Allow get_current_key() not to return the key itself, instead of a duplicate + + * zend_hash.c: * Fixed a possible crash in get_class_methods() + +2000-12-19 Stanislav Malyshev + + * zend_language_scanner.l: Add support for ASP tags in one-line comment + +2000-12-18 Andi Gutmans + + * flex.skl: - Success! Yay! + + * flex.skl: - Yet another one. + + * flex.skl: - Testing + + * flex.skl: - No luck + + * flex.skl: - Make this damn commit stuff work. + + * flex.skl: - Testing + +2000-12-18 Stanislav Malyshev + + * zend.c: + Use HashPosition iterator instead of saving/restoring internal pointer + + * zend.c: Preserve internal pointer over print_r (fix #8289) + +2000-12-18 Andi Gutmans + + * zend_compile.c: - Fix leak with useless statements such as "foo"; + + * flex.skl: + - Testing Sascha's CVS commit script which should work with branches. + + * flex.skl: - Testing + + * flex.skl: - Testin + +2000-12-18 Zeev Suraski + + * flex.skl: Test, ignore + +2000-12-18 Stanislav Malyshev + + * zend_operators.c: Add notice when auto-converting array to string + +2000-12-17 Andi Gutmans + + * zend_language_scanner.l: + - Clean up the scanner a tiny bit while messing with it. + + * zend_language_scanner.l: + - %> without asp_tags should not be treated as inline_html but as regular + tokens. Of course the parser will die with a parse error which is the + correct behavior. + + * zend_language_scanner.l: + - Fix problem in one line comments with line endings such as ??> + +2000-12-17 Stanislav Malyshev + + * zend_operators.c: Fix #8279 (-2147483647 > 2147483647). + +2000-12-14 Zeev Suraski + + * zend_modules.h: Update module_api_no + +2000-12-13 Zeev Suraski + + * zend_API.h + zend_execute_API.c: + Fix call_user_function() with objects - it could leak under certain circumstances + +2000-12-12 Stanislav Malyshev + + * zend_operators.c: Fix #8195: strncasecmp returns incorrect value + +2000-12-07 sascha + + * zend_builtin_functions.c: + Hardcode strlen due to problems on SCO OpenServer 5.0.4 which defines + strlen to __std_hdr_strlen. + +2000-12-07 Stanislav Malyshev + + * zend_compile.c: Whitespace fix + + * zend_compile.c: Allow var $foo = array(ABC => 1) constructs + + * zend_builtin_functions.c: + Fix memory leak - get_current_key mallocs it's result, no need to + copy it. + +2000-12-06 sascha + + * zend_hash.c: + INIT_DATA/UPDATE_DATA assumed that pData elements of the size of a void + pointer would actually be aligned like a void pointer. This lead + to bus errors on architectures which don't allow unaligned 32-bit accesses. + +2000-12-05 Andi Gutmans + + * zend_language_parser.y: + - Support for $var =& new foo() syntax. This allows you to use objects + which create extra references to themselves in the constructor. + +2000-12-05 Zeev Suraski + + * zend_execute.h: Expose all timeout functions + +2000-12-02 sascha + + * acconfig.h + configure.in: + Use the hardly-documented third parameter of AM_INIT_AUTOMAKE to suppress + defining PACKAGE/VERSION. + +2000-11-27 Andi Gutmans + + * zend_compile.c + zend_compile.h + zend_execute.c: + - Allow passing references which are returned from functions and new + - statements to be passed by reference. + +2000-11-27 Andrei Zmievski + + * zend_builtin_functions.c: + Update class constants before trying to get default properties. + +2000-11-22 Andi Gutmans + + * zend_compile.c: - Remove code which has been commented out for ages. + +2000-11-22 sascha + + * zend_execute.c + zend_globals.h: Pass on the exit status + +2000-11-21 Zeev Suraski + + * zend_operators.c + zend_operators.h: Fix build + +2000-11-21 Andi Gutmans + + * zend_execute.c: - The baby patch wasn't that innocent :) + +2000-11-21 Andrei Zmievski + + * zend_builtin_functions.c: + Sterling's patch to make get_defined_vars() simpler and better. + +2000-11-20 Andi Gutmans + + * zend_execute.c: - NEVER copy and paste :) + + * zend_compile.c + zend_execute.c: - Baby patch towards making the damn pass-by-ref work. + +2000-11-20 Zeev Suraski + + * zend_extensions.h: Update API number + +2000-11-20 Stanislav Malyshev + + * zend.h: + Add macro to replace value of zval with another value while preserving + referencing structure + +2000-11-20 Andi Gutmans + + * zend_execute.c: - This patch is broken and needs more thorough fixing. + +2000-11-19 Andi Gutmans + + * zend_execute.c: + - Try and fix the problem when sending references returned from a function by reference. + +2000-11-19 Zeev Suraski + + * zend_alloc.h: Fix Zend build for non ZTS + +2000-11-18 Zeev Suraski + + * zend_alloc.c: Forgot to commit the non-debug build fix yesterday... + + * zend_alloc.c + zend_alloc.h: + Add thread-safety debugging information (idea - Dmitri Dmitrienko) + +2000-11-14 Stanislav Malyshev + + * zend_language_scanner.l: Restore compatibility with old broken way + + * zend_language_scanner.l: + Better 0x handling - not change non-0x number behaviour + + * zend_language_scanner.l: + Attempt at better handling long 0x-numbers, like 0xffffffff + +2000-11-13 Andi Gutmans + + * zend_extensions.c + zend_extensions.h: - Remove unused function + + * zend_extensions.h: + - Use typedef's for function pointers so that we can easily define arrays + - of these function pointers. + +2000-11-13 Stanislav Malyshev + + * zend_llist.c: + Fix zend_llist_apply_with_del - it should remove from list, + not only call dtor + +2000-11-12 Zeev Suraski + + * ZEND_CHANGES: Test, ignore + +2000-11-11 Andi Gutmans + + * zend_compile.c + zend_compile.h: - Move SET_UNUSED() to header + + * zend_opcode.c: - Beautify by using the standard #define. + +2000-11-10 Andi Gutmans + + * zend_compile.h + zend_compile.c: - Remove this damn thing once again. + + * .cvsignore: - Add files to .cvsignore thanks to Jon Parise + +2000-11-09 Andi Gutmans + + * zend_compile.c + zend_compile.h: - Maybe it's OK now? :) + + * zend_compile.c + zend_compile.h: - Undo the previous commit for fixing $obj = new foo(). + + * zend_compile.c + zend_compile.h: + - Commit experimental patch to fix the problem when doing $a = new foo() + and the constructor assigns $this by reference to other symbol table + elements. Thanks to Daniel J. Rodriguez on this one. + +2000-11-08 Zeev Suraski + + * zend_extensions.c + zend_extensions.h: Add ability to find extensions by name + +2000-11-06 sascha + + * zend_ini.c: Kill a misleading warning which is intended for old code + which assumes sizeof(int) == sizeof(void *). + +2000-11-03 Andi Gutmans + + * zend_ini_scanner.h: - Add trailing \n? + +2000-11-03 Zeev Suraski + + * zend_ini_scanner.l: Fix for bug #5571 (by mookid@sigent.ru) + +2000-11-03 Andi Gutmans + + * Makefile.am: - Fix dependency. + +2000-11-03 Zeev Suraski + + * zend_operators.h: Fix build + + * zend_operators.h: Add RESVAL macros + +2000-11-02 Zeev Suraski + + * zend.c: Fix bug #7599 + + * zend_language_parser.y + zend_language_scanner.l: Missed those + + * zend_API.c + zend_compile.c + zend_compile.h: Maintain consistency + +2000-11-02 Andi Gutmans + + * zend_compile.c + zend_compile.h + zend_language_parser.y: - Replace do_exit() with zend_do_exit(). + - Problem reported by David Hedbor + +2000-11-02 Zeev Suraski + + * zend_ini_parser.y: Remove unnecessary variables + + * zend_ini.c: + explicit declaration here too - sigh, way too early in the morning + + * zend_ini.h: oops + + * zend_ini.h: explicit declaration + +2000-10-31 Zeev Suraski + + * zend_highlight.h: Fix Apache build + + * zend_ini.c + zend_ini.h: Remove unnecessary code, fix phpinfo() + + * Zend.m4: Require bison 1.28 + +2000-10-30 Zeev Suraski + + * Zend.dsp: Fix non-thread-safe Windows build + + * zend_globals.h + zend_ini.h + zend_ini_parser.y + zend_ini_scanner.h + zend_ini_scanner.l: Final touches on the INI parser + +2000-10-30 Stanislav Malyshev + + * Makefile.am: Another attempt to make it build + + * Makefile.am + zend_ini_scanner.l: Fix build + +2000-10-29 Zeev Suraski + + * zend_ini_parser.y + zend_ini_scanner.h + zend_ini_scanner.l: Fix leaks + + * zend_alloc.h + zend_ini.h + zend_ini_parser.y + zend_ini_scanner.h + zend_ini_scanner.l: The new INI parser is showing some signs of life + + * zend_compile.c + zend_compile.h + zend_execute.c: + Fix a corruption bug, when erroneously allowing to send non-variables by reference (several + bug-db reports seem to originate in this bug) + + * zend_extensions.c + zend_ini_parser.y: Fix build + + * zend_ini_scanner.h: Forgot this one + + * Makefile.am + ZendTS.dsp + zend_globals.h + zend_ini.h + zend_ini_parser.y + zend_ini_scanner.l: Generalization work + +2000-10-29 Stanislav Malyshev + + * zend_extensions.c + zend_extensions.h: + Allow module to proclaim compatibility with any Zend version + +2000-10-29 Zeev Suraski + + * Makefile.am + ZendTS.dsp + zend_ini_parser.y + zend_ini_scanner.l + zend_language_scanner.l: Some more work on the INI parser/scanner + + * Makefile.am + zend_ini_parser.y + zend_ini_scanner.l: Initial step in rewriting the INI parsing mechanism + + * .cvsignore + Makefile.am + Zend.dsp + ZendCore.dep + ZendTS.dsp + zend-parser.y + zend-scanner.h + zend-scanner.l + zend_compile.c + zend_compile.h + zend_highlight.c + zend_indent.c + zend_language_parser.y + zend_language_scanner.h + zend_language_scanner.l: Unify the names of these last 3 files... + + * Zend.dsp + ZendTS.dsp: Fix Windows build + + * Makefile.am + zend_ini.c + zend_ini.h + zend_operators.c + zend_operators.h: + Initial steps to move the INI mechanism to the Zend engine + +2000-10-27 Andrei Zmievski + + * zend_operators.h: Added macros for object properties and class entry. + +2000-10-26 Andi Gutmans + + * zend_API.c + zend_modules.h: - Fix new -m on Windows + +2000-10-25 Andrei Zmievski + + * zend_list.h: Remove the patch to register_list_destructors(). + +2000-10-20 Andrei Zmievski + + * zend_list.c + zend_list.h: - Fixed a bug in zend_rsrc_list_get_rsrc_type() + - Switched register_list_destructors() to use + zend_register_list_destructors_ex() instead + +2000-10-19 Andi Gutmans + + * zend_compile.c: + - Constant expressions which are used multiple times need to be copy_ctored + +2000-10-18 Andi Gutmans + + * zend_llist.c: - Fix whitespace + + * zend_extensions.c + zend_llist.c + zend_llist.h: + - Try #2. Wasn't allowed to delete in the previous manner because we were + in the middle of an llist_apply() + +2000-10-18 sascha + + * zend_fast_cache.h: + Add explicit conversion from 'void *', otherwise ANSI C++ compilers + will break out. + +2000-10-18 Andi Gutmans + + * zend_extensions.c: - Fix crash + +2000-10-17 Andi Gutmans + + * zend_builtin_functions.c: - Fix copy&paste bug + +2000-10-15 Andi Gutmans + + * zend_opcode.c: + - Increase op_array size faster and make eralloc() it in the end to save + memory. + +2000-10-14 Andi Gutmans + + * zend_builtin_functions.c: - Add another patch from Sterling. + + * zend_builtin_functions.c: + - Preliminary commit of Sterlings get_defined_functions()/get_defined_vars + functions + + * zend_extensions.c: + - Only run startup() if ZEND_EXTENSIONS is defined to 1. + This fixes a link error on platforms which don't support libdl + +2000-10-13 Andi Gutmans + + * zend_operators.c: - Make increment of "" become "1" + +2000-10-11 Andi Gutmans + + * zend_hash.c + zend_hash.h: Don't use 'new' symbol + +2000-10-11 Zeev Suraski + + * zend_execute.c + zend_execute_API.c: + Fix -a interactive mode (no idea how the previous commit got committed) + + * zend_execute.c: *** empty log message *** + + * zend.h: Update version + + * zend_hash.c + zend_hash.h: Add zend_hash_merge_ex(), for selective merging + +2000-10-06 Andi Gutmans + + * zend_execute.h: - Fix Bug #7061 + +2000-10-05 Andi Gutmans + + * zend-scanner.l: + - Updated included_files() also for plain include()/require(). + +2000-10-04 Andi Gutmans + + * zend_alloc.c: - Fix fprintf + +2000-10-02 Andi Gutmans + + * zend_extensions.h: - Change zend_extension_api_no + +2000-09-30 Andi Gutmans + + * zend_builtin_functions.c: - Cleanup error output + +2000-09-28 Andi Gutmans + + * zend_hash.c: + - Another has optimization/fix like the hash_copy one from earlier on + +2000-09-28 Stanislav Malyshev + + * zend_hash.c: + Make hash_copy call copy constructor on a real copy, not on a temp + +2000-09-28 Andi Gutmans + + * ZendTS.dsp: - Remove zend_gcc_inline.c + +2000-09-26 sascha + + * Makefile.am + Zend.m4 + zend_execute.h + zend_gcc_inline.c + zend_operators.h: + Remove --enable-c9x-inline option. We now use a syntax which is compatible + with all compilers by providing the function with static linkage in every + compilation unit. + +2000-09-25 Zeev Suraski + + * zend.c + zend_extensions.c + zend_extensions.h: + Fix previous update - move extension startup further down the startup sequence + + * zend.c: Move extension startup further down the startup sequence + +2000-09-19 Andi Gutmans + + * zend_operators.h: - Add Z_BVAL* macros + +2000-09-19 Stanislav Malyshev + + * zend_execute_locks.h: + Fix crash on Solaris with function parameter destruction + +2000-09-18 Stanislav Malyshev + + * zend_builtin_functions.c: + Made get_included_files() work again, in somewhat different way + +2000-09-17 Stanislav Malyshev + + * zend_compile.c: Set filename even on recursive include + +2000-09-14 Andi Gutmans + + * zend_execute.c: + - Fix NULL handling in ARRAY opcode and resolve memory leak + +2000-09-12 Zeev Suraski + + * zend-scanner.l + zend.c + zend_builtin_functions.c + zend_compile.h + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_highlight.h: Make compile_string() accept a description of the code + +2000-09-11 Andi Gutmans + + * zend_compile.c: + - Forgot to create extended info in include()/require() call + +2000-09-10 Stanislav Malyshev + + * zend-parser.y: Allow require_once to take expressions, just like require + + * ZEND_CHANGES: Try once more to remove dups + + * ZEND_CHANGES: Test commit - weed out duplicate messages + +2000-09-09 Zeev Suraski + + * zend.c: Don't use unsafe sprintf() + +2000-09-08 Stanislav Malyshev + + * zend.c: Don't trust snprintf return + +2000-09-06 Andi Gutmans + + * zend_config.w32.h: - Save two lines + + * zend_config.w32.h: - Fix header + +2000-09-06 sascha + + * Zend.m4: Unless overwritten, default to no optimization in debug mode. + +2000-09-05 Andi Gutmans + + * zend_operators.h + zend_operators.c: - Commiting Sterling's new multi_convert* functions + +2000-09-05 Andrei Zmievski + + * zend_builtin_functions.c: Fix memory overrun. + +2000-09-05 Stanislav Malyshev + + * zend_builtin_functions.c: + Fix crash with trigger_error having no args (#6549) + +2000-09-04 Andi Gutmans + + * Makefile.am: - Remove two tabs + +2000-09-02 Andi Gutmans + + * ZendTS.dsp: + - Defining TSRM_WIN32 in each and every dsp sucked. Revert this change + + * ZendTS.dsp: - Fix windows build + +2000-08-31 Andi Gutmans + + * ZendTS.dsp: + - This should fix the performance problem with Release builds + + * zend-scanner.l + zend.c + zend_execute.c: + - Use emalloc() for opened_path now. This was a potential leak before. + - This patch has potential to break stuff but I tested it as much as I + - could. Fixes should be easy. + + * zend.c: - Remove support for __string_value() in print $obj + +2000-08-31 Zeev Suraski + + * zend.c: Safer shutdown process + +2000-08-29 Andi Gutmans + + * zend.h: - Update Zend version. + +2000-08-26 Andi Gutmans + + * zend_builtin_functions.c: - Don't define this function in non-debug mode + +2000-08-24 Andi Gutmans + + * zend_execute.c: + - Revert patch from 9/7/2000 which seems to have broken unset(). + - I hope what made me do this patch doesn't appear again. + +2000-08-22 Andi Gutmans + + * zend_execute_API.c: + - Fix bug report by Andrei when using a method as a sort user function + - parameter in usort() like functions + +2000-08-20 Zeev Suraski + + * zend_config.w32.h: Fix Win32 build + +2000-08-20 sascha + + * zend_config.w32.h: + _isnan seems to be supported on Win32, add an appropiate macro. + + * acconfig.h: If available, use fpclassify for substituting zend_finite. + + * acconfig.h: + Including math.h before using macros defined there will work better :) + + * acconfig.h: Add zend_isinf and zend_isnan. + +2000-08-19 Andrei Zmievski + + * zend-scanner.l: One more fix to C compile. + +2000-08-19 Zeev Suraski + + * zend-scanner.l: Fix C build + + * zend-scanner.l: Fix eval() leakage in ZTS mode + + * zend_compile.c + zend_globals.h: Eliminate run-time leak with eval()'s + + * zend_alloc.c: Fix build with no memory_limit + + * zend_alloc.c: Fix memory_limit + +2000-08-19 Andi Gutmans + + * zend_execute.c: - Beautify + +2000-08-17 Stanislav Malyshev + + * zend_API.h: Fix EMPTY_STRING macros + +2000-08-15 Zeev Suraski + + * zend_extensions.h + zend-scanner.l + zend.c + zend_compile.c + zend_compile.h + zend_execute.c: + Fix warning issue (compile errors inside require()'d files were incorrectly supressed) + +2000-08-14 Zeev Suraski + + * zend_execute.c: - Fix leak and some logic + +2000-08-14 Andi Gutmans + + * zend_compile.c + zend_execute.c: + - This patch should hopefully fix situations where a constructor uses + - the $this pointer as a reference. + +2000-08-14 Stanislav Malyshev + + * zend_execute.c: Fix crash + +2000-08-14 Andi Gutmans + + * zend_compile.c + zend_execute.h: + - Unused results should be marked with EXT_TYPE_UNUSED and not IS_UNUSED + +2000-08-13 Stanislav Malyshev + + * zend-scanner.l + zend.c + zend_compile.c + zend_compile.h + zend_execute.c: Fix zend_fiel_handle handling. Should fix URL include + and various opened_path inconsistencies. + +2000-08-13 Andi Gutmans + + * zend-parser.y: + - Revert foreach() change which only allowed variables and array(...) + +2000-08-11 Andi Gutmans + + * zend-parser.y: - Only support variables and array(...) in foreach loops + +2000-08-10 Andi Gutmans + + * zend-parser.y + zend_compile.c + zend_compile.h + zend_execute.c: + Fix problem with nested foreach()'s (Andi, Zend Engine) + + * zend_compile.c: + Fix switch which only has a default rule (Andi, Zend Engine) + Change require_once() to use the same file list as include_once(). + Patch includes making require() & include() to behave the same when it + comes to scoping. require() is now an include() which isn't allowed to fail. + require() caused too many memory reallocations which ended up being quite + slow for sites that required lots of files. (Andi & Zeev, Zend Engine) + - Fix switch() which only has default rule (bug #5879, + +2000-08-09 Zeev Suraski + + * zend_modules.h: that too + + * zend_extensions.h: Update API number + + * zend-parser.y + zend-scanner.l + zend.c + zend_builtin_functions.c + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_globals.h + zend_opcode.c: + The patch we promised - redesigned the compilation/execution API: + Advantages: + - Smaller memory footprint for the op arrays + - Slightly faster compilation times (due to saved erealloc() calls and faster zend_op + initialization) + - include_once() & require_once() share the same file list + - Consistency between include() and require() - this mostly means that return() + works inside require()'d files just as it does in include() files (it used to + be meaningless in require()'d files, most of the time (see below)) + - Made require() consistent with itself. Before, if the argument was not a constant + string, require() took the include() behavior (with return()). + - Removed lots of duplicate code. + Bottom line - require() and include() are very similar now; require() is simply an include() + which isn't allowed to fail. Due to the erealloc() calls for large op arrays, require() + didn't end up being any faster than include() in the Zend engine. + +2000-08-05 Andi Gutmans + + * zend_execute.c: + - Use some more SEPARATE_ZVAL macros instead of replicated code. + +2000-08-05 Stanislav Malyshev + + * zend_execute.c: Fix memory leak + +2000-08-04 Andi Gutmans + + * zend.h + zend_execute.c: + - Beautify code. Try and use more macros for splitting instead of + - replicating the code everywhere. + +2000-08-02 Andi Gutmans + + * zend_execute.c: - Remove commented code + +2000-07-29 Zeev Suraski + + * zend-scanner.l + zend_execute.c: Fix filename issues + +2000-07-28 Stanislav Malyshev + + * zend_builtin_functions.c + zend_constants.c + zend_constants.h: + Make define return false and issue E_NOTICE when trying to redefine constant + +2000-07-27 Andi Gutmans + + * zend-scanner.l + zend_execute.c: Always store full filename as compiled file name + +2000-07-26 Zeev Suraski + + * zend_compile.c: + Fix a possible issue with runtime inheritence under fairly rare circumstance + and optimize a tiny bit + +2000-07-26 Stanislav Malyshev + + * zend_builtin_functions.c + zend_operators.c + zend_operators.h: Add strncasecmp function + +2000-07-18 Zeev Suraski + + * zend_builtin_functions.c: Forgot to link this function... + + * zend_hash.c: This is probably the oldest bug in PHP :) + Luckily it's unlikely we're ever actually bitten by this bug. + +2000-07-16 Andi Gutmans + + * zend_compile.c: - Beautify Zeev's patch a bit. + +2000-07-16 Zeev Suraski + + * zend_compile.c: Implement parent::foo() + +2000-07-15 Zeev Suraski + + * zend-parser.y + zend_compile.c: Add more extended_info calls + +2000-07-14 Zeev Suraski + + * zend_builtin_functions.c + zend_list.c + zend_list.h: Improve register_resource_ex() infrastructure + +2000-07-12 Thies C. Arntzen + + * zend.c: fix ZTS startup without filename (thanx purify!) + + * zend.c: unset active_symbol_table on zend-shutdown. + +2000-07-11 Zeev Suraski + + * zend_list.c: Another persistent hash - disable apply protection + + * zend.c + zend_hash.c + zend_hash.h: + Disable the hash_apply() protection on hashes that persist across requests - it's unsafe + because we may be aborted at any point + +2000-07-11 Stanislav Malyshev + + * zend_execute.c: + Fix a bug in passing second parameter of RECV_INIT with is_ref set + +2000-07-11 Andi Gutmans + + * zend_compile.h: - Oops. Too early in the morning + + * zend_compile.h: - Include iostream.h in C++. + +2000-07-09 Andi Gutmans + + * zend_execute.c: - Fix memory leak. + + * zend_execute.c: - Need to seperate if the hash isn't a reference + +2000-07-08 Andi Gutmans + + * zend.h: - Add zend_ulong + +2000-07-07 Stanislav Malyshev + + * zend_execute.c: Remove C++ commennts. + +2000-07-06 Andi Gutmans + + * zend-scanner.l: + - Remove code which has never been used (neither in PHP 3) + + * zend_compile.c: + - Make is_method_call() static and remove a couple of old lines + + * zend_execute.c + zend_extensions.h: - Yet another fix... + + * zend_execute.c: - One more... + + * zend_compile.c: - One more fix for the latest patch + + * zend_compile.c: - One dumb bug in my latest patch + + * zend-parser.y + zend_compile.c + zend_execute.c: + - Complex fix for solving a problem with objects & method calls. + - Previous version is tagged PRE_METHOD_CALL_SEPERATE_FIX_PATCH. + - I need to check this fix on a server so if it doesn't work I will revert + - it. + + * zend-scanner.l: + - Fix problem with newlines not being recognized under certain conditions + +2000-07-03 Andi Gutmans + + * zend_compile.c: - Fix bug #4120 + +2000-07-03 Stanislav Malyshev + + * zend_execute_API.c: Unblock SIGPROF signal when starting timer. + On Linux, this signal is blocked by default after first signal is run + +2000-07-03 sascha + + * FlexLexer.h + zend-scanner.h + zend_alloc.h + zend_compile.h + zend_constants.h + zend_dynamic_array.h + zend_execute.h + zend_globals.h + zend_hash.h + zend_highlight.h + zend_list.h + zend_operators.h + zend_static_allocator.h + zend_variables.h: + Replace macros which begin with an underscore through an appropiately + named macro. + +2000-07-02 sascha + + * zend.h + zend_API.h + zend_builtin_functions.h + zend_config.w32.h + zend_dynamic_array.h + zend_errors.h + zend_execute_locks.h + zend_extensions.h + zend_fast_cache.h + zend_globals_macros.h + zend_indent.h + zend_llist.h + zend_modules.h + zend_ptr_stack.h + zend_stack.h: Change header protection macros to conform to standard. + + Draft 3 of IEEE 1003.1 200x, "2.2 The Compilation Environment" + + All identifiers that begin with an underscore and either an uppercase + letter or another underscore are always reserved for any use by the + implementation. + +2000-07-02 Andi Gutmans + + * zend-parser.y: - Take #2 with tab size 4 + + * zend-parser.y: + - Beautify parser a bit. It still could do with some more at some point + + * zend_execute.h + zend_execute_API.c: - Forgot ZEND_API + +2000-06-30 Zeev Suraski + + * zend_config.w32.h: + Add a messagebox style that's safe to use from an ISAPI filter + + * zend_builtin_functions.c + zend_execute_API.c + zend_globals.h: error_reporting fix + +2000-06-29 Zeev Suraski + + * zend.c + zend.h: Add $context argument to error handler + +2000-06-28 Zeev Suraski + + * zend.c: Improve error handling code + + * zend-scanner.l: Be HTML friendly + +2000-06-28 Andi Gutmans + + * zend.h: version update + +2000-06-26 Zeev Suraski + + * zend.h + zend_constants.c + zend_extensions.h: + Make it possible to detect whether we're thread safe or not from PHP scripts and the php.ini + file + +2000-06-26 Andi Gutmans + + * zend_extensions.c: - Add another "\n" at the end of error messages. + +2000-06-26 Zeev Suraski + + * zend_execute_API.c: + Make max_execution_time work properly when set to 0 under Win32 (disable) + +2000-06-25 Andi Gutmans + + * zend.c: - I wrote a long msg but the commit didn't go through. + - So here is the short version: + - a) Start moving to binary opens in Windows + - b) Give checkuid_mode() a small face lift including the fopen-wrappers.c + - The mode to this function should at least be a #define but that is for + - another day. Anyway this whole stuff should be given more face lifts in + - the future. + +2000-06-24 Zeev Suraski + + * zend_alloc.c: Nuke a warning + +2000-06-23 Andi Gutmans + + * zend_static_allocator.c + zend_static_allocator.h: - Not returning a value anymore + + * zend_static_allocator.h: - Don't need SUCCESS/FAILURE anymore + + * zend_static_allocator.c + zend_static_allocator.h: - Add license + + * zend_static_allocator.c + zend_static_allocator.h: + - Commit static allocator structure which we might use in an upcoming Zend + - change + +2000-06-22 Andi Gutmans + + * zend-scanner.l: - Fix asp_tags. + + * zend_extensions.c: - Oops I miss-wrote that field + + * zend_extensions.c + zend_extensions.h: + - Change API version and make the error messages more meaningful. + + * zend_alloc.c + zend_alloc.h: - Change cache size and only initialize part of it. + +2000-06-22 Stanislav Malyshev + + * zend_alloc.c: + Cached-freed memory blocks should not be in "occupied" list + + * zend_alloc.c + zend_globals.h: Make cache counters to be unsigned int + Start collecting statistics after cache pre-fill + +2000-06-18 sascha + + * Zend.m4 + acinclude.m4 + zend.c: fp_except check for FreeBSD 1.0-2.2.5 + + * Zend.m4 + acconfig.h + zend_config.w32.h + zend_operators.h: Welcome zend_finite(n). + + This chooses the best combination of what is available: + + finite, isfinite, isinf, isnan + +2000-06-18 Stanislav Malyshev + + * zend.h + zend.c: Make error callback be publicly accessible + +2000-06-18 Andi Gutmans + + * zend.c: - Better FreeBSD fix. Does fp_except_t exist on 3.4? + + * zend.c: + - I don't know how this happened. I tested the bloody thing and I remember + - copy&pasting from code which used ~. + +2000-06-17 Zeev Suraski + + * zend_builtin_functions.c + zend_execute_API.c + zend_globals.h + zend_ptr_stack.c + zend_ptr_stack.h: - Add restore_error_handler() + error_handler's are now stored in a stack + + * zend-scanner.l + zend.c + zend_API.h + zend_execute_API.c: + Allow the symbol_table to be passed to call_user_function_ex() + + * zend-scanner.h + zend-scanner.l: Fix filenames and line numbers in ZTS mode + + * zend_hash.c + zend_hash.h: + Avoid crashing with recursive applies - limit apply nest level to 3 (I'm not aware of a place + in which applying recursively on the same hash makes sense with more than one nest level, but + 3 should be enough) + +2000-06-16 Zeev Suraski + + * zend.c + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_globals.h: + Ok, this time here's some real Win32 system programming :) + Redesigned the timeout system using a single timeout thread and a single window, + and used a much quicker check. + +2000-06-16 Andi Gutmans + + * zend_execute_API.c: Fix UNIX build + +2000-06-16 Zeev Suraski + + * zend_execute.c: Macro it up the right way + + * zend_execute.c: Macro this up, so it can be moved to other places + + * zend.c + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_globals.h: - Move timeout code to Zend + - Implement timeouts in Win32 + +2000-06-15 Zeev Suraski + + * Zend.dsp + zend.c: + Fix non thread-safe mode - asp_tags/short_tags etc weren't getting initialized properly + +2000-06-15 Andi Gutmans + + * zend_list.c: *** empty log message *** + + * zend-parser.y: - Support multiple arguments to unset() + +2000-06-15 Thies C. Arntzen + + * zend_list.h: ups. + + * zend_list.h: + changed return type of ZEND_VERIFY_RESOURCE from FALSE to NULL + +2000-06-14 sascha + + * zend_operators.h + zend_operators.c: + Move some stuff to zend_operators.h which is required by the + moved inline functions. + +2000-06-14 Andi Gutmans + + * zend_alloc.c + zend_alloc.h: - More correct way of doing bit mask + +2000-06-14 sascha + + * Zend.m4: Only replaced C0X and C0x, but not c0x.. + + * Zend.m4 + zend_execute.h + zend_gcc_inline.c + zend_operators.h: + Rename C0x-inline to C9x-inline, and frame preprocessor directives in + zend_gcc_inline.c with #ifndef C9X_INLINE_SEMANTICS..#endif. + +2000-06-14 Andi Gutmans + + * ZendTS.dsp: - Make Win32 build + +2000-06-13 Andi Gutmans + + * zend_compile.c + zend_compile.h: Add to the API + +2000-06-13 sascha + + * Makefile.am + Zend.m4 + zend_API.h + zend_compile.h + zend_execute.h + zend_execute_API.c + zend_gcc_inline.c + zend_globals.h + zend_operators.c + zend_operators.h: Add optional support for C0x inline semantics. + + These are enabled by specifying `--enable-c0x-inline' on the command + line. We might add an autoconf check for this particular feature + later. + + * zend_llist.h: + Add llist_apply_func_t and make prototypes use the typedefs. + +2000-06-12 Zeev Suraski + + * zend_builtin_functions.c: Make Egon happy :) + + * zend_builtin_functions.c: + Return the previous error handler from set_error_handler() + + * zend_API.c + zend_API.h + zend_builtin_functions.c: + Avoid using E_CORE_* errorlevels in any place which is not in the global startup sequence + + * zend-parser.y + zend-scanner.l + zend.h + zend_compile.c: Get rid of + +2000-06-11 Andi Gutmans + + * zend.c: - Solve floating point precision crash on FreeBSD. + + * zend.c: + - Fixes crash problem on FreeBSD when losing precision. Need to still see + - how to detect we're on FreeBSD + +2000-06-11 Zeev Suraski + + * zend_API.c: Fix zend_get_parameters() + +2000-06-10 Andi Gutmans + + * zend_operators.c: + - Fixed problem when using uninitialized values in comparisons with strings. + - They behave as empty strings again just like in PHP 3. + +2000-06-10 Zeev Suraski + + * zend_execute.c: + I can't think of a reason of why it should just be a notice... Make it a warning, like it was in PHP 3. + + * zend_API.c + zend_builtin_functions.c: Fix bug #4768 + +2000-06-09 Andrei Zmievski + + * zend_builtin_functions.c + zend_hash.h: Made an alias for hash apply with arguments. + +2000-06-09 Andi Gutmans + + * zend_alloc.c: - Forgot to remove the FIXME + + * zend_alloc.c: - Make the memory limit accurate + + * zend_alloc.c: - Fix cache initialization + + * zend_alloc.c + zend_alloc.h: + - Allocate and cache in 8 byte blocks. Most allocators anyway use 8 byte + - blocks. This should help fragmentation and cache hits. + - The old tree is tagged as PRE_EIGHT_BYTE_ALLOC_PATCH + +2000-06-09 Zeev Suraski + + * zend_execute.c: Fix bug #4933 + + * zend_builtin_functions.c: Fixed bug #4819 + +2000-06-09 Andi Gutmans + + * zend_modules.h: + - Time to change it. We changed register_internal_class() -> + - zend_register_internal_class() + + * zend_API.c + zend_API.h + zend_compile.c + zend_compile.h: - Andrei, this is for you! + - Add zend_register_internal_class_ex() which allows you to specify a + - parent to inherit from. You can either specify the parent directly or via + - its name. + + * zend-parser.y + zend-scanner.l: - Typo + + * zend_execute.c: - Remove old obsolete code. + + * zend_execute.c: - Make unset consistent with the way array offsets work + +2000-06-09 Stanislav Malyshev + + * zend_execute.c: Handle unset with empty key + +2000-06-09 Andi Gutmans + + * zend_API.c + zend_API.h: + - Change register_internal_class to zend_register_internal_class for + - consistency. + - Andrei: I'm still thinking about the _ex you want me to implement + +2000-06-08 sascha + + * Zend.m4 + acconfig.h: Clean up acconfig.h + + * zend_execute_API.c + zend_operators.c: Add a couple of casts + +2000-06-06 Zeev Suraski + + * zend.c + zend.h + zend_compile.c: + Enable asp_tags/short_tags/allow_call_time_pass_by_reference to work on a per-directory + basis as well + +2000-06-06 sascha + + * zend_API.c: + Add newline at the end of the file (breaks at least SCO and Tru64 C compiler). + +2000-06-05 Andi Gutmans + + * zend-scanner.l: - Revert internazionalization fix. + + * zend_builtin_functions.c: - Complete change to create_function() + +2000-06-04 Zeev Suraski + + * zend_compile.c + zend_execute_API.c: + Change shutdown order to sort out a crash when assigning a resource id to a static. + + * zend_hash.c + zend_hash.h + zend_operators.c: - Support unordered hash comparisons + - Make == perform an unordered comparison with arrays/objects, and === perform an ordered comparison + + * zend_builtin_functions.c: Rename lambda() + +2000-06-03 Zeev Suraski + + * zend_hash.c + zend_hash.h + zend_operators.c + zend_operators.h: + Support comparisons of arrays (with arrays) and objects (with objects) + +2000-06-03 Andi Gutmans + + * zend.c: - Change #if to #ifdef. + +2000-06-03 Zeev Suraski + + * ZendTS.dsp + zend.c: Don't take chances with new include files + + * zend_execute_API.c: + Improve call_user_function() to support array($obj, $method) + + * zend-parser.y + zend.h + zend_operators.c: - Export normalize_bool + - This global/static syntax fix brought us back to the 4 documented conflicts + + * zend_builtin_functions.c: Fix a lambda() bug + + * zend_builtin_functions.c: Add missing { + + * zend_globals.h + zend_hash.c + ZendTS.dsp + zend-scanner.l + zend.c + zend.h + zend_builtin_functions.c + zend_compile.c + zend_compile.h: - Fix Win32 compilation (Use winsock2.h from now on) + - Add lambda() support + +2000-06-02 Andi Gutmans + + * zend-parser.y: - global/static require a trailing ';' + +2000-06-02 Zeev Suraski + + * zend_builtin_functions.c: Update error code + + * zend.c + zend.h + zend_config.w32.h: Nuke the old error code, use the new one + +2000-05-31 Zeev Suraski + + * zend.h: IS_BC isn't really being used, but still... + + * zend-parser.y + zend.h + zend_API.c + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_extensions.h + zend_variables.c: + Fix a bug in static initializers/default values/class member variables that contained + array values + +2000-05-29 Zeev Suraski + + * zend_API.c + zend_API.h: Allow disabling of functions for security reasons + +2000-05-28 Andi Gutmans + + * zend_operators.c: + - Use pointer arithmetic to speed up the function a bit + + * Zend.m4: - This should have been done for 4.0.0. + - Default build is without debug now. Use --enable-debug if you want a + - debug build which includes leak/memory overwrite etc. detection + +2000-05-26 Andi Gutmans + + * zend-scanner.l + zend_operators.c + zend_operators.h: + - Fixed scanning decimal numbers in internationalized environments. They should + - always be in standard US format e.g. 23.3 + +2000-05-25 Zeev Suraski + + * zend_compile.c: + Fix a crash bug in certain situations of class redeclarations + +2000-05-24 Thies C. Arntzen + + * zend_hash.h: rename hastable -> _hashtable to avoid clashes + + * zend-scanner.l: + add rdbuf() to our own istdiostream implementation, allowing C++ compile + using SUN and SGI native compilers. (by Jayakumar Muthukumarasamy ) + +2000-05-22 Zeev Suraski + + * zend.c: - Remove ugly Ltd. + +2000-05-21 Sam Ruby + + * zend.c: Windows build failure + +2000-05-21 Andi Gutmans + + * zend.c + zend_compile.h: + - Fix Apache php source highlighting mode. It was crashing due to the + - module shutdown functions being called when the startup functions weren't + - being called. + + * zend.h + zend_extensions.h: - Get ready for release + +2000-05-19 Zeev Suraski + + * zend_highlight.c + zend_highlight.h: Open these up for the API + +2000-05-18 Zeev Suraski + + * zend_alloc.c: Do it in thread unsafe mode for now. + +2000-05-18 sascha + + * zend_alloc.c: Kill warnings + +2000-05-18 Andi Gutmans + + * zend_alloc.c: - Do this someplace else. + + * zend_execute.c + zend_operators.c: + - Fix include() when used on resources (shouldn't work but shouldn't crash + either). + +2000-05-18 Andrei Zmievski + + * zend_operators.c: + Update for sort functions - user can now specify sort type. + +2000-05-17 Andi Gutmans + + * zend_operators.h + zend_operators.c: + - Add support for string_compare_function() and number_compare_function(). + UNTESTED! + +2000-05-17 Zeev Suraski + + * zend_operators.c: Normalize results of compare_function() + + * zend-scanner.l: + Fix crash if %> is encountered in HTML while ASP-tags are disabled + +2000-05-17 Andi Gutmans + + * zend_opcode.c: Fix order + +2000-05-17 sascha + + * zend_operators.h: Add missing prototype + +2000-05-16 Zeev Suraski + + * zend_alloc.c: + - Small optimization. Filling up the Cache helps performance. + +2000-05-12 sascha + + * Makefile.am: Fix parallel makes on BSD + +2000-05-11 Zeev Suraski + + * zend-parser.y + zend-scanner.l + zend.h + zend_operators.c: + Get rid of chval - it's really not necessary and seems to be confusing people + + * zend_compile.c: Refined fix + + * zend_compile.c: + Fix a memory corruption bug with by-ref function arguments + +2000-05-10 Andi Gutmans + + * zend_extensions.h: - Bump up Zend extension version number + +2000-05-10 Thies C. Arntzen + + * zend_compile.c: make waning readable + +2000-05-08 Andi Gutmans + + * zend-parser.y + zend_compile.c + zend_opcode.c: Thoroughly initialize IS_UNUSED for proper cleanup + + * zend.h: - Change Zend Engine version number + + * zend_alloc.c: - Return real size allocated + +2000-05-08 Zeev Suraski + + * zend_operators.c: Make zend_binary_strcasecmp compile again + +2000-05-08 sascha + + * zend_operators.c: Make strcasecmp() act correctly WRT SUS II. + + Patch by: hholzgra@php.net + PR: #3556 + +2000-05-06 Andi Gutmans + + * zend_execute.h + zend_execute_API.c: - Make zend_eval_string() return SUCCESS/FAILURE + + * zend_execute.c: + - Make $obj->test = 5; work again (assigning to uninitialized objects) + +2000-05-05 sascha + + * Zend.m4: + Linking directly against libc might result in unexpected behaviour. + We check for dlopen in libdl first, and check then whether dlopen exists. + +2000-05-03 Andi Gutmans + + * zend_compile.h: - Change fetch_type to be zend_uint + + * zend_compile.c + zend_execute.c: - Change the place CAST uses for the op_type + +2000-05-02 Zeev Suraski + + * zend_hash.c + zend_hash.h: + Change zend_hash_get_current_key_ex() to also return the string length + +2000-05-02 sascha + + * zend_API.c: + Fix segfault occuring when a temporary module was unloaded and if this + module did not have a request shutdown function. + + * zend_API.h: + Add ZEND_GET_MODULE(name). This is a short-cut for the common + get_module function. + +2000-05-01 sascha + + * zend.c: + Source file does not end with a newline. Some old compilers don't like that. + +2000-05-01 Andrei Zmievski + + * zend_builtin_functions.c: Added a way to get all declared classes. + +2000-05-01 sascha + + * Makefile.am: Fix dependency + +2000-04-29 Zeev Suraski + + * zend_extensions.h + zend_opcode.c: + Pass the op_array to the ctor/dtor, instead of just the resource + + * zend_extensions.c: crash fix + + * zend_extensions.c + zend_extensions.h + zend_llist.c + zend_llist.h: - Add zend_llist_apply_with_arguments() + - Add a message handler to the extensions + + * zend_compile.h + zend_opcode.c: + Fix possible bug with extension dtors being called without the ctors being called first + + * zend-scanner.l + zend_compile.c + zend_compile.h + zend_opcode.c: Beautify + +2000-04-28 Zeev Suraski + + * zend.c + zend_extensions.c + zend_extensions.h: Fix a bug in the resource dispencer + + * zend_operators.c + zend_operators.h: Make convert_to_string() allocations traceable + +2000-04-27 Zeev Suraski + + * zend_extensions.h + zend-scanner.l + zend.c + zend_compile.c + zend_compile.h + zend_execute.c: *** empty log message *** + + * zend-scanner.l + zend_compile.c + zend_compile.h + zend_execute.c: Change to using the #define's + + * zend.c + zend.h: More error handling work (still completely disabled) + +2000-04-26 Zeev Suraski + + * zend_execute_API.c + zend_variables.c: Fix - forgot to split away if refcount>1 + +2000-04-25 Zeev Suraski + + * zend_extensions.c: Fix bug + + * zend.h: We'll need two... + + * zend_hash.h: Add useful macros + +2000-04-25 Andi Gutmans + + * zend_llist.c: - Fix persistence of llist + +2000-04-24 Zeev Suraski + + * zend_compile.c: - Forgot to keep the ':' in the class_name + + * zend_API.c: Correct fix + +2000-04-24 Thies C. Arntzen + + * zend_API.c: MODULE_TEMPORARY should get a call to RSHUTDOWN as well! + + * zend.c: + fixed shutdown crash if MSHUTDOWN tries to php_error() something. + +2000-04-21 Thies C. Arntzen + + * zend_variables.c + zend_variables.h: export zval_add-ref and zvale_del_ref + +2000-04-20 Zeev Suraski + + * zend_operators.h: - Change macro names from Z to Z_ + + * zend_operators.h: Add some macros for nicer zval handling + +2000-04-20 Andrei Zmievski + + * zend_operators.c: Do proper ieeefp.h check. + +2000-04-20 Thies C. Arntzen + + * zend_operators.c: + compile before commit! compile before commit! compile before commit! + + * zend_operators.c: + revert andrei's path (i can't compile anymore on linux) + we're always using #ifndef HAVE_BLA instead of if !HAVE_BLA and if we need ieeefp.h for some weird platform (which one is that?) we need an autoconf check for it. + +2000-04-19 Andrei Zmievski + + * zend_operators.c: Include proper files for finite. + +2000-04-19 Zeev Suraski + + * zend.c + zend.h + zend_builtin_functions.c + zend_execute_API.c + zend_globals.h: + Initial support for trapping errors (not complete and disabled; will be enabled only + post-PHP 4.0.0) + + * zend_builtin_functions.c + zend_constants.c + zend_errors.h: + - Renamed get_used_files() to get_required_files() for consistency + - Documented some functions + - Added user-level warning messages + - Added user_error() + +2000-04-19 Andi Gutmans + + * zend_opcode.c + zend_compile.h: - Export pass_include() for Windows + +2000-04-18 Zeev Suraski + + * zend_operators.h: + Add convert_to_writable_*_ex() macros (unused at this time) + +2000-04-17 Andi Gutmans + + * zend_compile.c + zend_execute.c: - Fix order of JMPZNZ arguments + +2000-04-17 Thies C. Arntzen + + * zend_operators.c: ups, finite is already a macro on Win32 + + * Zend.m4 + zend_operators.c: HPUX11 only has isfinite() + +2000-04-15 Andi Gutmans + + * zend-scanner.l: - Fix leak in require_once() + +2000-04-15 Thies C. Arntzen + + * zend_extensions.c: fixes compile on platforms without dl() support. + +2000-04-15 Zeev Suraski + + * zend.c: Fix ZTS + +2000-04-15 Andi Gutmans + + * zend-scanner.l: + "use" is not yet supported; instead use include_once() or require_once() + for the time being (Andi, Zend library) + +2000-04-15 Zeev Suraski + + * zend.c + zend_API.c + zend_compile.c + zend_execute_API.c + zend_list.c + zend_list.h: - Clean up resource lists namespace + - Prepare extended resource list destructor APIs (currently unused) + +2000-04-13 Zeev Suraski + + * zend_operators.c: + Fix a memory leak when using assign-op bitwise operators on strings + +2000-04-12 Zeev Suraski + + * zend_execute.c: *** empty log message *** + +2000-04-11 Andi Gutmans + + * zend_execute_API.c: - Fix memory leak + +2000-04-11 Zeev Suraski + + * zend_execute.c: Fix warnings + + * zend_execute.c: Fix fd leak in include_once() + +2000-04-10 Andi Gutmans + + * zend-scanner.l + zend_execute.c: - + +2000-04-10 Zeev Suraski + + * zend.h + zend_compile.h + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_globals.h + zend_operators.c: Fix object overloading support + +2000-04-10 Andi Gutmans + + * zend_execute.c: - Add warnings + + * zend_compile.c: - Two more places needed changing + +2000-04-10 Zeev Suraski + + * zend-parser.y + zend_compile.c + zend_compile.h + zend_execute.h: Clean up last/size definitions + +2000-04-09 Zeev Suraski + + * zend_compile.h: *** empty log message *** + +2000-04-07 Zeev Suraski + + * zend_execute.c: Thoroughly fix include_once() + + * zend_execute.c: Fix include_once() + +2000-04-06 Andi Gutmans + + * zend-parser.y: *** empty log message *** + + * zend_execute.c + zend_execute.h: Initial preparation for OO overloading patch + +2000-04-05 Andi Gutmans + + * zend_extensions.h: - Bump up version number + + * zend_compile.c + zend_execute.c: - FIx JMPZNZ + +2000-04-03 Zeev Suraski + + * zend_list.c: + Fix the problem with dl()'d modules not freeing their resources properly + +2000-04-01 Zeev Suraski + + * zend_API.h + zend_config.w32.h: *** empty log message *** + + * acconfig.h: Have a standard way of exporting symbols + + * zend_modules.h: Use int + + * zend_API.h: Generalize some common thread-safety stuff + + * zend_modules.h: Have a standard entry for the globals id + +2000-03-31 Zeev Suraski + + * zend_compile.c: + The previous fix ended up being broken, this one should do it + +2000-03-31 Andi Gutmans + + * zend_compile.c: - Fix bug + +2000-03-30 Zeev Suraski + + * zend_extensions.c: Fix zend_register_extension() + +2000-03-30 Andi Gutmans + + * zend_extensions.h: - Bump up API number after Lars' change + +2000-03-30 sascha + + * Makefile.am: Give another hint to BSD makes + + * Makefile.am: + Specifically mention $(srcdir), so that OpenBSD's make gets it + +2000-03-29 Zeev Suraski + + * zend_stack.c + zend_stack.h + zend_compile.c: + - Make the argument order for the stack applies more consistent with other Zend + data structures + - Fix a possible corruption problem due to switch() C-level optimization + +2000-03-29 Torben Wilson + + * zend-parser.y + zend-scanner.l + zend_compile.h + zend_execute.c + zend_opcode.c + zend_operators.c + zend_operators.h: + + Added !== (is not identical) operator. + +2000-03-29 Zeev Suraski + + * zend_extensions.c + zend_extensions.h: *** empty log message *** + +2000-03-29 Andi Gutmans + + * zend_API.h: + - Make sure zend_API.h has Zend'ish versions of the ZEND macros so that + Zend'ish modules don't need to mix PHP & Zend notation. + +2000-03-28 Zeev Suraski + + * zend_builtin_functions.c: + The checks for func_num_args() and friends were broken - fixed + +2000-03-27 Sam Ruby + + * Zend.dsp: Remove debug libraries from debug build + +2000-03-26 Andi Gutmans + + * zend_execute.c + zend_execute_API.c + zend_API.c + zend_builtin_functions.c: - Stop zend_func_args() and co. from crashing + + * zend.h: + - Didn't see Thies' commit message although I can't really see how it would + make a difference + + * zend.h + zend_opcode.c: - Include Andrea's fix for alloca.h + +2000-03-26 Thies C. Arntzen + + * zend.h + zend_execute.c: + needs to be included before we define macros calling alloca() + atleast using SGI's cc - should not harm other platforms (i hope) + + * zend_opcode.c: fix cast + +2000-03-25 Andi Gutmans + + * zend_alloc.c + zend_alloc.h: *** empty log message *** + +2000-03-25 Zeev Suraski + + * zend-parser.y + zend.c + zend.h + zend_API.c + zend_API.h + zend_builtin_functions.c + zend_compile.c + zend_execute.c + zend_execute_API.c + zend_opcode.c + zend_variables.c: - Some header dependencies cleanup + - Generalize zval_print() and zval_print_r() + +2000-03-25 Sam Ruby + + * zend.h: RTLD_NOW => RTLD_LAZY|RTLD_GLOBAL + +2000-03-25 Zeev Suraski + + * Zend.dsp: Update dsp's + +2000-03-24 Zeev Suraski + + * zend_execute.c: + - Fixed a crash when sending a non-variable expression to a runtime-bound function + that expected a reference. + +2000-03-24 Andi Gutmans + + * zend_API.c + zend_builtin_functions.c + zend_compile.c + zend_execute.c + zend_execute_API.c + zend_hash.c + zend_hash.h: - Nuke hash_*_ptr functions + +2000-03-23 Andrei Zmievski + + * zend_builtin_functions.c: Use WRONG_PARAM_COUNT. + +2000-03-23 Zeev Suraski + + * zend_builtin_functions.c: - Make it compile + +2000-03-23 Andrei Zmievski + + * zend_builtin_functions.c: Added get_class_methods(). + +2000-03-22 Andi Gutmans + + * zend.h: - Change Zend version as API has changed + +2000-03-22 Zeev Suraski + + * zend_operators.c: - Wrong fix + + * zend_operators.c: - Only free when result != op1 + +2000-03-21 Andi Gutmans + + * zend.c + zend.h: + - Change zend_startup to accept a flag for starting builtin functions + + * zend.h + zend_API.h: - Move #defines + +2000-03-19 Thies C. Arntzen + + * zend_compile.h: kill warning + +2000-03-18 Andi Gutmans + + * zend.h: - Fix compile problem on FreeBSD + + * zend.h: + - No reason for refcount to be signed and move to zend_* typedefs + +2000-03-18 Thies C. Arntzen + + * zend.c: renamed _string_value_() to __string_value(). + +2000-03-18 Zeev Suraski + + * zend_builtin_functions.c: + The third argument to define() wasn't working right, fixed + + * zend_execute.c: + false wouldn't automaticaly switch to an array type, which resulted in an + incompatibility with PHP 3. Fixed. + +2000-03-16 Thies C. Arntzen + + * zend.c: renamed "to_string" -> "_string_value_" + +2000-03-15 Zeev Suraski + + * zend-scanner.l + zend.h + zend_execute.c: - Fix newly introduced problem reported by Sam Ruby + +2000-03-15 Andrei Zmievski + + * zend_hash.c + zend_hash.h: + Make zend_hash_move_forward()/zenv_hash_move_backwards() a little smarter. + +2000-03-15 Zeev Suraski + + * zend_opcode.c: - Fix warning (I thought I fixed this one before) + +2000-03-14 Andrei Zmievski + + * zend_llist.c + zend_llist.h: Implemented external list traversing. + +2000-03-14 Andi Gutmans + + * zend-parser.y: + - Allow array(1,2,3,) i.e. with trailing comma. You can only have one + trailing comma. + +2000-03-13 Zeev Suraski + + * zend_compile.c: - + + * zend_compile.c: - Spare a byte :) + +2000-03-13 Andi Gutmans + + * zend_compile.h + zend_modules.h: - Another zend_uchar + + * zend_compile.c: *** empty log message *** + + * zend.h + zend_compile.h: + - define zend_uint and zend_uchar and use them in a few places + +2000-03-13 Andrei Zmievski + + * zend_hash.c + zend_hash.h: + Introduced a way to traverse hashes through external pointers. + +2000-03-13 Andi Gutmans + + * zend_compile.h: - Change type from int -> char + +2000-03-13 Zeev Suraski + + * zend-scanner.l: - Fix filename/lineno initialization for do_return + +2000-03-12 Zeev Suraski + + * zend_builtin_functions.c + zend_modules.h: - + +2000-03-11 Andi Gutmans + + * zend_execute.c: + - Remove inline from functions which are pretty large and besides eating up + memory in compile time probably doesn't boost performance. + +2000-03-10 Andi Gutmans + + * zend_operators.c: + - Seems to be a problem here with the return value not being set + + * zend-parser.y + zend_builtin_functions.c + zend_execute.c + zend_execute_API.c + zend_globals.h: - Quick way of supporting include_once(). + Good enough for RC1. + + * zend-parser.y + zend-scanner.l + zend_compile.c + zend_compile.h: - Support require_once(). + + * zend_compile.h + zend_execute.c: - Cleanup old IMPORT stuff + + * zend-parser.y + zend-scanner.l: + - Nuke import, add include_once and include_require scanner/parser rules. + Hope to nuke use too :) + + * zend_modules.h: - That broke the Win32 build + + * zend_modules.h: - Fix a bug and define an API_NO for the ZEND_MODULE_API + + * zend_modules.h: - zend_config.h is enough + + * zend_modules.h: - Save ZEND_DEBUG, ZTS, ZEND_API information + +2000-03-09 Andi Gutmans + + * zend_highlight.c: - Fix bug in syntax highlighter + +2000-03-06 stig + + * zend_modules.h: added GINIT_FUNC_ARGS and GINIT_FUNC_ARGS_PASSTHRU + +2000-03-06 Zeev Suraski + + * zend_extensions.h: - Bump up Zend's API version + +2000-03-06 stig + + * zend_modules.h: Added ZEND_MODULE_INFO_FUNC_ARGS_PASSTHRU. + +2000-03-06 Andi Gutmans + + * zend-scanner.l: - Fix memory leak + + * zend.c: - Missed one + +2000-03-06 Sam Ruby + + * zend.c + zend.h: Unresolved externs + +2000-03-06 Zeev Suraski + + * zend_extensions.c + zend_extensions.h + zend_fast_cache.h + zend_globals.h + zend_globals_macros.h + zend_hash.c + zend_hash.h + zend_highlight.c + zend_highlight.h + zend_indent.c + zend_indent.h + zend_list.c + zend_list.h + zend_llist.c + zend_llist.h + zend_opcode.c + zend_operators.c + zend_operators.h + zend_ptr_stack.c + zend_ptr_stack.h + zend_sprintf.c + zend_stack.c + zend_stack.h + zend_variables.c + zend_variables.h + LICENSE + zend-parser.y + zend-scanner.h + zend-scanner.l + zend.c + zend.h + zend_API.c + zend_API.h + zend_alloc.c + zend_alloc.h + zend_builtin_functions.c + zend_builtin_functions.h + zend_compile.c + zend_compile.h + zend_config.w32.h + zend_constants.c + zend_constants.h + zend_dynamic_array.c + zend_dynamic_array.h + zend_errors.h + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_modules.h: It's official now... + +2000-03-05 Zeev Suraski + + * ZendTS.dsp + zend.c + zend.h: Wrap some commonly unused callbacks + +2000-03-04 Zeev Suraski + + * zend-scanner.l: + The default return value from include() and eval() changed from 1 to 0 + unintentionally after the old return-reference patches - fixed + +2000-03-02 Sam Ruby + + * zend_config.w32.h: Fix Win32 build breakage + +2000-03-01 Andi Gutmans + + * zend.c: - Upgrade to year 2000 + + * ZEND_CHANGES + zend_compile.c + zend_execute.c: - Fix typos + +2000-03-01 Thies C. Arntzen + + * zend_operators.c: now + +2000-02-27 Egon Schmid + + * zend_builtin_functions.c: Fixed some protos. + +2000-02-26 Sam Ruby + + * zend_builtin_functions.c: compilation error - Win32 + +2000-02-26 Andrei Zmievski + + * zend_builtin_functions.c: + Added get_class_vars() and get_object_vars() functions. + + * zend_execute.c: Fix typo. + +2000-02-26 Zeev Suraski + + * zend_operators.c: Fix comparisons of "inf"=="inf" and "-inf"=="-inf" + +2000-02-25 Zeev Suraski + + * zend_fast_cache.h + zend_variables.c: Use the fast cache here too + +2000-02-19 Zeev Suraski + + * zend-parser.y + zend-scanner.h + zend-scanner.l + zend.c + zend.h + zend_API.c + zend_API.h + zend_alloc.c + zend_alloc.h + zend_builtin_functions.c + zend_builtin_functions.h + zend_compile.c + zend_compile.h + zend_config.w32.h + zend_constants.c + zend_constants.h + zend_dynamic_array.c + zend_dynamic_array.h + zend_errors.h + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_extensions.c + zend_extensions.h + zend_fast_cache.h + zend_globals.h + zend_globals_macros.h + zend_hash.c + zend_hash.h + zend_highlight.c + zend_highlight.h + zend_indent.c + zend_indent.h + zend_list.c + zend_list.h + zend_llist.c + zend_llist.h + zend_modules.h + zend_opcode.c + zend_operators.c + zend_operators.h + zend_ptr_stack.c + zend_ptr_stack.h + zend_sprintf.c + zend_stack.c + zend_stack.h + zend_variables.c + zend_variables.h: (c) patch + + * zend_API.c + zend_API.h + zend_fast_cache.h + zend_hash.c: + - Fix a nasty bug in the hash, introduced in the recent migration to macros + - Make array_init() and friends trackable + + * zend_API.c + zend_API.h + zend_execute.c + zend_operators.c + zend_operators.h: Generalize macros + +2000-02-18 Zeev Suraski + + * zend-scanner.l: *** empty log message *** + +2000-02-18 sascha + + * zend_llist.c + zend_llist.h: + Get rid of second declaration of compare_func_t. Either put in a common + header file or prefix it with i.e. zend_llist_ + +2000-02-18 Andi Gutmans + + * zend_llist.c + zend_llist.h: + - Quick and dirty hack for supporting sorts. Improve later on when I wake up. + + * ZendTS.dsp + zend_dynamic_array.c: - Didn't compile on Win32 + + * zend_dynamic_array.c: + - Tiny change (I know I don't have to cast malloc() to void * but I like + casting my malloc()'s) + + * Makefile.am + zend_dynamic_array.c + zend_dynamic_array.h: + - Preliminary support for dynamic arrays. I need it on order to try out a + new hash implementation. It isn't used anywhere. + +2000-02-17 Andi Gutmans + + * zend.c + zend.h: - Add ZEND_API + +2000-02-16 Andi Gutmans + + * zend_execute.c: -Fix bug 3504 concerning leaks with unset() + + * zend_execute.c + zend.h + zend_compile.h: - Hopefully fix Thies' bug report. + +2000-02-16 Zeev Suraski + + * zend_builtin_functions.c: + ZEND_TEST_EXCEPTIONS should be defined/undefined before it's checked + +2000-02-16 Andi Gutmans + + * zend_execute.c: - Fix bug #3309 + +2000-02-14 Andi Gutmans + + * zend-parser.y + zend_compile.c + zend_compile.h + zend_execute.c: + - Put in the infrastructure for the unset() fix. Right now it has the old + behavior but I just need time tomorrow to add the correct behavior. + + * zend_builtin_functions.c: - Fix bug in func_get_arg() + - Get rid of compiler warnings for unused function crash() + +2000-02-13 Zeev Suraski + + * zend_constants.c: Fix a memory leak + +2000-02-13 Andi Gutmans + + * zend_hash.c: - Save a function call one very hash_add + + * zend_hash.c + zend_hash.h: + - Make startup a bit faster by changing some hash_update()'s and hash_add()'s + to hash_update_ptr()/hash_add_ptr() + + * zend_hash.c: + - Fix a couple of potential bugs where we were using emalloc/efree instead + of pemalloc/pefree. + - Fix a bug were we potentially would be freeing the key by mistake + +2000-02-13 Zeev Suraski + + * zend_builtin_functions.c: *** empty log message *** + + * zend_operators.c: Make (array) false == array() and not array(false) + +2000-02-11 Andrei Zmievski + + * zend_hash.c + zend_hash.h: Made a couple of typedefs for zend_hash_apply_*() calls. + +2000-02-11 Zeev Suraski + + * Zend.dsp + ZendTS.dsp + zend_config.w32.h: Update .dsp's + + * zend-scanner.l + zend.h + zend_API.h + zend_alloc.c + zend_config.w32.h + zend_constants.c + zend_execute.c + zend_extensions.c: Fine tune Andi's patch + +2000-02-10 Andi Gutmans + + * zend.h: - #define ZEND_WIN32 differently + + * zend-scanner.l + zend.h + zend_API.h + zend_alloc.c + zend_constants.c + zend_execute.c + zend_extensions.c: - Finally beautify those WIN32|WINNT checks + + * zend_execute.c: - Shouldn't be there + + * zend_execute.c: - Cleanup the code + +2000-02-09 Zeev Suraski + + * zend-parser.y + zend_execute.c: + Fix last known nasty bugs in Zend. It'll be cool if there are no new ones :) + +2000-02-09 Thies C. Arntzen + + * zend_execute.c: foreach() works now for objects as well. + +2000-02-08 Zeev Suraski + + * zend_operators.c: Fix declaration + + * zend_execute.c: Fix an elusive bug + +2000-02-08 Andrei Zmievski + + * zend_operators.c: Fix up the patch. + + * zend_builtin_functions.c + zend_operators.c + zend_operators.h: Patches from Walter for strncmp() stuff. + +2000-02-07 Zeev Suraski + + * zend_highlight.c: Remove old unnecessary check + + * zend-parser.y + zend-scanner.l + zend_compile.c + zend_highlight.c: + Syntax highlighting was erronously emitting more than one semicolon and/or garbage with heredocs + +2000-02-06 Andi Gutmans + + * zend_compile.c: + - Support the string offset syntax $a{2} with the regular array opcodes. + Will need to write new opcodes sometime but right now it's good enough + to announce the change to this string offset syntax for beta 4. + +2000-02-05 Andi Gutmans + + * zend-parser.y + zend_compile.c: + - This hopefully fixes the list($a, $a) = array(1,2) crash, i.e. when list + by mistake contains the same variable twice. + - BTW, there is no defined order of assignment. The value of $a after the + previous example is undefined, and should not be assumed to be either 1 + nor 2. + +2000-02-05 Zeev Suraski + + * zend_execute.c: More cleanup + + * zend.h + zend_builtin_functions.c + zend_execute.c + zend_execute_API.c: Pass the executor globals to internal functions + + * zend.c + zend.h + zend_API.c + zend_compile.c + zend_constants.c + zend_execute.c + zend_execute_API.c + zend_hash.c + zend_hash.h + zend_modules.h + zend_variables.c: - Stop passing list/plist to internal functions + - Add a typedef for the pCopyConstructor function pointer + - Minor hacks + + * zend-scanner.l: + That was the broken downcasting that prevented the interactive C++ mode from working properly under UNIX + +2000-02-04 Zeev Suraski + + * zend-scanner.l + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_globals.h + zend_opcode.c: + Maintain a state of whether we're compiling and/or executing + +2000-02-03 Andrei Zmievski + + * zend_API.c + zend_API.h: *** empty log message *** + +2000-02-02 Zeev Suraski + + * zend_API.c: - Fix built-in classes with more than 5 methods + + * zend_compile.c: + - Fix the annoying problem with list(), that surfaced up after our recent cleaning + patches + +2000-02-01 Andrei Zmievski + + * zend_API.c + zend_API.h: Added add_property_unset() and add_property_bool(). + +2000-02-01 Zeev Suraski + + * ZendTS.dsp + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_execute_locks.h: Improve dependencies + + * zend_execute.c: Sort out a gdb problem + + * zend_execute.c: Fix warning + +2000-02-01 Andi Gutmans + + * zend_compile.c + zend_execute_API.c + zend_globals.h: - Get rid of remains of garbage. + - This should fix Thies' UMR + +2000-02-01 Thies C. Arntzen + + * zend_execute_API.c: + moved destroying of garbage before resource-list gets destroyed - (see my previous mail) + zeev, andi - please comment! + + * zend.c: added missing break. + + * zend_hash.c + zend_hash.h: + took out zend_hash_pointer_update() & zend_hash_pointer_index_update_or_next_insert() - i really prefer link-errors instead of runtime-errors, don't you? + +2000-01-31 Andi Gutmans + + * zend_compile.h: - This has to always be done. + +2000-01-31 Zeev Suraski + + * zend-parser.y + zend_compile.h + zend_execute.c + zend_execute_API.c: - Optimized garbage mechanism + - Fixed another buglet in the parser + + * zend-parser.y + zend_alloc.c + zend_execute.c + zend_fast_cache.h: - Fix foreach() + - Fix indirect reference with object properties + +2000-01-30 Andi Gutmans + + * zend_execute.c: + - Fix the bug Thies found where I forgot to change a break; to NEXT_OPCODE(); + - If you find anymore let me know + + * zend_alloc.h: - Run it on align_test + +2000-01-29 Zeev Suraski + + * zend_compile.c: Fix ``'s + + * zend-parser.y + zend-scanner.l + zend_compile.h: Fix require() + +2000-01-29 Andi Gutmans + + * zend-parser.y: - Get rid of another rule which isn't needed. + + * zend-parser.y + zend_compile.c + zend_compile.h: + - Add parser support for string offsets. This added three shift/reduce + conflicts but they all seem to be fine. + - Cleaned up the parsing rules a bit and made them much more compact and + elegant. + - Please CVS update and see that I didn't break anything. + + * zend_alloc.h: + - This will save some memory w/ GCC compilers on some platforms + + * zend_execute.c: - Yet another tiny optimization. + +2000-01-28 Andi Gutmans + + * zend-parser.y + zend_compile.c + zend_execute.c: - Make loop a bit faster. + + * zend.h: - Make sure its use is understood. + + * zend.h + zend_execute.c: - Double the speed of some key switch() tests for Win32. + + * zend_execute.c: + - This makes the switch() statement twice as quick. Moving to enum + might make this a general speed up for other platforms too + +2000-01-26 Andi Gutmans + + * zend_execute_API.c: - Keep objects as references. + + * zend_execute_API.c + zend_opcode.c: + - Allow is_ref to become 0 in case the refcount is back to 1. + +2000-01-24 Andi Gutmans + + * zend_compile.c + zend_execute.c: + - Make foreach() now copy the array but use the original array. It can + still be optimized A LOT but it's only a performance issue and not + a feature issue. + +2000-01-24 Zeev Suraski + + * zend-parser.y + zend-scanner.l + zend.c + zend.h + zend_builtin_functions.c + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_globals.h + zend_operators.c + zend_operators.h: - Implement declare() with declarables framework + - Implement ticks - Germany&Norway - 5 points! + + * zend_execute.c + zend_execute_API.c: Fixes + +2000-01-22 Zeev Suraski + + * zend_execute_API.c: Fix an elusive bug + +2000-01-20 Zeev Suraski + + * zend_hash.c: Add some order... + + * zend_hash.c: Indentation fixes + +2000-01-19 Andi Gutmans + + * zend_hash.c: - Optimize zend_hash_del a tiny bit. + + * zend_hash.c + zend_hash.h: - Hopefully fix the hash problem. + + * zend_hash.c: - Hrm I'm not concentrating + + * zend_hash.c: + - Actually the destructor should run after the data is already detached + from the hash but before the bucket is freed. + + * zend_hash.c: + - Rollback hash_apply and friends. They assume now that hash_del is reentrant + as it first applies the destructor and only later nukes the bucket + + * zend_hash.c: + - Run destructor before the hash structure is modified, thus, making + hash_del, reentrant (BLOCK_INTERRUPTIONS needs to be made a counter now). + + * zend_hash.c: - Undo a bug we introduced. (Another one out there). + +2000-01-19 Thies C. Arntzen + + * zend_API.h: + RETURN_NULL -> RETURN_NULL() // we don't want macros without an argumnet + +2000-01-18 Zeev Suraski + + * zend_execute.c: Leak fix + +2000-01-18 Thies C. Arntzen + + * zend_API.h: RETURN_NULL & RETVAL_NULL don't need (). + +2000-01-17 Thies C. Arntzen + + * zend_hash.c: use defines + +2000-01-17 Zeev Suraski + + * zend_hash.c + zend_hash.h + zend_variables.c: Get rid of the IsPointer functionality in the hash. + + * zend_hash.c: - Fixes a newly introduced bug in the hash + + * zend_compile.c + zend_compile.h + zend_constants.c + zend_constants.h + zend_execute_API.c + zend_hash.c + zend_hash.h + zend_list.c + zend_list.h + zend_modules.h + zend_opcode.c + zend_variables.c + zend_variables.h: + Destructors no longer return ints, the low level problem it was intended to solve is long gone now... + +2000-01-16 Zeev Suraski + + * zend.c + zend_execute_API.c + zend_hash.c + zend_hash.h + zend_list.c + zend_list.h: + - Make zend_hash_apply() (and friends) reentrant and much, much quicker + - Introduce zend_hash_graceful_destroy(), which allows the destructor functions to + use zend_hash_apply() and/or zend_hash_graceful_destroy() + - Switch to zend_hash_graceful_destroy() in the resource list shutdowns + + * zend.c + zend_compile.c + zend_compile.h: + Allow module startup to be separate from the compiler/executor startup + +2000-01-16 Thies C. Arntzen + + * zend_hash.c: make the ht->inconsistent stuff less ugly:) + +2000-01-15 Zeev Suraski + + * zend_execute_API.c + zend_list.c: Fix a bug in call_user_function_ex() + + * zend-parser.y: + Added support for $foo->{$bar}["foobar"] notation (was supported in PHP 3) + +2000-01-15 Thies C. Arntzen + + * zend_hash.c + zend_hash.h: + if ZEND_DEBUG mode is on we'll now see warnings when a HashTable is accessed + while it's inconsistent. + + Zeev, Andi - you welcome to revert this patch if you don't like it - i find it + useful! accesssing inconsistent hashtables is one of the hardest things to track! + +2000-01-14 Andrei Zmievski + + * zend_highlight.c: + Since we're highlighting code, put and around the code. + +2000-01-13 Zeev Suraski + + * zend.h + zend_config.w32.h: Make Win32 compile again + +2000-01-12 sascha + + * acconfig.h + zend.h: + Move dl stuff from acconfig.h into zend.h. That allows us finer control + when it comes to suppressing dlfcn.h. + +2000-01-09 Zeev Suraski + + * zend_execute.c: Functionality & crash fixes + +2000-01-04 Andi Gutmans + + * zend.h + zend_operators.c: + - Rename IS_BC to FLAG_IS_BC. We will probably nuke it. + +2000-01-04 Thies C. Arntzen + + * zend_API.h: added ZVAL_*() macros. + +2000-01-04 Andi Gutmans + + * zend.h + zend_execute.c: + - Separate the overloaded objects' types from Zend's data types. + There is no reason for them to be the same, and IS_METHOD just cluttered + there data types. + + * zend.h + zend_API.c + zend_API.h + zend_builtin_functions.c + zend_constants.c + zend_execute.c + zend_execute_API.c + zend_operators.c + zend_variables.c + zend-parser.y + zend.c: - Change IS_UNSET -> IS_NULL + +2000-01-03 Zeev Suraski + + * zend_execute.c: Fix a bug when using [] on a string + +2000-01-03 Joey Smith + + * zend_operators.c: number.h comes from ext/bcmath, not functions/ + +2000-01-03 Zeev Suraski + + * zend_execute.c: Fix + +2000-01-03 Andi Gutmans + + * zend_operators.c: - Fix compare_function() for IS_UNSET + +2000-01-02 Zeev Suraski + + * zend_execute.c: Fix + +2000-01-02 Thies C. Arntzen + + * zend_API.h: renamed RET???_UNSET -> RET???_NULL + +2000-01-01 sascha + + * Zend.m4 + acconfig.h + acinclude.m4: Some cleanup + +2000-01-01 Andi Gutmans + + * zend_operators.c: + - IS_NULL should be 0 when converted to a long although I don't think it + really should be documented. + +2000-01-01 Zeev Suraski + + * zend_operators.c: Fix buglet + +1999-12-31 Zeev Suraski + + * Zend.dsp + ZendTS.dsp: .dsp updates + + * Zend.dsp + ZendTS.dsp + zend_config.w32.h: - Add Release_inline builds + + * zend-parser.y + zend-scanner.l + zend.c + zend.h + zend_API.c + zend_API.h + zend_builtin_functions.c + zend_compile.c + zend_constants.c + zend_execute.c + zend_execute_API.c + zend_operators.c + zend_operators.h + zend_variables.c: - Nuke undefined_variable_string + - Introduce IS_UNSET + +1999-12-31 Andi Gutmans + + * ZendTS.dsp + zend-parser.y + zend_compile.c + zend_compile.h: + - Fix bug #3073. continue in do..while() loops should work now + +1999-12-30 Zeev Suraski + + * zend.c + zend_alloc.c + zend_fast_cache.h + zend_globals.h + zend_globals_macros.h: + This should enable people to use ALLOC_ZVAL() in code outside the php4.dll + +1999-12-30 sascha + + * Zend.m4: + Solaris' sed does not like this expression. Since -O0 is the default, + we can also omit it. + +1999-12-29 Zeev Suraski + + * zend_variables.c: + - Change var_reset() to set bool(0) instead of string("") + + Authors should go over their code and change it to use var_reset() instead of manually + setting it to string(""), in case they're interested in the false value. + + * zend_alloc.c: time_t is an int under Linux... this should always work. + +1999-12-28 sascha + + * zend_alloc.c: Fix warnings + +1999-12-28 Thies C. Arntzen + + * zend_API.h + zend_constants.c: new constant: SQL_NULL + new macros: RETURN_SQLNULL,RETVAL_SQLNULL,IS_SQLNULL + +1999-12-27 Zeev Suraski + + * zend_fast_cache.h: Fix + +1999-12-27 Andi Gutmans + + * zend_API.c: - Get rid of warning + +1999-12-27 Zeev Suraski + + * Zend.dsp + ZendTS.dsp + zend_API.c + zend_API.h + zend_alloc.c + zend_compile.c + zend_execute.c + zend_execute_API.c + zend_fast_cache.h + zend_globals.h + zend_opcode.c + zend_operators.c + zend_variables.c + zend_zval_alloc.h: - Generalize the fast cache mechanism + - Add the HashTable struct to the fast cache mechanism + +1999-12-27 Andi Gutmans + + * zend_API.c: + - Make zend_internal_function allocate a full zend_function structure so + that we don't get memory overruns and Thies doesn't get angry :) + +1999-12-27 Zeev Suraski + + * zend_alloc.c: *** empty log message *** + + * zend_globals.h + zend_zval_alloc.h + zend_alloc.c: Add cache statistics support + +1999-12-27 Thies C. Arntzen + + * zend.c: fix UMR in ZTS mode + +1999-12-26 Zeev Suraski + + * Zend.dsp + ZendTS.dsp + zend_alloc.c + zend_globals.h + zend_zval_alloc.h: + - Enable the new zval cache on debug too. No real reason not to, and it keeps + the code cleaner. + - ZTS compile fixes + + * zend_alloc.c: Fix buglet + + * zend_zval_alloc.h: Add missing file + + * zend.h + zend_API.h + zend_alloc.c + zend_compile.c + zend_execute.c + zend_globals.h + zend_operators.c: + Introduce a zval-specific cache - 5-15% speed improvement + +1999-12-26 sascha + + * Makefile.am + acinclude.m4: Makefile.am: Add dummy target for dependencies + acinclude.m4: Cache result of broken sprintf check + +1999-12-26 Zeev Suraski + + * zend.h + zend_API.c + zend_API.h + zend_builtin_functions.c + zend_compile.c + zend_execute.c + zend_execute_API.c + zend_operators.c: Change ALLOC_ZVAL() semantics + + * zend_alloc.c + zend_alloc.h + zend_globals.h: namespace protection + +1999-12-25 Zeev Suraski + + * zend_ptr_stack.c + zend_ptr_stack.h: inline functions cannot accept varargs + +1999-12-25 Andi Gutmans + + * zend-parser.y: - Prepare Zend for the new $a{2} string offset syntax. + +1999-12-24 Zeev Suraski + + * zend_config.w32.h: + Use __forceinline under Win32 (inlining under Win32 gives roughly 30% performance + increase) + + * zend-scanner.l: Shut gcc up + + * zend_compile.c: Optimize + +1999-12-24 Andi Gutmans + + * zend.h + zend_API.c + zend_API.h + zend_builtin_functions.c + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_operators.c + zend_variables.c: + - Create two new macro's. ALLOC_ZVAL() and FREE_ZVAL(z) and make Zend use + them. + +1999-12-24 Zeev Suraski + + * zend_compile.c: - Use function_add_ref() here too + +1999-12-23 Zeev Suraski + + * zend_compile.c + zend_opcode.c: + Fix a class inheritence leak, when using static varibles in a parent class member function + + * zend_compile.c: This one slipped away + +1999-12-23 sascha + + * Zend.m4: Rename option to match description string + +1999-12-23 Zeev Suraski + + * zend-parser.y + zend-scanner.l + zend_compile.c + zend_compile.h + zend_execute.c: + - require() of a dynamic expression now has the standard require() semantics + - Fixed a memory leak in require() of a dynamic expression + +1999-12-23 sascha + + * Makefile.am + Zend.m4: + Compile zend_execute.c with special CFLAGS. For GCC, INLINE_CFLAGS + contains -O0 to disable optimizations. This can be disabled by using + the appropiate parameter. + +1999-12-22 sascha + + * zend_builtin_functions.c: Kill compiler warning + + * Zend.m4: Don't set DEBUG_CFLAGS to -g, if -g is already in CFLAGS + +1999-12-22 Zeev Suraski + + * zend.c + zend.h: export + + * zend_extensions.h: Those void's don't belong in there + + * zend_API.h + zend_builtin_functions.c: - Fix function_exists() + + * zend_execute.c: + - Fix a very old legacy memory leak in break(n) statements + + * zend_execute.c: Fix for the array() initialization bug Stas found + +1999-12-22 Andi Gutmans + + * zend_compile.c: - Remove unused variable. + +1999-12-21 Zeev Suraski + + * zend-scanner.l + zend.h + zend_compile.c + zend_execute.c: + Fix the highlighting problem. STR_REALLOC() should be used instead of plain erealloc() + whenever you're dealing with strings that might be coming back from the engine - there seem + to be a few other places like this in PHP. + +1999-12-21 Andrei Zmievski + + * zend.c + zend_API.c + zend_compile.c + zend_execute.c + zend_execute_API.c + zend_operators.c + zend_variables.c + zend_variables.h: We're using ZVAL's now. + +1999-12-21 Zeev Suraski + + * zend_execute.c: - Fix Sascha's leak. Good report! + + * zend_alloc.c: No need to block for interruptions so early + +1999-12-21 sascha + + * Zend.m4: + Explicitly check for C++ preprocessor, otherwise autoconf forces it onto + us at the wrong place (subsequent autoconf checks failed). + +1999-12-20 Zeev Suraski + + * zend_compile.c: - Fix @expr + + * zend.h + zend_compile.c + zend_execute.c: + - Fix the crash Thies was experiencing (returning a function call could cause a crash) + - Fix the leak Thies was experiencing (@fcall() leaked) + +1999-12-19 Zeev Suraski + + * Zend.dsp: Some updates + + * Zend.dsp + ZendTS.dsp: Make these work again + + * FlexLexer.h + Makefile.am + Zend.dsp + Zend.m4 + ZendTS.dsp + configure.in + flex.skl + libzend.dsp + libzend.m4 + libzendts.dsp: libzend -> Zend + + * zend.h + zend_API.h + zend_compile.c + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_globals.h: + - Made things work again (Thies, everybody - please check the latest CVS and see if you're + still getting any problems) + - Changed the interface of call_user_function_ex() to support returning of references + +1999-12-19 Andi Gutmans + + * zend.c + zend.h + zend_compile.c + zend_execute.c + zend_execute_API.c + zend_globals.h: - More fixes related to the return references patch + - eval_string() and call_user_function_ex() still don't work. + - The libzend tree is untested and might not be stabl yet. + +1999-12-19 sascha + + * Makefile.am: Add zend_sprintf.c + + * acconfig.h + zend_sprintf.c: configure sets ZEND_BROKEN_SPRINTF + + * acinclude.m4: Variables are not interpolated unless we use _UNQUOTED + +1999-12-18 Zeev Suraski + + * zend.h + zend_API.h: - The tree compiles again + +1999-12-18 sascha + + * libzend.m4: Let autoconf check for the proper inline keyword + + * Makefile.am + libzend.m4: + automake created illegal target names due to the ZEND_SCANNER definition. + We now substitute @ZEND_SCANNER@ directly + +1999-12-18 Zeev Suraski + + * zend.h + zend_API.c + zend_API.h + zend_builtin_functions.c: + - Introduce ZEND_NUM_ARGS(), to replace ARG_COUNT(ht) + - Rename getParameters() and friends for consistency and namespace cleanliness + +1999-12-17 Zeev Suraski + + * zend_constants.c: - Made PHP_VERSION and PHP_OS work again + - More php3_ cleanup + - Restored the PHP_VERSION and PHP_OS constants + +1999-12-17 sascha + + * libzend.m4: Define inline to inline explicitly + + * Makefile.am + acinclude.m4 + configure.in + libzend.m4: Move config code into separate file + +1999-12-17 Andi Gutmans + + * zend-parser.y + zend_compile.c + zend_compile.h: + - By mistake commited this to the branch. It fixes a bug we introduced with + the return reference patch. + +1999-12-15 Andrei Zmievski + + * zend_builtin_functions.c: Doh! I'm an idiot. + + * zend_builtin_functions.c + zend_compile.c: - s/inheritence/inheritance/g + - Added is_subclass_of() function + +1999-12-15 Zeev Suraski + + * zend-parser.y + zend.h + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_globals.h + zend_opcode.c: - Implement return by reference: + - In function declaration instead of the return statement + - In the assignment phase + - Implement ability to turn off support for call-time pass by reference + +1999-12-15 Andrei Zmievski + + * zend_builtin_functions.c: val->len + + * zend_builtin_functions.c: Faster, must go faster. + +1999-12-15 Andi Gutmans + + * zend_execute.c + zend_opcode.c + zend-parser.y + zend_compile.c + zend_compile.h: + - Preliminary return ref patch. It breaks libzend so don't use this branch + right now. + +1999-12-14 Andrei Zmievski + + * zend_builtin_functions.c: - Added class_exists() + - Moved function_exists() here from from the basic_functions.c + - Modified method_exists() to convert method name to lowercase + when checking + +1999-12-13 Andi Gutmans + + * zend_execute.c: + - Fix problem when return_value's is_ref/refcount is overwritten by the + internal function. + +1999-12-11 Andi Gutmans + + * zend_execute.c: - Another small fix. + + * zend_execute.c: - Support returning references + + * zend-parser.y + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_globals.h: + - This is supposed to be commited to the RETURN_REF_PATCH branch which is + the beginning of work on allowing returning of references from functions. + +1999-12-07 Andi Gutmans + + * zend-scanner.l: + - opened_path should not be freed here as the zend_file_dtor() takes care + of it. This doesn't fix the bug report for the crash of highlight_file() + though. + +1999-12-07 Zeev Suraski + + * zend-parser.y: Support ZTS definition in zend_config.h + +1999-12-06 Zeev Suraski + + * zend-scanner.l + zend_compile.c + zend_compile.h + zend_highlight.c + zend_indent.c: Move the #include of zend-parser.h out of zend_compile.h + + * zend-parser.y + zend_globals_macros.h: More localization + + * zend-parser.y + zend_compile.h + zend_globals_macros.h: Localize a couple of macros + +1999-12-05 Zeev Suraski + + * zend-scanner.l: *** empty log message *** + +1999-12-05 sascha + + * .cvsignore + zend-parser.y + zend.c + zend_API.c + zend_compile.c + zend_execute_API.c: Fix some warnings + +1999-12-04 Andrei Zmievski + + * zend_API.c: *** empty log message *** + + * zend_API.c + zend_API.h + zend_hash.h: Added zend_set_hash_symbol() function. + +1999-12-04 Thies C. Arntzen + + * zend_API.h: + backed out last change after andi decided on a different approach. + +1999-12-04 Andi Gutmans + + * zend_API.h: + - Call ZEND_SET_SYMBOL_WITH_LENGTH() with refcount 1 from the standard + ZEND_SET_SYMBOL() + +1999-12-04 Zeev Suraski + + * zend-scanner.l + zend_builtin_functions.c + zend_compile.c: - Implement get_used_files() and get_imported_files() + + * zend-parser.y + zend-scanner.l + zend.c + zend.h + zend_compile.c + zend_compile.h: + - Break the zend->PHP dependency introduced by the .php extension for use(), + by providing an API + - Enable Stig's patch for use() extensions (it wasn't refered to by the parser) + - Fix a memory leak in that code + +1999-12-04 Thies C. Arntzen + + * zend_API.h: the new SET_VAR_* macros forgot to set the refcount! + +1999-12-04 Sam Ruby + + * zend-scanner.l: build error - windows + +1999-12-04 stig + + * zend-scanner.l + zend_compile.h: Fix typo, add prototype for use_filename(). + + * zend-scanner.l: "use" should use arg+".php" as parameter to require + +1999-12-04 Zeev Suraski + + * zend-scanner.l: This should fix the fd leak with include()/require() + +1999-12-03 Andrei Zmievski + + * zend_API.h: *** empty log message *** + + * zend_API.h: Added ZEND_SET_GLOBAL_VAR_WITH_LENGTH_EX() macro. + +1999-12-03 Thies C. Arntzen + + * zend-scanner.l: revert my last patch - WARNING: we leak fd's again. + add initialzation of opened_path highlight_file() + +1999-12-03 Andi Gutmans + + * zend_API.h: - Remove _EX and make it the old _LENGTH + +1999-12-02 Andi Gutmans + + * zend_API.h: - Add _EX macro for Andrei + +1999-12-02 Zeev Suraski + + * zend-scanner.h + zend_compile.h: Solve a couple of compile issues + +1999-12-02 Thies C. Arntzen + + * zend-scanner.l: + php_fopen_wrapper_for_zend() does *NOT* insert the opened files into any list - the caller needs to fclose() the file. (not sure if this is desired) + fixed "Uninitialized memory read" when including URLs + +1999-12-01 stig + + * zend-scanner.h + zend.c + zend.h + zend_alloc.h + zend_builtin_functions.h + zend_compile.h + zend_constants.h + zend_execute.c + zend_execute.h + zend_extensions.h + zend_globals_macros.h + zend_hash.h + zend_indent.h: Fix warnings surfacing in maintainer-mode. + +1999-12-01 Zeev Suraski + + * zend_API.h: + Make it possible to explicitly set refcount in ZEND_SET_SYMBOL_WITH_LENGTH(), part 2 + + * libzendts.dsp + zend_API.h: + Allow to set the reference count explicitly for ZEND_SET_SYMBOL_WITH_LENGTH() + +1999-12-01 Andi Gutmans + + * zend_execute.c: + - Forgot to check for BP_VAR_IS in the fix made for Thies' string offset + problem. + +1999-11-30 Andi Gutmans + + * zend_API.c: - Applied Thies' bug fix. Great work! + + * zend-parser.y + zend-scanner.l + zend.c + zend.h + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_globals.h: + - Add use support (behaves like require, but will not use the same file twice) + - Add import support (behaves like include, but requires parentheses; will not + use the same file twice; Currently, it is not yet properly implemented, and + only behaves like include) + + * zend_execute.c: + - Fix problem Thies reported. We by mistake separated variables which were + being fetched for read only. + +1999-11-27 Zeev Suraski + + * zend_alloc.c: Add ability to disable the memory cache + +1999-11-26 Zeev Suraski + + * zend-scanner.l: - Fix fd leak in ZTS mode + + * zend-scanner.l + zend_compile.c: UNIX/non ZTS compile fixes + + * zend-scanner.l + zend_compile.c + zend_compile.h: - Improve the file handle closing code + + * zend_llist.c + zend_llist.h: - Modify zend_llist_del() to receive a comparison function + + * zend_API.c: + This request_shutdown() is no longer needed (never was needed really) + + * zend-scanner.l: This should get the file to close properly + +1999-11-26 sascha + + * Makefile.am: Rebuild libzend.la, if the scanner was rebuilt + +1999-11-26 Zeev Suraski + + * zend_API.c + zend_modules.h: Remove request_started, increase thread safety + +1999-11-25 Zeev Suraski + + * zend_execute.c: That's a more thorough fix... + + * zend_execute.c: + Fix bug #2817 - assignments to string offsets could erronously modify unrelated strings + +1999-11-22 Zeev Suraski + + * zend_alloc.c: Fix compile problem with enable-memory-limit + + * zend-scanner.l: Fix inconsistencies with here-docs implementation + + * zend-scanner.l + zend_globals.h: Fix #2744 + +1999-11-21 Andi Gutmans + + * zend_execute.c: That slipped away + +1999-11-21 Zeev Suraski + + * zend.h + zend_API.c + zend_compile.c + zend_execute.h + zend_execute_API.c: - Optimize class instanciation + - Fix constant instanciation for array elements inside objects + +1999-11-19 Andi Gutmans + + * zend_execute.c: + - Moved var_uninit() for return_value to the beginning of DO_FCALL. + We forgot to do it for overloaded methods + + * zend.h + zend_execute.c: + - Functions whose return values aren't used have them freed in DO_FCALL + and don't need a special ZEND_FREE opcode following them anymore + +1999-11-17 Andi Gutmans + + * zend_compile.c + zend_execute.c: + - If a function's return value is unused then don't create a ZEND_FREE + opcode but free it after the function call in zend_execute. + + * zend_execute.c: - Forgot this + +1999-11-16 Andi Gutmans + + * zend_execute_API.c: - Weird that this compiled for me. + + * zend.h: - CHange used_return_value -> return_value_used + + * zend_compile.c: + - In any case create the free opcode. Need to allow the functions to + create a hint. + + * zend.h + zend_compile.c + zend_execute.c: + - Add support for used_return_value passed to internal functions. + +1999-11-14 Andi Gutmans + + * zend_compile.h: - Fix comment as to Joey's findings + +1999-11-13 Andi Gutmans + + * zend_execute.c: - Fix crash with string offset assignments. + +1999-11-04 Andrei Zmievski + + * zend_hash.c + zend_hash.h: Made zend_hash_rehash() callable from outside. + +1999-11-03 Andi Gutmans + + * zend_API.h + zend_compile.c + zend_compile.h + zend_execute.c: - Add support for BYREF_FORCE_REST + +1999-10-28 Andi Gutmans + + * zend_compile.c + zend_execute.c: - Fix for Thies' leak and Andrei's crash + +1999-10-25 Zeev Suraski + + * zend_compile.h: *** empty log message *** + +1999-10-23 Sam Ruby + + * libzend.dsp + libzendts.dsp: + Allow CYGWIN directory to be specified as via environment variable + +1999-10-22 Andi Gutmans + + * zend_execute.c: - Fix isset() with string offsets. + +1999-10-19 Thies C. Arntzen + + * zend_operators.c: fixed is_identicat_function() + +1999-10-19 Andi Gutmans + + * zend_compile.h: - Move IS_IDENTICAL next to IS_EQUAL + + * zend_operators.c: - Fix is_identical function + + * zend-parser.y + zend-scanner.l + zend_compile.h + zend_execute.c + zend_opcode.c + zend_operators.c + zend_operators.h: + - Preliminary submit of Thie's patch. Will fix the rest on Windows + as this was added on UNIX with patch. Changed IS_SAME -> IS_IDENTICAL + +1999-10-18 Andrei Zmievski + + * zend_API.h: Be safe, use (). + +1999-10-15 Andrei Zmievski + + * zend_operators.c + zend_operators.h: unstatic'fy is_numeric_string() + + * zend_hash.c + zend_hash.h + zend_compile.c: *** empty log message *** + +1999-10-15 Andi Gutmans + + * zend_operators.h: - Add convert_to_number_ex() + +1999-10-14 sascha + + * configure.in: + Add "--disable-inline" for low-memory machines (be it limited + RAM or virtual memory). It's also useful for Digital C where + the C++ compiler thinks "inline" is an invalid specifier. + + * Makefile.am: Use sources from $(srcdir) + +1999-10-13 sascha + + * Makefile.am: Do not use $< for anything but implicit rules. + +1999-10-13 Thies C. Arntzen + + * zend_list.c: + (zend_fetch_resource) added warinig if resource is of wrong type + +1999-10-13 sascha + + * acconfig.h: Disable ZEND_EXTENSIONS_SUPPORT, if RTLD_NOW is not defined. + + Note that this part could be made platform independent by using + libltdl (for Solaris, Linux, *BSD, HP-UX, Win16/32, BeOS). + +1999-10-12 Thies C. Arntzen + + * zend_list.c + zend_list.h: new improved resource-API + +1999-10-12 sascha + + * acconfig.h: + Use DL_LAZY for OpenBSD. This seems to be a compatibility flag which + should be used for the 2nd parameter to dlopen. + + http://www.openbsd.org/cgi-bin/cvsweb/src/share/man/man3/dlfcn.3?rev=1.8 + +1999-10-12 Andi Gutmans + + * zend_execute.c: + - object.ptr was made NULL in DO_FCALL but wasn't restored. Right now I + push it in DO_FCALL and at the end of do_fcall_common it always gets + popped. We might be able to optimize it out. + +1999-10-11 Andrei Zmievski + + * .cvsignore: *** empty log message *** + + * zend_hash.c + zend_hash.h: Modified zend_hash() to accept a pointer to sort function. + +1999-10-11 Andi Gutmans + + * zend_execute.c: + - No idea why this bug didn't exist before. But I'm too tired to think of it. + During a regular do_fcall we need to set object.ptr to NULL and, thus, + push it in the beginning and pop it in the end. + I hope this fix more or less cuts it. I just want to sleep :) + +1999-10-10 Andi Gutmans + + * zend_execute.c: + - Didn't lower refcount when doing an internal function call linked to a regular object. + +1999-10-10 Thies C. Arntzen + + * .cvsignore: added some more autoconf/libtool stuff to be ignored + +1999-10-10 Andi Gutmans + + * zend_execute.c: + - Clean up a bit. Separate before the locking so that we can use SEPARATE_ZVAL + macro. + +1999-10-10 sascha + + * build.mk: Add clean target which removes standard targets + + * build.mk: build.mk can be used to generate build tools. It is usually + faster than buildconf, since it rebuilds only components, if + it is necessary. To use it, run + + $ make -f build.mk + +1999-10-09 Andi Gutmans + + * zend_execute.c: - Shouldn't be needed + + * zend_execute.c: + - God damn this sucked. I hopefully fixed the problems with classes although + we might need to clean stuff up a bit. + +1999-10-09 sascha + + * acconfig.h: + Define RTLD_NOW to DL_NOW, if RTLD_NOW is not defined (for OpenBSD). + +1999-10-07 Thies C. Arntzen + + * zend_variables.c + zend_variables.h: added zval_del_ref() function + +1999-10-07 Andi Gutmans + + * zend_execute.c: - Reverse my patch + +1999-10-06 Andi Gutmans + + * zend_execute.c: + - Fixed memory leak with this pointer. It was somtimes initialized with refcount + of 2 instead of 1. + - Also fixed a place where object.ptr_ptr is set to pointing to a zval* instead + of zval**. I don't think this is ever used so we might be able to remove it + altogether. + +1999-10-06 Thies C. Arntzen + + * zend_execute.c: fix for using resources as array indices + +1999-10-05 sascha + + * configure.in + zend.h + zend_globals.h: More portability stuff + + * configure.in: OSF/1 V4.0 wants -lcxx + + * zend_compile.h: + This causes link problems with anything higher than -O0. + +1999-10-04 sascha + + * Makefile.am: Add necessary rule. + + * Makefile.am + acconfig.h + acinclude.m4 + buildconf + configure.in + zend_config.in: Use libtool to build. + +1999-10-04 Thies C. Arntzen + + * zend_builtin_functions.c: use getParametersEx for all builtin functions + + * zend_API.c + zend_API.h: added add_*_resource() and add_*_bool() functions + +1999-10-03 Andi Gutmans + + * zend_compile.h + zend_execute.c + zend_execute_API.c + zend_globals.h: - Hooray. This might actually work. (I hope) + +1999-10-03 sascha + + * configure.in: Make it executable. + +1999-10-02 Andi Gutmans + + * zend_execute.c: - Another locking fix. + + * zend_execute.c: - Fixed locking problem when fetching string offsets + +1999-10-02 Zeev Suraski + + * zend_execute.c: + Fix the leak reported on the PHP 3 list (isset() on string offsets) + +1999-10-01 Andi Gutmans + + * zend.h + zend_API.h + zend_builtin_functions.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_opcode.c + zend_operators.h: + - Move is_ref back to being an unsigned char and not a bit field. + + * zend.h + zend_API.h + zend_builtin_functions.c + zend_compile.h + zend_execute.c + zend_execute_API.c: - Remove locking support completely + + * zend-parser.y + zend_compile.c + zend_compile.h + zend_execute.c: + - For Andrei. Implement references in array() initializations + +1999-09-29 Zeev Suraski + + * zend_config.w32.h: *** empty log message *** + +1999-09-29 Andi Gutmans + + * zend_operators.c: Fix leak in += with arrays + + * zend-parser.y + zend_compile.c + zend_compile.h + zend_execute.c: + - Fix SEND_VAR problem after fetch'ing a variable and not knowing the fetch type + +1999-09-29 Thies C. Arntzen + + * zend_API.c + zend_API.h: added add_property_resource + +1999-09-28 Andi Gutmans + + * zend_compile.h + zend_execute.c + zend_execute_API.c: + - Stop using the locking mechanism and start using refcount. + Now we know when we need to free but we still need to support it + + * zend_execute.c + zend_execute.h + zend_execute_API.c: + - First part of the patch which makes reads use ptr and not ptr_ptr. + +1999-09-28 sascha + + * acconfig.h + configure.in + zend-scanner.l: Provide alternative istdiostream. + + This has been tested with Sun WorkShop 4.2 C++ which does not + contain class istdiostream. + +1999-09-26 sascha + + * Makefile.am + configure.in: Actually allow to set CXXFLAGS + + * configure.in + zend_config.in: + Build communication channel and add checks for C++ library + +1999-09-26 Andi Gutmans + + * zend_execute.c + zend_execute.h + zend_execute_API.c: - Changed Ts{}.var to Ts{}.var.ptr_ptr. + +1999-09-24 sascha + + * zend_operators.h: Add _ex API implementation for booleans. + +1999-09-24 Zeev Suraski + + * zend_list.c + zend_list.h: Exify the standardized resource stuff + +1999-09-23 Andi Gutmans + + * zend_operators.c: - Fix bug #2364. + I haven't checked all of the conversion macros yet but there's a change + there are more such bugs there. + +1999-09-23 sascha + + * configure.in: Fix vpath build w/ thread-safe enabled on Unix. + +1999-09-22 Thies C. Arntzen + + * zend_builtin_functions.c: + preliminary fix for each until andi & zeev clean up! + + * zend_list.c: + if you pass NULL as the resource_type_name to zend_fetch_resource*&friends the functions will not print any warnings if the resource is not found! + +1999-09-21 Andi Gutmans + + * zend_compile.c: + - Fix problem where function parameter fetches were created too late. + +1999-09-21 Zeev Suraski + + * zend_builtin_functions.c: Add get_func_args() + + * zend_builtin_functions.c: *** empty log message *** + +1999-09-20 Andi Gutmans + + * zend_builtin_functions.c: + - Move some more Zend internal functions from PHP + + * zend-parser.y: - Next part of locking fix. + $var = expr; and $var += expr; first create code for expr and later on + for the fetch_w of $var. + + * zend_builtin_functions.c: - Newline for Sun's compiler + + * zend_API.h + zend_builtin_functions.c: - Add some internal functions to Zend + + * zend_compile.c + zend_compile.h + zend_opcode.c: + - First step in fixing locking problem. Array fetches are now always done last. + Later on we will want to delay the write fetches even longer until after their + resulting expression is parsed. The way it is now, will make it very easy + to delay as long as we need. + + * zend_compile.c + zend_compile.h: + - Indirect references had all of the fetches by mistakenly backpatched. + Actually all of the fetches are supposed to be read, except for the last + one. + +1999-09-20 Zeev Suraski + + * libzend.dsp + libzendts.dsp + zend_builtin_functions.c: Added zend_num_args() and zend_get_arg() + + * Makefile.am + zend.c + zend_builtin_functions.c + zend_builtin_functions.h: + Add a file in which we can put Zend builtin functions + +1999-09-18 Andi Gutmans + + * zend_execute.c: + - Try to fix the leak Rasmus reported. It's pretty sucky code so I'm really + not sure this fix is OK.I can't remember all of what we did there. + +1999-09-18 Zeev Suraski + + * zend_list.c: Safer behavior + +1999-09-17 Thies C. Arntzen + + * zend_execute.c: make SUNs c89 happy + + * zend_execute_API.c: no // in the sources please + + * zend_globals_macros.h: added newline at end of file + +1999-09-17 Zeev Suraski + + * zend_execute.c: - Fix bug #2318 + +1999-09-16 Zeev Suraski + + * zend_operators.h: Introduce convert_to_*_ex() + +1999-09-16 sascha + + * configure.in: this helps compiling on non-ANSI C compliant platforms + +1999-09-13 stig + + * acconfig.h + configure.in: Make sure HAVE_LIBDL gets defined. + Disable more C++ tests when not configured for thread safety. + +1999-09-12 Zeev Suraski + + * zend.c: Make this class instanciatable + +1999-09-12 sascha + + * configure.in: check for c++ only, if thread safety is enabled + +1999-09-10 Zeev Suraski + + * zend_compile.c: Shut up a warning + +1999-09-09 Andi Gutmans + + * zend_compile.c + zend_globals.h + zend_stack.c + zend_stack.h: - Add foreach() freeing code. + - Fix switch() freeing code to only free current function's switch expressions. + - I have a feeling break expr; in a switch where expr > 1 leaks because it + won't free all of the expressions. Fix is probably not trivial. + + * zend_operators.c: + - Fix leak when decrementing strings which actually are longs. + +1999-09-08 Andi Gutmans + + * zend_execute.c: + - Fix for floating point array offsets. Same behaviour as in PHP 3.0. We + casted to (long). + + * Makefile.am + libzendts.dsp: - Add -b option to flex++ + +1999-09-07 stig + + * acconfig.h: define tests first, use after. + +1999-09-06 Andi Gutmans + + * zend_config.w32.h: - Fix win32 compile + + * zend_config.w32.h: - Make zend compile again in Win32. + +1999-09-06 stig + + * .cvsignore: ignore zend-scanner.cc + + * ZendCore.dep + libzend.dsp + libzendts.dsp: hand-patched some MSVC files + + * Makefile.am + acconfig.h + acinclude.m4 + config.unix.h + config.w32.h + configure.in + zend-scanner.l + zend.h + zend_API.c + zend_alloc.c + zend_compile.h + zend_config.w32.h + zend_execute.c + zend_hash.c + zend_list.c + zend_ptr_stack.c + zend_sprintf.c: * header file cleanup + * fixed --enable-thread-safety build for UNIX + + I don't have a Win32 environment available, could someone please try + compiling on Win32 to see if I got all the header file stuff right there? + +1999-09-05 Andi Gutmans + + * zend_globals_macros.h: - Oops + + * libzendts.dsp + zend.c + zend.h + zend_alloc.c + zend_alloc.h + zend_globals.h: - Shift around header files. + +1999-09-04 Zeev Suraski + + * zend_list.c: Fix a stupid bug (from stefan@roehri.ch) + +1999-09-03 Zeev Suraski + + * zend_list.h: Damn, forgot to commit that + + * zend_list.c + zend_list.h + zend_modules.h: Add new API for resources + +1999-09-03 sascha + + * zend_modules.h: Add global startup/shutdown functions + +1999-09-03 Zeev Suraski + + * zend_operators.c: + Revert the IS_RESOURCE patch. It had some unintended behavior. + + * zend_variables.c: Let $GLOBALS actually work... + + * zend_operators.c: + Release resources when converting to other types (fix Thies's reported problem) + +1999-09-02 Zeev Suraski + + * zend_compile.c: + Use \0NameFilenameLineno as key instead of numeric index for runtime defined functions + +1999-08-28 Zeev Suraski + + * zend_extensions.c + zend.h + zend_alloc.c + zend_extensions.h + zend_variables.c + zend_variables.h: *** empty log message *** + + * zend.h + zend_alloc.c + zend_alloc.h + zend_variables.c: Beef up debug macros + +1999-08-27 Zeev Suraski + + * zend_execute_API.c: Fix a crash bug in case of aborted execution + + * zend.h + zend_alloc.c + zend_alloc.h + zend_execute_API.c + zend_variables.c + zend_variables.h: Better debug macros + +1999-08-26 Andi Gutmans + + * zend_execute_API.c: - Damn. It wasn't a correct fix. This should do it. + When the zval ** are equal we don't want to assign_ref, in any other case + I can think of we do want to assign_ref. + + * zend_execute_API.c: - Fix leak when global is used in the global scope. + + * zend_compile.c: - Fix when redefining classes at run-time. + +1999-08-25 sascha + + * zend.h: make it compile with gcc again + +1999-08-25 Andi Gutmans + + * zend_hash.c + zend_hash.h: - Add hash_apply_with_arguments() + + * zend-scanner.l: - More elegant fix for Win32 include_path + + * zend-scanner.l: + - Temporary fix to allow Win32 MT safe version to use zend_fopen(). + +1999-08-23 Andi Gutmans + + * zend_execute.c: - Fixed a specific memory leak linked to locking. + +1999-08-22 sascha + + * zend.h + zend_globals.h: This changes makes it work on egcs 1.1.2/Alpha + + * configure.in + zend.h: remove checks + +1999-08-20 Zeev Suraski + + * zend_constants.c + zend_constants.h + zend.c: Fix for Thies's UMR + +1999-08-19 Andi Gutmans + + * zend-parser.y + zend_opcode.c: + - Make sure expr_list and echo_list are either empty or comma seperated + expressions + +1999-08-18 Thies C. Arntzen + + * zend-scanner.l: on unix ZTS gets defined in zend_config.h + +1999-08-17 Zeev Suraski + + * zend_execute_API.c: Fix #2012 + + * zend_execute.c: Fix #2070 + +1999-08-17 Andi Gutmans + + * zend.c + zend.h: - Add some ZENDAPI's + +1999-08-15 Andi Gutmans + + * zend_execute.c: - Oopsie + + * zend.h + zend_compile.h + zend_execute.c + zend_globals.h: - Optimize the execute stack a bit. + +1999-08-14 Zeev Suraski + + * zend_compile.c: Fix several class issues + + * zend_compile.c + zend_compile.h: + Generate better warnings for class/function redefinitions + +1999-08-10 Andi Gutmans + + * zend_compile.c + zend_constants.c: - Got rid of the C++ comments. + +1999-08-09 Andi Gutmans + + * zend_execute.c: - Thies's crash fix. + +1999-08-07 Zeev Suraski + + * zend_compile.h + zend_execute.c + zend_execute_API.c: Fix a few leaks + +1999-08-06 Zeev Suraski + + * zend_execute_API.c: Fix a bug in call_user_func_ex() + + * zend_API.h: Now that's an annoying bug. + + * zend_API.h + zend_execute_API.c: Introduce call_user_func_ex() + + * zend_execute.c: *** empty log message *** + +1999-08-03 Andi Gutmans + + * zend_compile.c + zend_compile.h + zend_execute.c + zend_opcode.c: + - Initialize extended value's and put the fetch_type in it's own variable + name. + +1999-08-02 Andi Gutmans + + * zend_compile.c + zend_compile.h: + Make set_compiled_filename() return a pointer to the allocated file name + +1999-07-31 Zeev Suraski + + * zend_API.h: These aren't necessary + +1999-07-30 Zeev Suraski + + * zend_API.h: Support symbols in any symbol table, not just the active one + +1999-07-30 Andi Gutmans + + * zend_ptr_stack.c: - Damn that's more like it. + + * zend_ptr_stack.c: - Cut&paste crap + + * zend_execute.c + zend_ptr_stack.c + zend_ptr_stack.h: + - Add ptr_stack_n_{push,pop} in order to speed up function calls a bit. + There seems to be no reason for stack->top in the ptr_stack except for + when realloc()'in the stack. I think I'll remove it. + +1999-07-30 Zeev Suraski + + * zend_API.h: + * Setting variables in the global scope wasn't handling is_ref's properly + +1999-07-29 Andi Gutmans + + * zend-parser.y + zend_compile.c + zend_compile.h: + - Fixed a leak when doing inheritance. The parent class name wasn't being freed. + - Fixed a stack leak. Functions that had late argument binding were set up as + INIT_FCALL_BY_NAME but were using DO_FCALL and not the corresponding + DO_FCALL_BY_NAME. + +1999-07-28 Andi Gutmans + + * zend_compile.c + zend_execute.c + zend_execute_API.c + zend_globals.h + zend_hash.c: - Fixed various inheritance problems & Andrey's leak + +1999-07-27 Zeev Suraski + + * zend_compile.c: Inherit parent's constructor + + * zend_compile.c: + Fix runtime inheritence (child functions/members should have higher precedence) + +1999-07-27 Andi Gutmans + + * zend_execute.c: - Add missing lock + + * zend_execute.c: - Fix up the new operator a bit more. + +1999-07-27 Zeev Suraski + + * zend_execute.c: Set reference count and is_ref values for new objects + +1999-07-26 Zeev Suraski + + * zend_operators.c: + - Fixed a memory leak when using assignment-op operators with lvalue of type + string (or array/object) + + * zend_compile.c: *** empty log message *** + + * zend_compile.c + zend_compile.h + zend_execute.c: + Fix a bug in inheritence from classes defined in include files, that are + inherited from require()'d files + +1999-07-26 Andi Gutmans + + * zend_execute.c: - Oops I erased this by mistake + + * zend_execute.c: + - Should be a complete fix now. This break away code should maybe be made + somewhat generic + + * zend_execute.c: - Temporary fix for "this". Have to fix it tomorrow. + + * zend_execute.c: + - Fix compile error. Weird that Visual didn't catch this one. + + * zend-parser.y + zend.h + zend_compile.c + zend_compile.h + zend_execute.c: - Fix the new operator incompatibility. + - I commented PHP_FUNCTION(strtotime) in datetime.c because it stopped + win32 from compiling. This needs to be fixed!!! + - Check out libzend to compile the tree now. + + * zend.h + zend_execute.c: - new operator fixes + +1999-07-25 Andi Gutmans + + * zend-parser.y + zend_compile.c + zend_compile.h + zend_execute.c: - Commiting to branch newoperator. + - To check it out do cvs checkout -rnewoperator libzend + +1999-07-24 Zeev Suraski + + * zend_compile.c: Fix that memory leak... nested function issue remains + + * zend_compile.c + zend_stack.c + zend_stack.h: Fix RETURN & SWITCH memory leak issue + + * zend-parser.y + zend_compile.c + zend_compile.h + zend_execute.c: + Thoroughly fix the SWITCH problem. No RETURN handling yet. + +1999-07-23 Zeev Suraski + + * zend-parser.y + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute.h: Fix bug #1812 + + * zend.h + zend_operators.c: + * Add an API macro users can use to ensure an array member can be modifed + before they modify it. + * Fix a bug and remove redundant code in convert_to_long() (booleans and + resources weren't changing their types + +1999-07-22 Zeev Suraski + + * zend_constants.c: New constants + +1999-07-22 stig + + * buildconf: identify ourselves + +1999-07-20 Andi Gutmans + + * zend_execute.c: - Include alloca.h when need and available. + + * zend_compile.c + zend_execute_API.c + zend_list.c + zend_operators.c: - Get rid of C++ comments + +1999-07-19 Zeev Suraski + + * config.unix.h + config.w32.h + zend-parser.y + zend-scanner.h + zend-scanner.l + zend.c + zend.h + zend_API.c + zend_API.h + zend_alloc.c + zend_alloc.h + zend_compile.c + zend_compile.h + zend_constants.c + zend_constants.h + zend_errors.h + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_extensions.c + zend_extensions.h + zend_globals.h + zend_hash.c + zend_hash.h + zend_highlight.c + zend_highlight.h + zend_indent.c + zend_indent.h + zend_list.c + zend_list.h + zend_llist.c + zend_llist.h + zend_modules.h + zend_opcode.c + zend_operators.c + zend_operators.h + zend_ptr_stack.c + zend_ptr_stack.h + zend_sprintf.c + zend_stack.c + zend_stack.h + zend_variables.c + zend_variables.h: 0.91 update + +1999-07-19 Andi Gutmans + + * zend.h + zend_execute.c + zend_extensions.h: * Fix Zend version + * Fix a method call bug + + * LICENSE + libzendts.dsp: License update + + * zend_errors.h: Make error codes PHP 3.0 compatible + +1999-07-18 Andi Gutmans + + * zend_execute_API.c: + - Should fix the memory leak when returning from the main scope. + +1999-07-17 Zeev Suraski + + * configure.in: Debug on by default + +1999-07-16 Zeev Suraski + + * zend_compile.c: + Ignore T_PHP_TRACK_VARS in the parser (handled in the scanner) + + * config.unix.h + config.w32.h + zend-parser.y + zend-scanner.h + zend-scanner.l + zend.c + zend.h + zend_API.c + zend_API.h + zend_alloc.c + zend_alloc.h + zend_compile.c + zend_compile.h + zend_constants.c + zend_constants.h + zend_errors.h + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_extensions.c + zend_extensions.h + zend_globals.h + zend_hash.c + zend_hash.h + zend_highlight.c + zend_highlight.h + zend_indent.c + zend_indent.h + zend_list.c + zend_list.h + zend_llist.c + zend_llist.h + zend_modules.h + zend_opcode.c + zend_operators.c + zend_operators.h + zend_ptr_stack.c + zend_ptr_stack.h + zend_sprintf.c + zend_stack.c + zend_stack.h + zend_variables.c + zend_variables.h: License update + +1999-07-15 Andi Gutmans + + * zend.c: Change true/false back to 1/"" + + * zend_execute.c: Fix a lock issue + +1999-07-15 sascha + + * zend_execute_API.c: disable zend_handle_sigsegv + +1999-07-14 Andi Gutmans + + * libzendts.dsp + zend.c: Fix thread unsafe constants startup + + * LICENSE + zend.c + zend_constants.c + zend_constants.h: - License update + - Fix multithreaded constants startup + + * zend_operators.c: - Fix for boolean convert to number + +1999-07-12 Andi Gutmans + + * zend_execute.c: - Fixed a purify warning + +1999-07-10 Zeev Suraski + + * zend_alloc.c: Oh, that dumb bug. + +1999-07-10 Andi Gutmans + + * zend_execute.c + zend_hash.c: Ok, so we do have to lock in there + + * zend.c + zend_execute.c: Fix assignments of reference variables + +1999-07-10 Zeev Suraski + + * zend_execute_API.c: Woops, fix. + + * zend_execute.c + zend_execute_API.c + zend_globals.h: Put the garbage in the garbage bin + + * zend_alloc.c + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_globals.h + zend_variables.c: Get rid of AiCount completely + + * zend_execute.c: Final tweaks + + * zend_execute.c + zend_hash.c: More locking work + +1999-07-09 Zeev Suraski + + * zend_execute.c: *** empty log message *** + + * zend_execute.c: More stuff + + * zend-parser.y + zend.h + zend_API.c + zend_API.h + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_opcode.c + zend_operators.c + zend_variables.c: Step 4: + Move to a 7-bit counter (not fully implemented yet) + + * zend_API.c + zend_compile.h + zend_execute.c + zend_execute_API.c + zend_opcode.c + zend_variables.c: Phase 3: + Use a single bit to mark IS_REF variables + + * zend-parser.y + zend.h + zend_API.c + zend_API.h + zend_compile.c + zend_execute.c + zend_execute_API.c + zend_opcode.c + zend_operators.c: Step 2: + Rename is_ref to EA + + * zend.c + zend_API.c + zend_compile.c + zend_compile.h + zend_constants.c + zend_constants.h + zend_execute_API.c + zend_hash.c + zend_hash.h + zend_list.c + zend_list.h + zend_modules.h + zend_opcode.c + zend_variables.c + zend_variables.h: Step 1 in nuking the garbage collector: + - Change the hash destructor to return int + - Don't kill the bucket on hash_destroy if the destructor returns 0 + + * config.w32.h + configure.in + zend_alloc.c: *** empty log message *** + + * zend_alloc.c: Send a SIGSEGV instead of exiting, to trigger a core dump + + * zend_alloc.c + zend_alloc.h + zend_hash.c: * Support recoverable failure from erealloc() + * Fix the shutdown code on an unrecoverable erealloc() failure + + * zend_execute_API.c: Fix the mess in SIGSEGV handling, hopefully + +1999-07-08 Zeev Suraski + + * zend_compile.h + zend_compile.c: + Support definition of classes that are derived from classes that are defined in runtime + +1999-07-06 sascha + + * zend.h: enable it, until we find a better way + +1999-07-05 sascha + + * zend.h: make Solaris gcc happy + + * configure.in + zend.h: use void * instead of long for 64-bit test + +1999-07-05 Thies C. Arntzen + + * zend_API.h: added RETVAL_RESOURCE and RETURN_RESOURCE + +1999-07-04 Zeev Suraski + + * zend_operators.c: + Make convert_to_string() regard false as "" instead of "0" + +1999-07-03 sascha + + * Makefile.am: don't wipe files for distributions + + * configure.in + zend.h: + checking for ints won't work, since they are 32 bit on both platforms + +1999-07-03 Zeev Suraski + + * zend_execute.c: Support isset()/empty() for string offsets + + * zend-scanner.l: Fix a crash + +1999-07-03 sascha + + * configure.in: add usual rhapsody hack + + * config.unix.h: missing DL_HANDLE broke build + + * zend_extensions.c: typo + +1999-07-02 sascha + + * acconfig.h + configure.in + zend.h: workaround for 64-bit platforms + +1999-07-02 Zeev Suraski + + * acconfig.h + configure.in + zend_globals.h: define zend_bool + +1999-06-30 Zeev Suraski + + * zend-parser.y: Make require accept any parameter + +1999-06-26 Zeev Suraski + + * zend_alloc.h + zend_operators.c + zend_alloc.c: + * Make the memory leak reporting code much better with repeats + * Remove useless variables + +1999-06-22 Zeev Suraski + + * zend_compile.c: Fix Thies's bug report + + * zend_alloc.c + zend_compile.c + zend_operators.c: + * Fix concatenation of arrays (it was PHP 3.0 style, copying zval's instead + of zval *, and it wasn't using reference counting) + * Fix a memory leak in static array()'s with textual indices + +1999-06-19 Zeev Suraski + + * zend.c: *** empty log message *** + + * zend.h + zend_extensions.h: + Add a standard get_ini_entry() to interface between Zend and the outside world + + * configure.in: *** empty log message *** + +1999-06-16 stig + + * zend_modules.h: + added INIT_FUNC_ARGS_PASSTHRU and SHUTDOWN_FUNC_ARGS_PASSTHRU + +1999-06-15 stig + + * zend_operators.c + zend_operators.h: * added zend_binary_strcasecmp() + +1999-06-12 Zeev Suraski + + * zend-parser.y: + We can't quite go with expr there (shift/reduce conflict), go with scalar. + + * zend-parser.y: require() improvement as per Andi's suggestion + +1999-06-11 Zeev Suraski + + * zend_operators.c: + Make the concatenation operator use make_printable as well + + * zend-scanner.l: Don't take failing on an include file so badly + + * zend-scanner.l: Support E_COMPILE_ERROR in the compiler + + * zend_compile.c: Two fixes: + * The error generated by a failed class inheritence wasn't properly + displaying the file in which he error occured. + * Inheritence didn't work if the parent class had uppercase letters in it. + + * zend-parser.y + zend-scanner.l + zend_execute.c: * Use to_string() instead of __print() + * Support boolean casts ((bool) and (boolean)) + + * zend.c: Change __print into to_string() + + * zend.c + zend.h + zend_execute.c + zend_execute_API.c: + * Make the output handling of variables much, much cooler. + Uses zend_make_printable_zval() instead of convert_to_string() now: + + $foo = true; + print "\$foo is $foo"; + will now print + $foo is true + (instead of "$foo is 1", earlier). + + Also, with objects, it automatically tries to call __print() and use it as a printing + function. + + For example: + + class foo { + function __print() { return "Foo Object"; } + }; + + $foo = new foo; + print $foo; + + will print "Foo Object". + +1999-06-10 Zeev Suraski + + * zend_operators.c: Now THAT's an annoying bug. + +1999-06-09 Zeev Suraski + + * zend_extensions.c: Fix + + * zend_API.c + zend_execute.c: + * Fix cases where you assign an array element to the parent array (the array was + being erased before the assignment, so the element was being smashed). + + * zend_execute.c + zend_execute_API.c: * Fix foreach() that receives a non array argument + * Clean up some C++ comments + +1999-06-09 Andi Gutmans + + * zend-parser.y + zend_compile.c + zend_compile.h + zend_operators.c: - Fix the static array() initializing + +1999-06-08 Zeev Suraski + + * zend_extensions.c: Replace error messages + +1999-06-08 Andi Gutmans + + * zend_compile.c + zend_compile.h + zend_execute.c: * Fix a by-name call/method call bug + * Clean and optimize the whole function call process + +1999-06-07 Zeev Suraski + + * zend_hash.c + zend_hash.h: Add zend_hash_get_current_key_type() + +1999-06-06 Andi Gutmans + + * zend_compile.c: + Work around a compiler bug - mark variables that are sent to functions that aren't yet + defined as FETCH_W (because they might end up being sent by reference) + +1999-06-05 Zeev Suraski + + * zend.c + zend.h + zend_compile.c + zend_compile.h: * Centralized shutdown + * Change shutdown order again + + * zend_compile.c: + Call the request_shutdown on modules before destroying symbol tables, so that + the session module can be implemented + + * zend-scanner.l + zend_compile.c + zend_execute.c: + - Fixed Karl's bug report. It's not really a thorough fix, we really need to rethink the INIT_FCALL/DO_FCALL issue. + - Fixed numerous AiCount problems + +1999-06-04 Zeev Suraski + + * zend_compile.c + zend_compile.h + zend_execute.c + zend_opcode.c: New $GLOBALS init + + * zend_execute_API.c: + Fix that GLOBALS leak. We were explicitly adding GLOBALS to the main symbol table, + but there's no reason to do it (INIT_GLOBALS takes care of it if necessary.) + + * zend.c + zend.h + zend_API.c + zend_API.h + zend_list.c + zend_list.h + zend_opcode.c + zend_operators.c: Minor updates (mostly __declspec() stuff) + +1999-06-04 Thies C. Arntzen + + * zend_API.h: added is_ref=0 and refcount=1 to SET_VAR_* macros + +1999-06-03 Zeev Suraski + + * zend-parser.y: T_BAD_CHARACTER is actually a string. + +1999-06-03 Andi Gutmans + + * zend-scanner.l + zend_execute.c: + - We weren't counting newlines in heredocs. The only place which is still questionable + is when there's a \ followed by a newline but it seems we have a parse error in this + case anyways. + - Fixed the alloca() macros so that the alloca() #define in win32 mode won't clash + with the real win32 alloca(). + +1999-06-01 Andi Gutmans + + * zend_execute.c: + - Make execute() use less stack in thread-safe win32 due to Microsoft's shitty 256kb stack. + +1999-05-31 Zeev Suraski + + * zend.h + zend_alloc.c: *** empty log message *** + +1999-05-31 Andi Gutmans + + * zend-scanner.l + zend_compile.c + zend_execute.c + zend_execute_API.c: Fixes + +1999-05-30 sascha + + * zend_alloc.c + zend_compile.h + zend_execute_API.c + zend_indent.c + zend_opcode.c: * fix some casts + * introduce unary_op_type - cleaner than casting data voids to function ptrs + +1999-05-29 Zeev Suraski + + * zend_execute_API.c: + That got fucked up when we went back to using uninitialized_zval + +1999-05-29 sascha + + * Makefile.am: another VPATH related change + +1999-05-29 Zeev Suraski + + * zend-parser.y: Fix a bug + + * zend_hash.c + zend_hash.h + zend_operators.c: Support overwrite mode in zend_hash_merge() + +1999-05-29 sascha + + * Makefile.am: - clean is not called from automake. use CLEANFILES instead + - allow VPATH compilation + +1999-05-29 Zeev Suraski + + * zend_execute.c: Correct fix + + * zend_execute_API.c: *** empty log message *** + + * zend_execute.c: Fix a leak + +1999-05-28 Zeev Suraski + + * zend.h + zend_API.c + zend_API.h + zend_alloc.c + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute_API.c: * Support getThis() for internal functions. + * Fix 'new object or die' and AiCount issue thoroughly (earlier fix didn't + work with the optimizer). + * Add new macros for standardized definition of classes. + * Only report AiCount problems if shutdown was not silent. + +1999-05-27 Zeev Suraski + + * zend_execute.c: Fix the AiCount issue with objects + + * zend_API.h: Moved all #define's for SET_ and RETURN_ to zend_API.h + +1999-05-25 Zeev Suraski + + * zend_execute_API.c: + Avoid crashing if an error occurs before we open the first file. + +1999-05-24 Zeev Suraski + + * zend_operators.c: The last fix was wrong + + * zend_operators.c: Another operators fix + +1999-05-23 Zeev Suraski + + * zend_operators.c: + boolean comparison didn't work with smaller-than and greater-than, something that + fucked up berber's site a bit. fixed. + +1999-05-22 Zeev Suraski + + * zend_execute.c: + Sigh, another leak bites the dust. FREE_OP missing in case of a SEND_VAR. + + * zend-parser.y: I'm on a roll. Fix a nasty yet stupid AiCount bug + + * zend_alloc.c: Warn about AiCount not zeroing out + + * zend-parser.y + zend-scanner.h + zend.h + zend_alloc.c + zend_alloc.h + zend_compile.c + zend_compile.h + zend_constants.h + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_extensions.h + zend_highlight.h + zend_list.h + zend_llist.h + zend_ptr_stack.h + zend_stack.h: + * Add struct name to all typedef's so that they can be debugged with MSVC + * Fix an AiCount bug - list(...) = $var was using $var multiple times, and thus + causing AiCount to be decreased multiple times even though it was increased only + once for $var. Mark all FETCH_DIM's so that they won't decrease AiCount, and only + decrease AiCount on the last FETCH_DIM. + * Fix a stupid bug - forgot to pass CLS_C to some compiler function. For some reason + MSVC doesn't report these :I + + * zend.h + zend_alloc.c + zend_execute_API.c: + Give more information and save log lines in memory leak reports + + * zend-scanner.l + zend_compile.c + zend_compile.h + zend_globals.h + zend_llist.c + zend_llist.h: Avoid leaking fd's in case of failures + + * zend-scanner.l: more fixes + +1999-05-21 Zeev Suraski + + * zend-scanner.l: That wasn't supposed to slip in + + * zend-scanner.l: * Properly handle failed file opens in C++ + * Properly handle failed require()'s within libzend + + * zend-scanner.l: * Fix the comments issue. yymore() worked like a charm. + * Change all flex states to be prefixed with ST_ + +1999-05-20 Zeev Suraski + + * zend_compile.h + zend_execute.c: Optimize allocations into uninitialized_zval assignments + +1999-05-20 Andi Gutmans + + * config.w32.h + libzend.dsp + libzendts.dsp + zend_compile.c + zend_compile.h: - Updates we did today + + * zend_compile.c: - Fix a small problem with class decelerations. + + * zend-scanner.l: -Open curly braces fix? + +1999-05-15 Zeev Suraski + + * zend.c + zend.h + zend_compile.c + zend_compile.h + zend_execute.c + zend_hash.c + zend-parser.y: + * Fix all hash checks that checked Bucket.arKey for NULL, when it was changed + to char[1], these checks should have been changed to Bucket.nKeyLength==0 + * Support runtime declaration of functions. I ended up changing the grammar + to catch top level functions vs. nested functions. The reason is simple - + if we don't have functions properly declared at compile-time, function calls + cannot be resolved at compile time, and have to be resolved at runtime, which + ends up being much much slower (without the optimizer, that is). + It's no biggy though, the grammar change isn't that bad. + +1999-05-14 Zeev Suraski + + * configure.in + zend-scanner.l: + If a require() dies, we must bail out (since it corrupts an existing op_array + + * zend-scanner.l: Fix a bug + +1999-05-14 stig + + * Makefile.am: don't install Zend on the system + +1999-05-14 Zeev Suraski + + * zend-scanner.l: + Add \012 and \xff missing support to constant quoted string + +1999-05-12 Zeev Suraski + + * zend.h: *** empty log message *** + +1999-05-12 stig + + * Makefile.am: install libzend.a and header files on "make install" + + * acconfig.h + configure.in: add --enable-thread-safety option + +1999-05-12 Zeev Suraski + + * zend_llist.c + zend_llist.h: Added prepend to llist + +1999-05-11 Zeev Suraski + + * zend-scanner.l + zend.c: Fixes: + * Avoid closing stdin (I could have sworn I've committed that already) + * unclean_shutdown patches + + * zend_alloc.c: Easier Win32 debug code + + * zend-scanner.l + zend_compile.c + zend_globals.h + zend_highlight.c: + * Fix a bug that occured in case of parse errors. We need to restore the lexical state + even if the compilation failed. + +1999-05-10 Zeev Suraski + + * zend-scanner.h + zend-scanner.l + zend.c + zend_alloc.c + zend_compile.h: + Weed out all BoundsChecker-found bugs (including a serious file descriptor leak + in the C++ scanner) + +1999-05-09 Zeev Suraski + + * zend_modules.h: Change argument name + + * zend.c + zend_API.c + zend_API.h + zend_modules.h: Almost forgot to commit those + +1999-05-06 Zeev Suraski + + * zend-scanner.l: Ok, I tested it now. It works very nicely! + +1999-05-05 Andi Gutmans + + * zend_llist.c + zend_llist.h: llist improvements + +1999-05-02 Andi Gutmans + + * zend.c + zend_compile.h: - Don't support interactive mode when thread safe. + +1999-05-01 Zeev Suraski + + * zend_operators.c: Several operator fixes. Should fix the MySQL problem. + +1999-04-30 Andi Gutmans + + * zend_opcode.c: - Free refcount when destroying the last class reference. + + * zend-parser.y: - Missed one place + + * zend-parser.y: - First try at fixing $a->foo[] syntax. + + * zend-scanner.l: + - Move back to yyless(). I haven't tested it yet because it's taking too long + to compile and I have to disconnect + +1999-04-30 Zeev Suraski + + * zend-parser.y + zend-scanner.l: + Fix Boris's problem (in my never ending struggle to show I never mean what I say + when I say something's not gonna happen :) + + * zend-scanner.l + zend_compile.c: + * Fix a problem with constant quoted strings, that was causing Thies's problem + * Remove a development-time printf + +1999-04-29 Andi Gutmans + + * zend-scanner.l: - No reason to handle newlines here. + +1999-04-28 Zeev Suraski + + * zend-scanner.l: Make the C++ scanner support interactive input + +1999-04-27 Zeev Suraski + + * zend-scanner.l + zend_compile.h + zend_execute_API.c + zend_extensions.c + zend_extensions.h + zend_opcode.c: * Fix debugger+interactive mode bug + * Recognize whether an extension is with debug information or not + +1999-04-26 Zeev Suraski + + * libzendts.dsp: fix + + * config.w32.h + libzend.dsp + libzendts.dsp + zend-scanner.l + zend.c + zend_alloc.c + zend_compile.h + zend_globals.h + zend_highlight.c + zend_highlight.h + zend_indent.c + zend_indent.h + zend_opcode.c + zend_sprintf.c: Various thread safety fixes and DLL updates + +1999-04-26 Andi Gutmans + + * zend-scanner.l + zend.c + zend_alloc.c + zend_globals.h: -More commits + +1999-04-24 Zeev Suraski + + * zend_compile.c: Another small fix + + * libzendts.dsp: dsp update + + * zend.c + zend_globals.h: Thread safety fixes + + * zend_list.c: Remove redundant includes + +1999-04-24 zeevread + + * zend-scanner.l: g++ compile fix + +1999-04-24 Zeev Suraski + + * Makefile.am + zend-scanner.l: *** empty log message *** + + * zend_API.c + zend_compile.c + zend_compile.h + zend_execute.c + zend_opcode.c + zend-parser.y + zend-scanner.l: Cleanups, remove old ts code + +1999-04-23 Zeev Suraski + + * zend_operators.c: Arithmetics bug fix + + * zend-scanner.h + zend-scanner.l: Support eval() and highlight_string() in the C++ scanner + +1999-04-23 Andi Gutmans + + * zend-scanner.l: + - Use yyless() instead of unput() where possible. I'll erase the commented + out code in a day or so. + +1999-04-23 Zeev Suraski + + * FlexLexer.h + flex.skl + zend-scanner.h + zend-scanner.l + zend.h + zend_alloc.c + zend_alloc.h + zend_compile.h + zend_globals.h + zend_highlight.c + zend_highlight.h + zend_indent.c + zend_operators.h + zend_variables.h: Ok, call me crazy, because I probably am. + Thread safe version now uses a C++ scanner object. Works fully. + +1999-04-22 Zeev Suraski + + * acconfig.h + zend-parser.y + zend-scanner.l + zend_compile.c + zend_compile.h + zend_execute.c + zend_globals.h + zend_highlight.c + zend_indent.c + zend_opcode.c: Make token names uniform, they all begin with T_ now. + +1999-04-21 stig + + * buildconf: state which aclocal.m4 and configure files are created + + * Makefile.am: + zend-parser.o and zend-scanner.o were included twice in libzend.a + +1999-04-21 Zeev Suraski + + * FlexLexer.h + flex.skl + libzendts.dsp + zend_API.c + zend_API.h + zend_globals.h: + * Change the thread safe project to create a C++ scanner. + * Add in a slightly modified skeleton file (only a couple of #if's for #include's + that we dont have in Windows) + + It does NOT compile or work yet :) + + * zend_list.h: Fix + + * zend.c + zend_compile.c + zend_constants.c + zend_constants.h + zend_list.c + zend_list.h: + Thread safety patch. It works now with 'just in time' resource initialization! + + * libzend.dsp + libzendts.dsp + zend_globals.h: Thread-safe project + +1999-04-21 stig + + * buildconf: move automake back to before autoconf + + * buildconf: + autoheader must be called after autoconf, automake after autoheader + + * zend_config.h.in: think before one commits + + * zend_config.h.in: doh. cvs appears to ignore .in files by default + +1999-04-21 Zeev Suraski + + * zend-parser.y + zend-scanner.l + zend.c + zend_API.c + zend_API.h + zend_alloc.c + zend_compile.c + zend_compile.h + zend_constants.c + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_globals.h + zend_opcode.c: + Thread safety patch. We're still not quite there but it compiles again, and + more logic has been implemented. + +1999-04-20 stig + + * .cvsignore + Makefile.am + Makefile.in + aclocal.m4 + buildconf: Makefile.in and aclocal.m4 are generated + added buildconf script + +1999-04-19 Zeev Suraski + + * zend_extensions.c + zend_extensions.h: + Return a success value from the startup function, so we can unload immediately + if it fails. + +1999-04-19 stig + + * .cvsignore + Makefile.am + Makefile.in + acconfig.h + acinclude.m4 + aclocal.m4 + config.h.in + configure.in + zend.h: convert to automake + +1999-04-19 Andi Gutmans + + * zend_API.c + zend_API.h: Add a couple of ZEND_API's + + * config.w32.h + zend-parser.y + zend_compile.c + zend_execute.c: Support =unset as arguments + +1999-04-19 stig + + * acconfig.h + config.h.in + configure.in: removed -lnsl and -lsocket checks from zend + +1999-04-18 Zeev Suraski + + * zend_execute.c: AiCount needs to be decreased here + + * configure.in + zend-scanner.l + zend.c + zend.h + zend_API.c + zend_API.h + zend_alloc.c + zend_compile.c + zend_extensions.c + zend_extensions.h + zend_globals.h + zend_llist.c + zend_modules.h + zend_opcode.c: Whatnot: + * updated alloc_persist to use critical sections + * changed extension shutdown to two-phase + * updated dependencies + * PR support (don't remember if there was any really) + +1999-04-15 Andi Gutmans + + * zend_execute.c: + - one more place which seems to have needed fixing. I don't have time to look + more into it. I hope we don't have anymore places which need fixing. + + * zend_compile.c: + - Should fix the pass by reference problem. This happened because we moved + start from arg 1 now and not arg 0. There might be more places which need fixing + like in the executor but the bug seems OK now. + +1999-04-14 Zeev Suraski + + * zend_compile.h: Compile fix + +1999-04-14 Andi Gutmans + + * config.w32.h + libzend.dsp + zend-scanner.l + zend_API.c + zend_API.h + zend_compile.c + zend_compile.h + zend_opcode.c: -Tiny patches + +1999-04-13 Zeev Suraski + + * zend_execute.c: Better detection + + * zend_execute.c: + Move Ai stuff before get_zval_*(), like Andi suggested. Fixes Sascha's huge + memory leak + +1999-04-13 Andi Gutmans + + * zend-parser.y + zend_compile.c + zend_execute.c + zend_execute_API.c: - Fix various memory leaks. + + * zend_execute.c: Refcount bugfix + + * libzend.dsp + zend_API.c + zend_execute_API.c + zend_ptr_stack.c: * Optimize argument_stack top lookup + * Fix a nasty bug in zend_ptr_stack_clean() + +1999-04-12 Zeev Suraski + + * zend_execute_API.c + zend_globals.h: Remove unnecessary stack + + * zend_API.c: off by one + + * zend_execute.c: Minor optimization + + * zend_API.c: Make functions that don't take arguments somewhat happier:) + + * zend_execute.c: + This should take care of "this" for user-defined functions. It wasn't yet working + for built-in functions anyway, this one is coming soon. + + * zend_compile.c + zend_execute_API.c: + Destroy the resource list after destroying the symbol table, otherwise the + auto-destructor for resources are run when the resource list is no longer valid + + * zend-parser.y + zend.h + zend_API.c + zend_API.h + zend_compile.c + zend_compile.h + zend_execute.c + zend_execute.h + zend_execute_API.c + zend_globals.h + zend_ptr_stack.c: + This patch is a go. Not fully optimized yet, but working properly. + Prepatch tagged as BEFORE_STACK_PATCH. + + * zend_compile.c + zend_execute.c: Minor fixes: + missing zval_copy_ctor() + messed up AiCount fix + +1999-04-10 Zeev Suraski + + * zend_alloc.c + zend_alloc.h: Allow runtime setting of the memory limit + + * zend_alloc.c + zend_alloc.h + zend_globals.h: Get rid of php3_ini in Zend + + * zend.c + zend.h: + We need to initialize the utility values after we initialize the INI file, which in + turn, is after we initialize Zend. Set the utility values separately from Zend's + initialization + +1999-04-09 Andi Gutmans + + * zend-scanner.l: - Changed here-docs to <<< followed by whitespace. + +1999-04-09 stig + + * .cvsignore: ignore file + +1999-04-09 Andi Gutmans + + * zend-parser.y + zend_compile.h: + - I guess print $GLOBALS and print "$GLOBALS" should yield the same result + so I returned the one in encaps_var. + - Made INITAL_OP_ARRAY_SIZE smaller (64? can't remeber). I don't think the + erealloc()'s during compile time are such a biggy, we might make it even + smaller. We can have a configure time option as to it's size. + + * zend-parser.y: + - Support $GLOBALS in cvar's. Now list(..) = each($GLOBALS) will work. + - Remove support of $GLOBALS in enacapsed strings. print "$GLOBALS" isn't + supposed to work in any case. + +1999-04-09 Zeev Suraski + + * zend-scanner.l: + Honor a semicolon on the same line as an ending token of a heredoc + + * zend_compile.c: Prevent class redeclarations + +1999-04-08 Zeev Suraski + + * zend_API.c + zend_modules.h: * Add arguments to shutdown functions + * Remove traces of php_ini stuff + + * zend-parser.y: "Our favourite mistake" + + * zend-parser.y + zend_compile.c + zend_compile.h + zend_execute.c + zend_opcode.c: $GLOBALS support + +1999-04-08 Andi Gutmans + + * ZEND_CHANGES: foreach() syntax has changed + +1999-04-08 Zeev Suraski + + * zend_compile.c + zend_execute.c: Fix static assignment + +1999-04-07 Zeev Suraski + + * zend_execute_API.c: Remove an unused variable + + * libzend.dsp: That's better. + + * libzend.dsp: We didn't save the .dsp back then... + + * ZendCore.dsp + ZendCore.dsw + ZendCore.mak + diffs + libzend.dsp: Cleanups: ZendCore->libzend + +1999-04-07 Rasmus Lerdorf + + * zend.c: *** empty log message *** + +1999-04-07 Andi Gutmans + + * LICENSE + Makefile.in + ZEND_CHANGES + configure.in + zend-parser.y + zend-scanner.h + zend-scanner.l + zend.h + zend_API.c + zend_API.h + zend_compile.h + zend_errors.h + zend_execute.c + zend_execute_API.c + zend_globals.h + zend_hash.c + zend_hash.h + zend_list.c + zend_list.h + zend_llist.h + zend_opcode.c + zend_operators.c + zend_operators.h + zend_ptr_stack.c + zend_ptr_stack.h + zend_stack.c + zend_stack.h + zend_variables.c + zend_variables.h: New file. + + * LICENSE + Makefile.in + ZEND_CHANGES + configure.in + zend-parser.y + zend-scanner.h + zend-scanner.l + zend.h + zend_API.c + zend_API.h + zend_compile.h + zend_errors.h + zend_execute.c + zend_execute_API.c + zend_globals.h + zend_hash.c + zend_hash.h + zend_list.c + zend_list.h + zend_llist.h + zend_opcode.c + zend_operators.c + zend_operators.h + zend_ptr_stack.c + zend_ptr_stack.h + zend_stack.c + zend_stack.h + zend_variables.c + zend_variables.h: Zend Library + + * ZendCore.dep + ZendCore.dsp + ZendCore.dsw + ZendCore.mak + acconfig.h + aclocal.m4 + config.h.in + config.unix.h + config.w32.h + diffs + zend.c + zend.ico + zend_alloc.c + zend_alloc.h + zend_compile.c + zend_constants.c + zend_constants.h + zend_execute.h + zend_extensions.c + zend_extensions.h + zend_highlight.c + zend_highlight.h + zend_indent.c + zend_indent.h + zend_llist.c + zend_modules.h + zend_sprintf.c: New file. + + * ZendCore.dep + ZendCore.dsp + ZendCore.dsw + ZendCore.mak + acconfig.h + aclocal.m4 + config.h.in + config.unix.h + config.w32.h + diffs + zend.c + zend.ico + zend_alloc.c + zend_alloc.h + zend_compile.c + zend_constants.c + zend_constants.h + zend_execute.h + zend_extensions.c + zend_extensions.h + zend_highlight.c + zend_highlight.h + zend_indent.c + zend_indent.h + zend_llist.c + zend_modules.h + zend_sprintf.c: Zend Library +