Tue Nov 10 00:10:15 1998  Peter Bortas  <peter@idonex.se>

	* modules/Remote.pmod/*: Added Remote to the standard dist.

Sun Sep  6 01:32:48 1998  Henrik Grubbstrm  <grubba@idonex.se>

	* modules/HTTPAccept/timeout.c (aap_exit_timeouts): Added function.
	* modules/HTTPAccept/timeout.c (handle_timeouts): Can now terminate.
	* modules/HTTPAccept/timeout.c (aap_init_timeouts): Now uses
 	th_create_small() instead of th_farm().
	* modules/HTTPAccept/accept_and_parse.c (aap_handle_connection):
	Fixed timeout handling bug.
	* threads.h (th_join): Added function.

Mon Jun  8 17:03:59 1998  Henrik Grubbstrm  <grubba@idonex.se>

	* fd_control.c (set_close_on_exec, do_close_on_exec): Added fallback
	for OS's where F_SETFD doesn't exist/work.

Mon May 25 22:12:40 1998  Henrik Grubbstrm  <grubba@idonex.se>

	* program.c (program_indices, program_values, program_index_no_free):
	Added support for retreiving constants from a program without first
	cloning it.
	* stralloc.c (verify_shared_strings_tables): Fixed bug "Shared string
 	hashed to other number." which occurred if the debug level was higher
	than 10 when creating a new string.

Wed May 13 23:49:01 1998  Henrik Grubbstrm  <grubba@idonex.se>

	* modules/system/errnos.list: Added lots (194) of errnos.
	Most OS's will only support a subset of them.

Tue May  5 17:28:10 1998  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* bugfix in cpp()
	* sleep(X) is no longer aborted by signals
	* sleep(X,1) is aborted by signals

Thu Apr 23 17:36:57 1998  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* local 'import' in function blocks implementd
	* encode_value/decode_value can now take a 'codec' as second
	  argument. They can also encode/decode some programs.
	  (Mostly depending on how good the codec is.)
	* ({})/ array and ""/string now return ({}).
	* A few minor optimizations implemented
	* sprintf("%O",x) now quotes strings (and quotes them correctly)

Wed Apr 15 18:15:34 1998  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* object(foo) now means 'object that implements foo'
	* sscanf: added %{  %}
	* new function: array_sscanf, works like sscanf() but is a normal
	  function and returns an array.
	* %o, %d and %x now accepts field lengths in sscanf()

Wed Apr 15 03:47:05 1998  Henrik Grubbstrm  <grubba@idonex.se>

	* language.yacc: Lots of error-handling added. The compiler ought
	to leak a bit less when encountering syntax errors now.

Fri Apr 10 15:05:11 1998  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* language.yacc: it is now possible to use class names as types
	  in most places.
	* pike_types.c: object(foo) now means 'object that inherits foo'

Thu Apr  9 15:11:07 1998  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* Recursive module references now generates errors
	* combine_path now takes any number of arguments

Sun Apr  5 20:23:22 1998  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* main.c: new option -q, allows you to force an exit after
	  a certain number of instructions, used for debugging only.

Wed Apr 01 00:47:18 1998  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* mkpeep.pike: peep.in is now processed by cpp().
	* cpp.c (low_cpp): Macro argument bugfix, and improved error message.
	* docode.c (do_docode2): Optimizations.
	* interpret.c, lex.c: New opcodes, and some bugfixes.

Thu Mar 26 00:25:29 1998  Henrik Grubbstrm  <grubba@idonex.se>

	* threads.c (init_threads_disable): Fixed some bugs.
	* threads.h (THREADS_{DIS,}ALLOW_UID): Added macros.
	* backend.c (backend): Improved support for poll(2).
	Also added support for nonblocking out-of-band data if poll(2)
	is used.
	* modules/files/file.c (file_read_oob, file_write_oob, etc): Added
	support for out-of-band data.

Sat Mar 21 19:20:54 1998  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* DEBUG_MALLOC now does bound checking
	* werror() and Stdio.File()->write() does automatic sprintf()
	  formatting if called with more than one arg.

Fri Mar 20 14:31:15 1998  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* signal_handler.c (receive_signal): Process hangning bug fixed
	* new function: _exit
	* Stdio.File->(try)lock added for file locking, not available
	  on all systems
	* class pointers can now be casted to raw programs with (program).
	* configure can now disable any module by using --without-<module>
	* cpp.c: fixed a bug in #if constant

Tue Feb 24 09:03:37 1998  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* `<, `>, `<=, `>=, `==, `!=, `/, `-, min and max now take
	  more than two parameters
	* better error messages implemented

Thu Feb 19 14:40:54 1998  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* opcodes.c (o_cast): recursive casting implemented
	  (array(int)) ({"1"}) now return ({1})
	* operators.c: arrays and strings can now be divided
	  by integers and floats.
	* operators.c: arrays and strings can now me multiplied
	  by integers
	* cpp.c: #"foo" - a way to write strings with newlines in it
	* cpp.c: #string "foo" a way to include a file as a string

Thu Feb 12 02:27:50 1998  Henrik Grubbstrm  <grubba@idonex.se>

	* builtin_functions.c (f_diff, f_diff_compare_table,
 	f_diff_longest_sequence): Added functions to diff arrays.
	(f_longest_ordered_sequence): Added Array.longest_ordered_sequence().

Wed Feb 11 04:31:44 1998  Niels Mller  <nisse@idonex.se>

	* modules/Gmp/mpz_glue.c (low_get_digits): Fixed handling of base
 	256. This function should not return any leading zeros.
	(low_get_digits): Yet another bug... The number zero is special,
 	it is represented with no mpz limbs at all, but should still
 	produce one digit. In fact, this is the only number for which
 	low_get_digits will produce a leading zero.

Wed Jan 21 11:37:44 1998  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* objects can now access variables in their parents
	* Compiler is now two-pass -> no more prototypes
	* New efun: cpp()
	* you can now access a class name from inside itself
	* fork() now returns an object
	* new option to pike: -w
	* keyword varargs removed
	* inline keyword now enforced
	* New functions: Stdio.cp(), Process.create_process()
	* Lot of modifications for NT

Thu Jan  1 16:56:09 1998  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* threads.c: new methods added: wait and status
	* cpp.c: new file. Implements an ANSI-style preprocessor instead of
 	the old K&R-style preprecessor.

Mon Dec 22 09:33:59 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* version.c: version now includes release number
	* export.pike: now updates release number automatically
	* smartlink: -L options are now uniq-ified
	* encode.c: doesn't attempt to allocate mappings with negative
	  sizes any more 
	* interpret.c: allows trace up to -t2 without #define PIKE_DEBUG

Wed Dec 17 20:05:46 1997  Henrik Grubbstrm  <grubba@idonex.se>

	* lex.c (low_lex): #if constant() now knows about the module-system.

Mon Dec  8 03:41:27 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* modules/*/*.[ch]: Pike's header-files are now #included with
	""-quoting (and not <>-quoting) from all modules. This makes
	the dependency files contain all the expected rules.

