more documentation changes

Fergus Henderson fjh at cs.mu.oz.au
Sun Jul 27 03:38:23 AEST 1997


Update the documentation in preparation for the next release.

BUGS:
	Add an entry for the one bug currently on my outstanding
	bugs list that is not already documented either here on
	in the LIMITATIONS file.

RELEASE_NOTES:
	Add mention of the stuff in the extras directory.
	Mention that it works on Windows NT.

cvs diff: Diffing .
Index: BUGS
===================================================================
RCS file: /home/staff/zs/imp/mercury/BUGS,v
retrieving revision 1.5
diff -u -r1.5 BUGS
--- BUGS	1997/07/26 13:53:25	1.5
+++ BUGS	1997/07/26 15:28:35
@@ -103,3 +103,36 @@
 sometimes prints out the wrong value for the PC.
 
 -----------------------------------------------------------------------------
+Subject: bug with polymorphic abstract exported equivalence types
+Date: Tue, 27 May 1997 20:42:43 +1000 (EST)
+
+The compiler generates incorrect code for the following program.
+The problem is that at the call to f/1 in module bar, f/1 has
+type `func(foo(T)) = int', and so it passes the type_info in r1
+and the foo(T) (== int) in r2.  But in the definition it has type
+`func(int) = int', so it just passes the int in r1.
+Similarly for the call to c/0.
+
+:- module foo.
+:- interface.
+:- func f(foo(T)) = int.
+:- type foo(T).
+:- func c = foo(int).
+:- implementation.
+:- import_module int.
+:- type foo(T) == int.
+
+f(X) = X + 1.
+
+c = 42.
+
+:- module bar.
+:- interface.
+:- import_module io.
+:- pred main(io__state::di, io__state::uo) is det.
+:- implementation.
+:- import_module foo.
+main -->
+	write(f(c)), nl.
+
+-----------------------------------------------------------------------------
Index: RELEASE_NOTES
===================================================================
RCS file: /home/staff/zs/imp/mercury/RELEASE_NOTES,v
retrieving revision 1.19
diff -u -r1.19 RELEASE_NOTES
--- RELEASE_NOTES	1996/07/26 09:19:01	1.19
+++ RELEASE_NOTES	1997/07/26 14:01:59
@@ -145,11 +145,9 @@
 The current Mercury system has been tested extensively on Solaris 2.x,
 IRIX 5.x, OSF/1.1, and Linux, and is also known to run on Ultrix 4.3,
 BSDI 1.1, AIX, and HPUX; it should run without too many changes on
-other Unix variants as well.  It also runs on Windows 95, using the
-gnu-win32 library, although the source distribution requires some
-tweaking to get it to work on Windows 95.  If you do encounter any
-problems, please report them to <mercury-bugs at cs.mu.oz.au> (see the
-BUGS file).
+other Unix variants as well.  It also runs on Windows 95 and Windows
+NT, using the gnu-win32 library.  If you do encounter any problems,
+please report them to <mercury-bugs at cs.mu.oz.au> (see the BUGS file).
 
 The current source distribution uses gcc as the compiler.  We require gcc
 version 2.6.3 or higher.  You will also need GNU make version 3.69 or higher.
@@ -172,6 +170,10 @@
      o  the Mercury frequently asked questions list
      o  the Prolog to Mercury transition guide
      o  some sample Mercury programs
+     o  some extra libraries for
+	- processing HTML forms using the CGI interface
+	- arithmetic on complex and imaginary numbers
+	- graphics using Tk and OpenGL
 
 The Mercury distribution is available via anonymous ftp or WWW
 from the following locations:

-- 
Fergus Henderson <fjh at cs.mu.oz.au>   |  "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh>   |  of excellence is a lethal habit"
PGP: finger fjh at 128.250.37.3         |     -- the last words of T. S. Garp.



More information about the developers mailing list