Tue Dec  3 02:53:25 1996  Henrik Grubbström  <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 Möller  <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 Möller  <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 Möller  <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 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 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 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