Fri Dec  5 23:25:33 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* modules/Image/colortable.c (reduce_recurse): Now uses MEMMOVE()
 	instead of memmove().
	* pike_memory.c (strdup): Added function for OS's which don't have
	strdup().
	* modules/files/configure.in: Fixed configure-test for readdir_r to
 	work on Sparc-Linux.
	* modules/files/efuns.c (f_filesystem_stat): Added support for ULTRIX's
	struct fs_data.
	* modules/_Crypto/lib/Makefile.in: algorithms.a is now built in a way
	that works on Irix 4.0.5.
	* smartlink: ulimit disabled since it caused problems on some OS's
	with some compilers.

Mon Nov 17 04:11:14 1997  Niels Mller  <nisse@infovav.se>

	* modules/_Crypto/.build_lobotomized_crypto: Script to build a
	lobotomized version of the crypto module, with no strong crypto
	algorithms included.

Mon Nov  3 01:38:32 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* smartlink: Now sets ulimit for the data segment to 48MB unless
 	the environment variable NO_ULIMIT is set. This seems like a
 	reasonable default limit to avoid exhausting all memory in the
	machine during optimizing.
	* configure.in: Added options proper for SparcWorks cc.
	* *.c: Added several casts to avoid implicit casts between signed
	and unsigned.

Sun Nov  2 01:03:08 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* main.c: Now closes all fd's except stdin, stdout and stderr at
	start, since they aren't reachable anyway. This is good if pike is
	started from an environment which has leaked fd's.
	* backend.c,interpret.c: Added some missing set_close_on_exec()'s.

Sun Sep 28 18:12:55 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* arr->identifier is now the same as column(arr,"identifier")
	* Dynamic loading now works on AIX, but only with GCC

Sun Sep  7 17:55:47 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* array.c: sort() now handles the `< method
	* thread.c: now works again, also less overhead
	* lex.c: '\0x20' works now
	* program.c: fixed a bug with handling inherited functions

Thu Sep  4 18:07:34 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* modules/spider/dumudp.c (udp_sendto): Fixed threading bug.

Wed Sep  3 00:19:38 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* threads.c (f_mutex_lock): Now throws an error if a mutex is locked
	recursively.

Sun Aug 31 02:06:06 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* *.{c,h,yacc}: Fixed valid prototypes for functions taking no
 	arguments.

	* configure.in: Added compiler options for OSF/1 cc.

Tue Aug 26 19:37:28 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* builtin_functions.c (combine_path): Fixed so combine_path now
	  handles that the first argument is a relative path.

Wed Aug 27 01:25:02 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* builtin_functions.c (combine_path): Fixed bug. combine_path("/", ".")
	now expands to "/" and not to "".

Fri Aug 15 13:23:09 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* modules/Mysql/result.c (f_fetch_row): Now returns strings for all
	datamembers, and 0(zero) for NULL, to allow for easier identification
	of NULL and integers larger than 32 bits.

Tue Jul  8 17:51:06 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* stralloc.c: fixed a bug in replace() (if 'from' is an empty string)
	* testsuite.in: added a test for the above
	* configure.in: added more debug to dynamic module tests

Fri Jun 27 19:30:52 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* modules/Sql/sql.pike (create): The host argument can now use the
 	following syntax:
 	  [dbtype://][user[:password]@]hostname[:port][/database]
	Thanks to Francesco Chemolli for the suggestion.

Wed Jun 25 03:21:41 1997  Niels Mller  <nisse@infovav.se>

	* modules/files/file.c (file_open): Added optional third argument
 	to open, specifying access permissions of created files.

Tue Jun 24 21:23:36 1997  Niels Mller  <nisse@infovav.se>

	* modules/files/file.c (file_write): Fixed non-terminated string
	constant. 

Tue Jun 17 04:20:20 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* SIGUSR1 and SIGUSR2 are now masked out on linux systems
	  with threads. (Because the thread functions use them.)

Tue Jun 10 12:21:07 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* lib/modules/Process.pmod (exec): Fixed path-handling bug.
	Thanks to John W Pierce <jwp@checfs1.ucsd.edu>.

	* lib/modules/Sql.pmod/sql.pike: Added support for case-conversion
	of field-names. Also added some debug output if compiled with
 	PIKE_SQL_DEBUG.

	* modules/Odbc/configure.in: Improved test.

	* modules/Odbc/odbc.c,modules/Odbc/odbc_result.c: Fixed all warnings.

	* modules/system/system.c (report_error): Removed volatile from
 	function declaration since AIX-cc doesn't understand it.

	* modules/Yp/module.pmod.in: Added missing file.

Wed Jun  4 18:01:35 1997  Niels Mller  <nisse@infovav.se>

	* modules/Gmp/mpz_glue.c (get_mpz_from_digits): Fixed small memory
	leak.

Sun Jun  1 00:05:00 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* modules/files/efuns.c (f_filesystem_stat): Added function.

	* *.pike: All pike-files now contain an Id-string.

Sun May 25 18:17:36 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* backend.c: set_{read,write}_callback now wakes up backend
	  properly.

Sun May 25 20:30:14 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* modules/{files,spider,system}/configure.in: Added check for libbind.

Thu May 22 18:23:07 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* modules/*/acconfig.h: Several more modules now use autoheader.
	* modules/readline/: Old readline_machine.h.in was protected with the
	wrong #define.

Thu May 22 16:29:10 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* return on a void expression now gives an error

Mon May 19 03:00:49 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* Many bugfixes added
	* support for combined Pike/C modules added

Fri Apr 25 18:22:04 1997  Niels Mller  <nisse@infovav.se>

	* modules/Gmp/mpz_glue.c (mpzmod_probably_prime_p): Added optional
	argument COUNT.
	(mpzmod_small_factor): New function
	(mpzmod_next_prime): New function

Sat Apr 12 16:38:25 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* modules/spider/spider.c (push_parsed_tag, tagsequal, find_endtag):
	Fixed a couple of html_parse bugs.

Thu Apr 10 22:38:42 1997  David Kgedal  <kg@infovav.se>

	* module_support.c(error_type): Removed extra comma to avoid
 	compiler warnings.

Tue Apr  8 23:01:15 1997  David Kgedal  <kg@infovav.se>

	* encode.c (frexp,FREXP): Return the right value instead of a
 	nonexistant variable.

Tue Apr  1 02:43:16 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* configure.in: Now tries to convert $srcdir to an absolute path.

Sun Mar 23 14:09:18 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* configure.in: added test for dynamic loading of modules
	* program.c (get_storage): new function

Mon Mar 17 14:14:34 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* peep.c (insopt): line numbering info bug fixed
	* rusage.c: sys/times.h now included if existant

Sun Mar 16 18:33:18 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* Getopt: fixed a major bug in get_all_options()
	* macros.h renamed to pike_macros.h

Thu Mar 13 17:06:09 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* changed check_args() and check_all_args(), they are much more
	  flexible and a bit easier to use now.

Wed Mar 12 03:58:53 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* renamed clone() to clone_object(), threads works with linux now.

Wed Mar 12 00:53:13 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* module_support.c (va_get_args): %f didn't work before.
	* modules/Sql.pmod/*: Renamed to lowercase to follow the new
	naming-conventions.
	* *.c: Fixed typos in several error-messages.
	* Makefile.in: Now remakes a bit less.

Mon Mar 10 16:58:06 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* docode.c (do_cond_jump): optimized || and &&
	* program.c (add_constant): constants are now redefinable
	* interpret.c: F_EQ_OR now works, added F_EQ_AND

Sun Mar  9 01:44:03 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* peephole optimized fixed and improved

Sat Mar  8 04:31:29 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* added new efuns `[] and `->
	* type checking improved:
	* function and program are now almost interchangeable.
	* function and object are now almost interchangeable.

Thu Mar  6 21:19:28 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* pike_types.c: recurseive compiling bugs fixed

Tue Mar  4 21:09:25 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* peephole optimizer improved
	* fatal bug in get_type_of_svalue fixed
	* fatal bug in constant (when using non-constant values) fixed

Tue Mar  4 23:07:31 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* dynamic_load.c (f_load_module): Now works on FreeBSD.

Fri Feb 28 19:25:36 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* interpret.c (strict_apply_svalue): `() should now work properly

