If you notice something wrong, strange or broken, try rereading:

   README.FIRST
   HOWTO.INSTALL
   BUGS (this file)

If that does not help, cd to the calc source directory and try:

   make check

Look at the end of the output, it should say something like:

    9998: passed all tests  /\../\
    9999: Ending regression tests

If it does not, then something is really broken!

If you made and modifications to calc beyond the simple Makefile
configuration, try backing them out and see if things get better.

To be sure that your version of calc is up to date, check out:

	http://www.isthe.com/chongo/tech/comp/calc/calc-download.html

The calc web site is located at:

	http://www.isthe.com/chongo/tech/comp/calc/index.html

=-=

If you have tried all of the above and things still are not right,
then it may be time to send in a bug report.  You can send bug
and bug fixes reports to:

    calc-bugs at asthe dot com

    [[ NOTE: Replace 'at' with @, 'dot' is with . and remove the spaces ]]
    [[ NOTE: The EMail address uses 'asthe', the web site URL uses 'isthe' ]]

Your subject must contain the words:

       calc bug report

You may have additional words in your subject line.

When you send your report, please include the following information:

    * a description of the problem
    * the version of calc you are using (if you cannot get calc
      to run, then send us the 4 #define lines from version.c)
    * if you modified calc from an official patch, send me the mods you made
    * the type of system you were using
    * the type of compiler you were using
    * any compiler warnings or errors that you saw
    * cd to the calc source directory, and type:

	make debug > debug.out 2>&1		(sh, ksh, bash users)
	make debug >& debug.out			(csh, tcsh users)

      and send the contents of the 'debug.out' file.

Stack traces from core dumps are useful to send as well.

Fell free to use the above address to send in big fixes (in the form
of a context diff patch).

=-=

Known bugs:

    We are sure some more bugs exist.  When you find them, please let
    us know!  See the above for details on how to report and were to
    EMail your bug reports and hopefully patches to fix them.

=-=

mis-features in calc:

    Some problems are not bugs but rarther mis-features / things that could
    work better.  The following is a list of mis-features that should be
    addressed and improved someday.

    * When statement is of the form { ... }, the leading { MUST BE ON
      THE SAME LINE as the if, for, while or do keyword.

      This works as expected:

	if (expr) {
	    ...
	}

      However this WILL NOT WORK AS EXPECTED:

	if (expr)
	{
	    ...
	}

      This needs to be changed.  See also "help statement", "help unexpected",
      and "help todo".

    * The chi.cal resource file does not work well with odd degrees
      of freedom.  Can someone improve this algorithm?

    * The intfile.cal resource file reads and writes big or little Endian
      integers to/from files the hard way.  It does NOT use blkcpy.  The
      following code:

	i = (ord("\n") << 16) | (ord("i") << 8) | ord("H")
	b = blk()
	copy(i, b)
	fd = fopen("file", "w")
	copy(b, fd);
	fclose(fd)

      will write an extra NUL octet to the file.  Where as:

	read intfile
	i = (ord("\n") << 16) | (ord("i") << 8) | ord("H")
	be2file(i, "file2")

      will not.

=-=

Problems with old systems that have known work-a-rounds:

    * There is a bug in gcc-2.95 that causes calc, when compiled with -O2,
      to fail the regression test.  The work-a-round is to compile with -O
      or to use gcc-2.96 or later.

    * There are problems compiling calc on the sparcv9 under 64 bit
      Solaris.	On that platform, gcc-2.96 is able to compile calc, but
      calc dumps core very early on in startup.	 It is said that sparcv9
      support in gcc-2.96 is very unofficial and thus there is no
      work-a-round for gcc-2-96.

      There is a work-a-round for this architecture us one is using the
      Solaris CC on the sparcv9.  It has been reported that setting the
      following Makefile variables will produce a working version of
      calc on the sparcv9 under 64 bit Solaris:

	    LCC="cc -xarch=v9"
	    CCWARN="-DFORCE_STDC -w"
	    DEBUG="-fast -xarch=v9"

## Copyright (C) 1999-2006  Landon Curt Noll
##
## Calc is open software; you can redistribute it and/or modify it under
## the terms of the version 2.1 of the GNU Lesser General Public License
## as published by the Free Software Foundation.
##
## Calc is distributed in the hope that it will be useful, but WITHOUT
## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
## or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU Lesser General
## Public License for more details.
##
## A copy of version 2.1 of the GNU Lesser General Public License is
## distributed with calc under the filename COPYING-LGPL.  You should have
## received a copy with calc; if not, write to Free Software Foundation, Inc.
## 59 Temple Place, Suite 330, Boston, MA  02111-1307, USA.
##
## @(#) $Revision: 29.26 $
## @(#) $Id: BUGS,v 29.26 2007/01/03 21:26:22 chongo Exp $
## @(#) $Source: /usr/local/src/cmd/calc/RCS/BUGS,v $
##
## Under source code control:	1994/03/18 14:06:13
## File existed as early as:	1994
##
## chongo <was here> /\oo/\	http://www.isthe.com/chongo/
## Share and enjoy!  :-)	http://www.isthe.com/chongo/tech/comp/calc/