Thu Feb 27 19:33:33 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* module system slightly re-worked
	* fixed a couple of minor bugs
	* backtrace() now returns the arguments to functions
	* testsuite.in now has more tests fore threads
	* backend.c: now detects EBADF properly
	
Tue Feb 18 20:59:18 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* array.c: division and multiplication on arrays implemented.
	  works like division and multiplication on strings.
	* builtin_functions.c: fixed a core-dumping bug in mkmapping
	  (when doing mkmapping on different sized arrays)
	* backend.c: added a pipe for signal handlers and call_outs to
	  use when they need to wake up the backend.
	
Mon Feb 17 21:09:56 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* master.pike: PIKE_MODULE_PATH & PIKE_INCLUDE_PATH now read
	  only once.
        * master.pike: cast_to_object rewritten
	* las.c: added optimization for functions that only call a builtin
	  function anyway.

Sun Feb 16 21:08:28 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* mapping.c: empty mappings are now allocated without an hashtable,
	  should save a noticable amount of memory.
	* casting a string to an object or program now searches relative to
	  where the casting program is loaded from.

Sat Feb 15 08:30:15 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* stralloc.c (string_replace): optimized replace when to and
	  from string are the same length.

Thu Feb 13 02:56:13 1997  Niels Mller  <nisse@infovav.se>

	* operators.c (o_and, o_or, o_xor, o_compl): Added support for
 	bitwise logical operations on strings.

	* Fifo.pmod: Changed builtin.foo to Builtin.foo

Tue Feb 11 19:31:28 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* pike_regexp.c: regexp function renamed so they will not
	  collide with libc functions.
	* svalue.c: fixed a rather serious bug in overloading of `!

Mon Feb 10 23:08:34 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* language.yacc: inherit Foo; now works with Foo::bar
	* module names are now capitalized
	* add_function_constant added: (for simple use with modules)
	* operators.c, strallo.c: moved optimizations for f_add into
	  stralloc.c. (realloc_shared_string)

Thu Feb  6 16:37:24 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* new module system impoemented (major update)
	* new keyword: import
	* inheriting objects implemented (for use with new module system)
	
Fri Jan 31 14:29:47 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* port.c: new and random()
	* svalue.h: assign_svalue(), free_svalue() and assign_svalue_no_free()
	  are now macros for increased speed.
	* lex.c, program.c: added errno into error when open() fails.
	* las.c (zapp_try_optimize): fixed a core-dumping bugg

Thu Jan 30 16:30:13 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* configure.in: Now exports LDFLAGS CPPFLAGS and LIBS to levels above.
	* mktestsuite: Now passes extra args along to m4.
	* modules/module_makefile (module_testsuite): Now defines SRCDIR
	(needed for the image-module tests). This seems to have been lost
	last time the testsuite generation was changed.

Wed Jan 29 13:24:46 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* interpret.c, language.yacc, lex.c: added more optcodes to
	  optimize. New optcodes F_CLEAR_2_LOCAL, F_MARK_AND_LOCAL,
	  F_2_LOCAL, F_APPLY, F_APPLY_AND_POP
	* interpret.c: moved some stack checks, now only done if d_flag
	  is nonzero
	* lex.c, peep.c: moved the data for hasarg() to lex.c
        * las.c: fixed optimization, Loop++ should be more effective now.
	* master.pike: added new options -h/--help -e/--execute
	* master.pike: now executes hilfe if no arguments are given.
	* mapping.c: fixed a memory bound error when allocating mappings
	  with room for zero elements.
	* modules/files/file.c:
	  Per pointed out that it is not nessesary to loop in write()
	  when the file is in nonblocking mode.
	  Also fixed so that close on exec is updated only at fork()
	  or exece().
	  connect() now calls open_socket() if called on a closed fd.

Wed Jan 29 21:23:26 1997  Per Hedbor  <per@infovav.se>

	(file_create): It is now possible to write File(filename,mode); to
	open a new file-object.

Tue Jan 28 15:47:28 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* machine.h.in: now generated with autoheader * configure.in:
 	check for STACK_DIRECTION added, some silly tests removed.  *
 	config.h: removed, merged into global.h and other files

Tue Jan 28 19:35:31 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* modules/system/passwords.c (f_getpwnam): Moved password-related
	functions from spider-module. Fixed a couple of bugs during the move.
	* modules/system/syslog.c (f_syslog): Moved from spider-module.
	Fixed a couple of bugs during the move.

Mon Jan 27 18:44:25 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* simulate.pre.pike: query_host_name is now same as gethostname
	* builtin_functions.c: query_host_name removed, mktime added
	* gc.c: more debug added, added a callback to make it possible
	  to count external references.
        * operators.c: fixed a bug in range overloading

Mon Jan 27 09:03:40 1997  Per Hedbor  <per@infovav.se>

	* configure.in: Added support for a number of optimization options
   	  to gcc and other cc compilers.
          With gcc:
	    On all CPUs:
	     -O2 and -funroll-loops are tried
	     
	    On sparclite (sun4c): -msparclite
	    On microsparc (sun4m): -mv8
	    On supersparcs and ultrasparcs (sun4d and sun4u): -msupersparc

	    This is more or less equivavalent to the -native option in
	    many cc compilers.

	    The generated binary will work on all sparcs, but it will be
	    optimized for the sparc it was compiled on. -mv8 gives an
	    speed improvment of about 200% in the image module on a Sparc
	    Station 4, and -msupersparc gives almost 300% on an ultra.

	    There is no support in gcc for ultrasparc native code.

	    If GCC had had v8 as a default sparc-instruction set, this
	    hazzle would not really have been neccesary. It currently uses
	    the v7 set, but there are not all that many v7's out there today.

	  With other compilers:
	    On all CPUs:
	      -O, -fast and -native
	     (for apcc): -XO=5, -Xcallmod=2
            sun4m: -Xpipe=micro
	    sun4d and sun4u: -Xpipe=super

          There is probably a need for more optimization options for other
	  CPUs than sparc. 

Sun Jan 26 13:44:18 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* endode.c: encode_value and spinner compatible decode_value added
	* operators.c: optimized string adding by a factor 10 or so
	* configure.in: Now uses AC_TRY_COMPILE (needs autoconf 2.12)
	  -R now used only on Solaris
	* object.c: overloading for indices() and values() added
	* svalue.c: overloading for sizeof() added
	* operators.c: overloading for [ .. ] added
	* pike_types.c: support for `() added, and optimized some other things
	
Sat Jan 25 19:01:28 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* constants.c: constants are now stored in a mapping
	* program.h: now possible to overload `()
	* program.c: some new functions to easy the transition to the
	  new module stuff...
	* dynamic_load.c: fixed to return a program

Sat Jan 25 17:34:16 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* module_support.c (check_all_args): Renamed check_args to
	check_all_args. Added non-error-generating variants
	va_check_args and check_args.

Thu Jan 23 20:12:35 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* modules/files/efuns.c (f_get_dir): Added more variants of
	readdir_r.

Tue Jan 21 21:19:46 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* las.c: improved typechecking for indexing objects
	* modules/files/efuns.c: get_dir threaded
	* modules/files/file.c: now uses system.c for gethostbyname
	* modules/system/system.c: gethostbyname and gethostbyaddr threaded
	* module_support.c: support for checking arguments added (new file)

Wed Jan 22 01:59:09 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* configure.in (pike_cv_sys_nonblock): Added workaround for this
	test hanging on AmigaOS (Thanks to Bernhard Fastenrath).

	* dynamic_load.c (f_load_module): Added support for dld-style
	dynamic-linking (Thanks to Bernhard Fastenrath).

Tue Jan 21 23:26:50 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* modules/system/system.c: Moved out several system-calls from the
	spider module to a separate system-module.

Sun Jan 19 01:03:49 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* new module system implemented. '.' operator utilized

Sat Jan 18 13:54:23 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* f___version moved from main.c to version.c and renamed to f_version.
	* version() removed from master.pike
	* new functions: _refs() and replace_master()
	* All Makefile.src removed, Makefile.in are now used togheter
	  with autoconf's include file feature instead.
        * file.c (do_read): interrupt checking is back since I do not
	  know why it was commented out.
	* gdbmmod.c: index operator added

Sat Jan 18 18:48:06 1997  Henrik Grubbstrm  <grubba@infovav.se>

	* main.c (f___version): Moved Pike version information from
	master.pike to efun __version() in main.c.

Fri Jan 17 10:59:26 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* master.pike, simulate.pike, getopt.pre.pike: cleaned up some
	  bugs from the 17th

Wed Jan 15 16:56:09 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* main.c, master.pike: --version implemented
	* mysql.c: now compiles even if you don't have mysql
	* object.c, language.yacc, interpret.c, docode.c, etc.: 
	  It is now possible to use `[] and `[]= to overload indexing
 	  and `-> and `->= to overload the arrow operator.
	* signal_handler.c (f_signal): signals are now checked before
	  any handlers are changed.
	* language.yacc: master()->resolv(ident, file) now implemented
	  in pike binary
	* Makefile.src (install): now installs all .h files in
	  /usr/local/include/pike/
	* configure.in: Added test for -rdynamic on linux
	* master.pike: version now 0.4pl1 (internal)

Tue Jan 14 17:59:06 1997  Niels Mller  <nisse@beldandy.infovav.se>

	* dynamic_load.c (f_load_module): Now strips filename extension,
	instead of keeping only leading [a-zA-Z]+. Thus handles symbols
	containing underscore better.

	* main.c (exit_main): Call cleanup_objects() *before*
 	exit_dynamic_load(). Otherwise, cleanup_object() will try to
 	destruct objects whose corresponding program have been freed and
 	unloaded.

Sun Jan 12 00:30:39 1997  Per Hedbor  <per@puck.infovav.se>

	* configure.in,threads.h: Added support for Unix threads, and also
 	the macro th_setconcurrency. This macro is more or less needed to
 	make truly multithreaded programs on Solaris.

	* threads.c: Added the new efun thread_set_concurrency, sets the
 	concurrencylevel to a new value. Default on Solaris is the number
 	of CPUs + 1, and since one thread is already used by the signal
 	handler, no Solaris program is truly multithreaded without this
 	function. Note that any number of user-level threads can do
 	certain system calls, since they are implemented in a non-blocking
 	way in the user level threading library, but functions like the
 	image module is not non-blocking, and needs this new efun to
 	thread nicely.

	This function is not available when using posix threads, but it is
	possible to create 'bound' threads, this should perhaps be done in
	pike.
	
Sun Jan 12 02:08:01 1997  Henrik Grubbstrm  <grubba@skuld.infovav.se>

	* configure.in: Enabled the setting of LDFLAGS and CPPFLAGS.

Sat Jan 11 23:37:22 1997  Henrik Grubbstrm  <grubba@skuld.infovav.se>

	* configure.in: Now checks if ld supports -R.

Fri Jan 10 00:37:16 1997  Henrik Grubbstrm  <grubba@skuld.infovav.se>

	* sql.pre.pike: Added generic SQL-module.

Sun Jan  5 20:21:29 1997  Henrik Grubbstrm  <grubba@skuld.infovav.se>

	* modules/mysql/configure.in: Added support for Mysql 3.20.0.

	* master.pike (add_precompiled_program): Added support for
	hierarchial /precompiled/ constant names.

Fri Jan  3 22:10:49 1997  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* Version 0.4 released

Sat Dec 28 15:19:28 1996  Henrik Grubbstrm  <grubba@skuld.infovav.se>

	* dynamic_load.c (f_load_module): now throws the result of dlerror()
	when dlopen() fails instead of returning 0.

	* modules/mysql/: Added module.

Sun Dec 15 07:50:35 1996  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* file.c (file_close): fixed a file descriptor leak

Tue Dec 10 16:43:55 1996  David Hedbor  <neotron@mouser.hedbor.org.>

	* language.yacc (string): Added extern int cumulative_parse_error
	in yyerror. 

Sun Dec  8 21:54:37 1996  David Hedbor  <neotron@mouser.hedbor.org.>

	* port.h (EXTRACT_UWORD): *_*WORD was defined as *_*WARD_ when
 	compiling without debug.

Sat Dec  7 18:10:34 1996  David Hedbor  <neotron@mouser.hedbor.org.>

	* port.h: Fixed declaraion for MEMCMP.

	* port.c (MEMMOVE): char * was missing before a=(char *)aa;
	(MEMCMP): fixed declaration (void -> int) and added a return 0.

Fri Dec  6 08:51:30 1996  Per Hedbor  <cardeci@cluracan>

	* modules/files/efuns.c: Threaded file_stat and rm. More efuns
  	  should be threaded, especially get_dir.

	* threads.c (th_init): Fixed types for thread_create (should
	  return object, not int.)

Thu Dec  5 13:34:40 1996  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* callback.c, gc.c: fixed garbage collection calls

Wed Dec  4 20:42:05 1996  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* new functions: _next and _prev
	* zero_type now returns 2 for destructed object/functions

Thu Dec  5 04:18:41 1996  Per Hedbor  <per@puck.infovav.se>

	* interpret.c (lvalue_to_svalue_no_free): Added special error
	message for indexing of 0.

Wed Dec  4 16:33:53 1996  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* callback.c: fixed a memory leak and added more debug
	* new efun: _memory_usage

Wed Dec  4 05:01:00 1996  Niels Mller  <nisse@skuld.infovav.se>

	* modules/ssleay/ssleay.c (init_context): Increment reference count.

Wed Dec  4 09:15:42 1996  Per Hedbor  <per@skuld.infovav.se>

	* modules/files/file.c (do_read): Fixed memory corrupton error.

Tue Dec  3 16:27:30 1996  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* las.c, language.yacc: fixed a memory leak and added more debug

Mon Dec  2 17:49:16 1996  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* master.pike: cast_to_object now handles relative paths better
	* install-sh: now uses autoconf install-sh
	* callback.c: fix to handle recursive calls (hopefully)

Tue Dec  3 02:53:25 1996  Henrik Grubbstrm  <grubba@cuckoo.infovav.se>

	* modules/ssleay/configure.in: Made the tests more paranoid

Sun Dec  1 22:15:12 1996  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* array.c: ({ destructed_object }) - ({ 0 }) should now work properly
	* builtin_efuns.c: glob fixed

Wed Nov 27 10:15:59 1996  Niels Mller  <nisse@morpheus.infovav.se>

	* dynamic_load.c (f_load_module): Fixed bugs when building file
	name.

Tue Nov 26 21:36:40 1996  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* master()->cast_to_program() now searches through
	  PIKE_INCLUDE_PATH if you give it a program name without
	  any slashes in it.
	* zero_type now accepts 'mixed'
	* object_program now accepts 'mixed'

Mon Nov 25 13:22:15 1996  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* /precompiled/stack added
	* language.yacc: Pike now allows extra semicolons on top level
	  without giving an error
	* language.yacc: crasing bug in string-to-program fixed.
	* language.yacc: foreach(foo, int bar) now works
	* las.c: constants are now constant and can be used in
	  switches and other constant expressions.
	* las.c, pike_types.c: better error messages instead of
	  "bad arguments to function call"

Thu Nov 21 15:35:04 1996  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* interpret.c (init_interpreter): if opening /dev/zero fails
	  stack will be malloc()ed instead.
	* gc.c: recursive calls to gc() now prevented

Mon Nov 18 03:39:38 1996  Niels Mller  <nisse@cuckoo.infovav.se>

	* modules/gmpmod/mpz_glue.c (mpzmod_digits): Made base 10 default
	if no argument is given.
	(mpzmod_invert): new function.
	(mpzmod_size): new function.

Sun Nov 17 02:59:55 1996  Niels Mller  <nisse@cuckoo.infovav.se>

	* modules/gmpmod/mpz_glue.c (mpzmod_digits): new function
	(mpzmod_create): Can now be called with two args, one string of
 	digits and an integer base.
	(mpzmod_sqrtrem): new function
	(mpzmod_gcdext): new function
	(mpzmod_gcdext2): new function
	(init_gmpmod_programs): Registered new functions. Fixed powm bug.

Fri Nov 15 21:09:10 1996  Fredrik Hubinette  <hubbe@cytocin.hubbe.net>

	* support for zlib added

Thu Nov  7 20:49:42 1996  Fredrik Hubinette  <hubbe@tymin.signum.se>

	* 'constant foo=<value>;' implemented on top level
	* prog(); works now works like clone(prog)
	* clone removed
	* object(const) or object("prog") can now be used
	* class foo {}; now works like constant foo = class {};

Sat Nov  2 22:17:45 1996  Fredrik Hubinette  <hubbe@tymin.blarg.com>

	* language.yacc: if(int a) implemente
	* configure.in: --without-threads implemented

Fri Nov  1 15:47:48 1996  Fredrik Hubinette  <hubbe@tymin.blarg.com>

	* new functions: uniq, implode_nicely
	* master.pike: changed backtrace order
	* f_upper_case/f_lower_case now uses EXTRACT_UCHAR
	* some documentation about pike internals added
	* htmlify_docs.pike fixed to handle internal docs
	* mpz->powm fixed
	* modules/math/math.c: sqrt optimized
	
Tue Oct 29 16:12:03 1996  Fredrik Hubinette  <hubbe@tymin.blarg.com>

	* builtin_functions.c upper_case/lower_case: should now fix 8 bit chars

Fri Oct 25 04:16:54 1996  Fredrik Hubinette  <hubbe@skuld.infovav.se>

	* read_file, stderr, stdout, stdin added

Tue Oct 15 06:01:26 1996  Fredrik Hubinette  <hubbe@skuld.infovav.se>

	* thread swaps, gc, object destruction and signal handling
	  is now handled by generic evaluator callbacks
	* /precompiled/FILE added
	* strmult, find_option, get_args added
	* while(1); now compiles correctly

Sat Oct 12 20:03:39 1996  Fredrik Hubinette  <hubbe@skuld.infovav.se>

	* string hash table now grows when needed
	* v0.2 realeased

Wed Oct  9 04:02:29 1996  Fredrik Hubinette  <hubbe@nuala.infovav.se>

	* /precompiled/string_buffer added
	* /precompiled/queue added
	* configure script improved with --with-xxx options
	* mmapped stacks should now work
	* catch() should now work in handle_error

Tue Oct  8 21:26:02 1996  Fredrik Hubinette  <hubbe@nuala.infovav.se>

	* gmpmod should now compile even if gmp.h is available, but not libgmp

Tue Oct  8 06:19:19 1996  Fredrik Hubinette  <hubbe@cuckoo.infovav.se>

	* New efun: load module
	* bug in copy_mapping fixed

Sat Oct  5 02:53:14 1996  Fredrik Hubinette  <hubbe@teleute.infovav.se>

	* /precompiled/fifo added (with #include <fifo.h>)
	* sprintf now handles zeros in format string correctly

Fri Oct  4 01:45:45 1996  Fredrik Hubinette  <hubbe@beldandy.infovav.se>

	* Threads support added!

Wed Sep 25 01:35:46 1996  Fredrik Hubinette  <hubbe@morpheus.infovav.se>

	* mapping.c: destructed function/objectpointers might now be
	  handled correctly... :)
	* mpz and readline configure files now check that both .h files
	  and libraries exists...

Mon Sep 23 01:20:00 1996  Fredrik Hubinette  <hubbe@morpheus.infovav.se>

	* svalue.h: forgot to include BIT_FUNCTION in BIT_COMPLEX...
	* mapping.c: destructed functionpointers might now be handled
	  correcly
	* testsuite genration changed so every module has it's own
	  testsuite
	* file module: fatal strerror bug fixed
	* mapping.c: bug for destructed objects fixed
	* builtin_functions.c (f_crypt): workaround for sun CC included
	* v0.1 released

Thu Sep 19 14:25:07 1996  Fredrik Hubinette  <hubbe@jolt.infovav.se.>

	* all_efuns renamed to all_constants
	* new efun: errno
	* flat and old mappings removed
	* -p for opcode profiling added
	* gc <-> mapping interaction bug fixed
	* memory leak in for() fixed
	* new opcodes: F_LOCAL_INDEX F_POS_INT_INDEX F_NEG_INT_INDEX
	*              F_STRING_INDEX
	* F_ASSIGN_GLOBAL now works
	* stack allocation through mmap now works
	* gc() and destruct() delayed to be called inside evaluator.
	* put #include <simulate.h> in your files to get old behaviour
	* simulate.lpc removed.
	* perror renamed to werror
	* list renamed to multiset
	* add_efun renamed to add_constant
	* uLPC renamed to Pike

Tue Aug 20 01:16:48 1996  Fredrik Hubinette  <hubbe@signum.se>

	* version 0.000002 released

Tue Aug 13 12:16:06 1996  Fredrik Hubinette  <hubbe@freeone.signum.se>

	* gpmmod should now work with older versions of GMP.

Mon Aug 12 18:08:12 1996  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* array.c: some bugs in type_field fixed
	* array.c: more debug added
	* main.c: -s <stacksize> added
	* svalue.c: made is_eq 'safe' (it does not change the svalue argument)
	* svalue.c: type_field bug fixed in garbage collect
	* file.c: a memory trashing bug fixed when opening files...

Tue Aug  6 13:33:51 1996  Fredrik Hubinette  <hubbe@axel.signum.se>

	* call_out.c: call outs now have unique ids, so you can remove
	  them individually.
	* opcodes.c: sscanf now accepts field sizes for %c and %s
	* signal_handler.c: signal(signum,0) now means SIG_IGN

Tue Aug  6 00:02:14 1996  Fredrik Hubinette  <hubbe@sparky.signum.se>

        * memory.c: fixed a bug in memory searcher (8 bit chars)
        * las.c: fixed so that the --loop and ++loop works again
	* docode.c: if(foo && bar) opimized (one jump less)
	* simulate.c (regexp): now frees regexp correctly

Thu Aug  1 15:26:12 1996  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* Makefile.src: a few bugs fixed
	* backend.c: now handles unsigned tv_sec better
	* callback.c: bugs fixed, comments added
	* configure.in: now checks for mmap
	* docode.c: if() no longer uses count_args
	* docode.c: one jump eliminated from for() loops
	* interpret.c: stack now allocated with mmap when possible
	* interpret.c: catch() inline warning removed...
	* interpret.c: F_DEC_LOCAL_AND_POP now works...
	* interpret.c: new opcodes: F_MARK2, F_SIZEOF, F_SIZEOF_LOCAL
	*             F_CALL_LFUN_AND_POP
	* language.y: gauge can now take a block of code as argument
	* lex.c: added `[] and `[]=
	* rusage.c: bug fixed when no rusage() was found
	* mpz module now checks that libgmp is new enough
	* readline module now checks for both <readline.h> and
	  <readline/readline.h>

Mon Jul 22 12:04:34 1996  Fredrik Hubinette  <hubbe@freeone.signum.se>

	* interpret.c (catch): return should now work from inside catch
	  all catch statements are now exited through return or throw
	* readlinemod: now checks for <readline/readline.h> too

Mon Jul  8 23:52:48 1996  Fredrik Hubinette  <hubbe@axel.signum.se>

	* Pike v1.0E-6 released
	* hilfe.lpc now uses readline (line editing! history!)
	* bug in true/false values fixed
	* readline module added

Tue Jul  2 13:44:02 1996  Fredrik Hubinette  <hubbe@freeone.signum.se>

	* Pike v1.2E-7 released
	* added check to see if gettimeofday takes one or two args,
	  Pike should now compile on HP and Linux again.

Mon Jul  1 17:55:26 1996  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* Pike v1.1E-7 released
	* call_out and sleep now works again.

Sat Jun 22 02:46:22 1996  Fredrik Hubinette  <hubbe@axel.signum.se>

	* Pike v1.0E-7 released

Fri Jun 21 20:32:00 1996  Fredrik Hubinette  <hubbe@tymin.signum.se>

	* simulate.lpc optimized
	* reorganize optimized (used by lists and sort and other stuff)
	* type checks now optimize int|int to just int
	* #include now honours "" and <>
	* stack size increased
	* callback.c is actually useful now..
	* sleep now handles floats for delays smaller than seconds.
	* backend now handles delays shorter than seconds.
	* backend has callbacks to allow call_out for module(s)
	* explode and string replace optimized (memory searcher)
	* better stack checks added
	* `<< method added to /precompiled/file
	* call_out moved to a module, call_out now handles floating point
	  delays.
	* Makefile and configure script added to the module directory.
	* 'private inherit' now works as you might expect

Wed Jun 19 01:22:53 1996  Fredrik Hubinette  <hubbe@tymin.signum.se>

	* Operator overloading added.
	* new simulated function: putenv
	* gmp module added, implements LARGE numbers. (/precompiled/mpz)
	* C++ style output is now possible with <<

Sun Jun  9 16:33:16 1996  Fredrik Hubinette  <hubbe@tymin.signum.se>

	* second argument to file->read() added
	* 2 new mapping implementations, the default one is an open
	  hashtable implementation.
	* new efuns: sort, rows, column, _verify_internals
	* signal_handler.c: signal calling is now blocked when inside
	  a signal call.
	* soon available: glob, localtime, strerror

Thu May 30 03:12:15 1996  Fredrik Hubinette  <hubbe@tymin.signum.se>

	* file->read() now takes a second argument which can tell it
	  that it sould only make one read()
	* new efun: sort()
	* new mapping implementation (hashed mappings)

Mon May 27 03:39:20 1996  Fredrik Hubinette  <hubbe@axel.signum.se>

	* Pike v1.0E-8 released

Thu May 16 00:53:16 1996  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* fixed some major bugs in gc()
	* undefing GC2 now works
	* create_testsuite: tests for gdbmmod added
	* test_lpc.lpc: added conditional tests
	* module doc dirs moved to the module dirs.

Mon May 13 22:20:24 1996  Fredrik Hubinette  <hubbe@axel.signum.se>

	* -Wunused removed
	* new module: gdbmmod
	* svalue.c: bug in garbage collect fixed

Fri May  3 13:50:05 1996  Fredrik Hubinette  <hubbe@freeone.signum.se>

	* las.c: type-checking improved

Sat May  4 13:40:48 1996  Fredrik Hubinette  <hubbe@tymin.signum.se>

	* Pike_v1.1E-9 released.
	* pike_types.c (internal_parse_typeA): fixed a minor bug

Wed May  1 00:49:36 1996  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* Pike_v1.0E-9 released.

Mon Apr 29 20:47:31 1996  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* Makefile.in: All makefiles are now generated from Makefile.src ->
	  Makefile.in -> Makefile. This is so I don't have to save
	  dependencies in my CVS repository :)

Tue Apr 23 22:32:04 1996  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* Makefile.in: Now language.c and language.h is a part of the
	  distribution so you won't need bison to compile.

Sat Apr 13 04:00:45 1996  Fredrik Hubinette  <hubbe@tymin.signum.se>

	* simulate.lpc: replaced sort_array with a faster one
	* operators.c: optimization fixed for operators
	* crypt() should now work with BSD crypt() I hope
	* lots of files: added a peephole optimizer

Thu Apr 11 23:13:24 1996  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* apply on void functions fixed
	* case -1 fixed

Tue Apr  2 17:01:10 1996  Fredrik Hubinette  <hubbe@tymin.signum.se>

	* signal.c: alarm() added
	* language.y: gauge() fixed

Sun Mar 31 22:12:43 1996  Fredrik Hubinette  <hubbe@axel.signum.se>

	* Pike v1.0E-10 released.

Sun Mar 31 00:29:22 1996  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* make html_docs: new command to create a directory with
	  html documentation for Pike. This documentation can then
	  be copied to a WWW directory.

Sat Mar 23 19:02:40 1996  Fredrik Hubinette  <hubbe@tymin.signum.se>

	* array.c: arrays are always initalized to zero to avoid
	  gc() blowups

Fri Mar 22 21:57:43 1996  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* regexp.c: added + operator, and added support for 8-bit
	  characters.

Mon Mar  4 00:00:19 1996  Fredrik Hubinette  <hubbe@tymin.signum.se>

	* hilfe.lpc: fixed a bug when doing 'mapping m=([]);'

Fri Mar  1 00:35:40 1996  Fredrik Hubinette  <hubbe@tymin.signum.se>

	* language.y: Added support for a[..n] and a[n..]
	* configure.in: added test for %pure_parser

Sun Feb 25 22:42:48 1996  Fredrik Hubinette  <hubbe@tymin.signum.se>

	* operator functions implemented
	* typeof() added

Sat Feb 24 04:12:52 1996  Fredrik Hubinette  <hubbe@tymin.signum.se>

	* program.c, array.c, object.c, gc.c: 
	  Added routines to remove cyclic structures.
	* sprintf: added support for %2c
	* removed compact arrays

Fri Feb 23 02:39:11 1996  Fredrik Hubinette  <hubbe@tymin.signum.se>

        * version 1.7E-12 released
	* file->close() fixed to handle unknown errors

Sun Feb 11 01:04:38 1996  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* export.lpc: now updates configure files if needed
	* create_testsuite: added tests for sscanfs %d %o and %x
	* opcodes.c: changed sscanf to use strtol
	* machine.h.in: changed USE_FCNTL_NONBLOCK to what it should be:
	  USE_FCNTL_O_NONBLOCK
	* simulate.lpc: fixed an add_efun for exec
	* Updated a LOT of docfiles.

Sat Feb 10 02:26:25 1996  Fredrik Hubinette  <hubbe@tymin.signum.se>

	* array.c: fixed a coredump when doing & on one compact and
	  one noncompact array.
	* language.y: fixed so that continue now always need a semicolon
          after it.
        * builtin_efuns.c: replace_many fixed.
	* array.c: fix_type_field fixed.
	* las.c: fixed node_is_equal, it can now see the differance between
          different global variables :P

Mon Nov 20 16:52:32 1995  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* builtin_efuns.c (replace_many): Fixed an array bound read.
	* compilation.h: No more macros with empty arguments.
	* configure.in: changed the mystic 'oneshot signals' message
	* interpret.c: print_treturn_type -> print_return_value
	* language.y: inline now implies no_mask
	* machine.h.in: moved HAVE_GETWD & HAVE_GETCWD to files module
	* opcodes.c: changed strtod to STRTOD
	* sprintf.c: fixed some typos, optimized and a bugfix in truncating
	* create_testsuite: added test for get_dir()

Wed Nov 15 10:56:45 1995  Fredrik Hubinette  <hubbe@sparky.signum.se>

        * version 1.6E-12 released

	* configure.in, machine.h.in: moved tests for waitpid and wait4
          here from modules/files/file.c (no more zombie processes)
	* program.c (end_program): fixed a memory leak

        * version 1.5E-12 released

	* sprintf.c: now includes memory.h (for xalloc)
	* configure.in: added check to see if -pipe works, fixed caching of
          oneshot signal tests.
	* builtin_efuns.c: exit() now only deallocates memory when PIKE_DEBUG
	  is defined.

Tue Nov 14 04:57:29 1995  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* configure.in: Added a kluge for the linux -g -lm bug

	* language.y: major bug: free on totally wrong value fixed
	* signal_handler.c: forgot to initialize an element in the struct
          sigvec or sigaction: fixed
	* array.c (compact_array): Used wrong type, screwed up
          a lot of things. Now fixed
	  (low_lookup): Didn't work correctly if sizeof(int)!=sizeof(char*)
	* svalue.c (is_eq): if sizeof(int) != sizeof(char *) this
	  didn't work

Mon Nov 13 00:40:13 1995  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* svalue.c (is_eq): added T_PROGRAM to is_equal

Sun Nov 12 21:45:20 1995  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* modules/file: struct file renamed to struct my_file
	* "" now works

Mon Nov  6 00:26:48 1995  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* indices and values now works on objects

        * v1.0E-12 released

	* master.lpc: now seeds random generator
	* simulate.lpc: call_other removed
	* arrays, mappings, objects and lists added as efuns can now
          be modified. (That is, their contents can be modified.)
	* language.y: catch can now take a block as argument
	* modules/file/file.c: low level fd handling rewritten,
          will behave differently when more than one /precompiled/file
          points to the same fd. No more fatals for select()ing the wrong
          filedescriptors I hope.
	* object.c: added a destructor called destroy. destroy will be
          called in all objects when it is destructed. It can not stop
          the destruction though.
	* interpret.c: added more trace information to -t4
	* moved the testsuite to src/tests/
	* created a testsuite that verifies the doc/ directory
          (test/verifymanual.lpc)
        * signal_handler.c: fixed to use sigvec/sigaction if possible
          also added checks for EINTR all over the place.

Sat Nov  4 04:08:46 1995  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* modules/file/file.c: Reorganized, changed the underlying
          data structures to work better.

Fri Nov  3 23:26:12 1995  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* language.y: fixed a coredumping bug when the first function
          was missing type.

Thu Nov  2 00:13:20 1995  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* fixed various #include to compile with A/UX
	* fixed signal handling to use sigaction/sigvec/signal

Tue Oct 31 18:57:49 1995  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* Makefile.in, config.h: moved PIKE_DEBUG to Makefile
	* signal_handler.c: fixed a warning

Sun Oct 29 04:02:03 1995  Fredrik Hubinette  <hubbe@sparky.signum.se>

        * v1.0E-13 released

	* modified uhttpd.lpc to use class {}
	* file.c: when several file objects were point at one fd, the
          callbacks would be removed even if the callbacks were not to
          that object.
	* program.c: fixed so that checking types against prototypes is
          only done when the prototype isn't inherited
	* language.y: fixed a core-dumping bug when doing foo::bar on an
          unknown identifier
        * compile.h: new file that handles pusing/popping of compile related
          state information
        * program.c: moved state pusing/popping to compile.h
        * lex.c: added keyword class and cleaned up a little
	* language.y: Added class {} and fixed a scope bug 
        * Started using CVS

Tue Oct 24 00:13:18 1995  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* everything; fixed implicit casts to explicits in < > <= >=

	* builtin_efuns.c (f_values & f_indices): fixed a loop with
	  undefined behaviour, now it works.

	* svalue.c (copy_svalues_recursively_no_free): Changed
	  (*to=*from).u.refs[0]++; to *to=*from; from->u.refs[0]++;
          because hp-cc didn't handle the first case. 

Sun Oct 22 22:50:49 1995  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* svalue.c (assign_from_short_svalue_no_free): Moved
	  assignmet to make it work with stupid compilers. (HP-cc)

	* main.c (main): put #ifdef's around usage of RLIM_INFINITY

	* configure.in: Added special patch for HP-UX cc,
	  also changed so that -pipe -g -W -Wunused -Wformat is only
          used with gcc.
          Fixed #ifdef <-> #if problem in test for byteorder
	* all files: removed extra includes of stdlib.h, stdio.h and unistd.h

Sat Oct 21 01:38:37 1995  Fredrik Hubinette  <hubbe@tymin.signum.se>

	* array.c (compact_array): this routine would allocate
          array(int) when given an array(string|zero) if first
	  index was zero.
	* array.c (low_lookup): Failed to lookup zeroes in a short
          string *: FIXED

	* create_testsuite: added a few thousand tests on switch()

	* configure.in: Removed the definition of SOLARIS that
	  causes mutex lock around accept()
	  also added search for -lcrypt
	* mapping.c: fixed so that order_mapping doesn't do
          free(0) sometimes..
	* modules/files/file.c: fixed a missing ; in the simulated
	  socketpair().

Thu Oct 19 12:48:58 1995  Fredrik Hubinette  <hubbe@freeone.signum.se>

	* v1.1E-14 Released

	* array.c: when sorting an array for switch(), it would dump core
	  if there was strings and zeroes, but nothing else. FIXED

Tue Oct 17 21:45:31 1995  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* v1.0E-14 Released

	* las.c (optimize): Fixed a rather nasty bug that caused
	  segfaults in loops like for(something;x++;somethingelse) {}

	* language.y: fixed so you can declare variables as:
	  function(int,int:int) foo;
	* pike_types.c: fixed a nasty bug in typechecker, also made
	  'mixed' match 'void' (simpler that way)
	* program.c: Fixed a nasty bug that made ::identifier dump
          core if identifier was inherited indirectly.

Sat Oct 14 01:58:13 1995  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* v1.1E-15 Released

	* call_out.c (verify_call_outs): Fixed so that this function
	  is actually run (when compiled with PIKE_DEBUG and usint -d)
	  Also fixed a bug when doing call_out 0 or less...

	* interpret.c (strict_apply_svalue): Moved fix to a bug
	  to apply_svalue, so I don't cause a new bug.
	  (void functions left droppings on the stack)

Thu Oct 12 22:33:26 1995  Fredrik Hubinette  <hubbe@sparky.signum.se>

	* v1.0E-15 Released

	* Makefile.in: targets 'export' added, and 'depend' fixed
	  make depend now uses a Pike script to get rid of include
	  and pathnames
	* simulate.lpc: added system()
	* file.c: added file->set_close_on_exec()

	* Changelog started
