Juan Jose Garcia Ripoll [Sun, 5 Feb 2012 08:40:37 +0000 (09:40 +0100)]
GET-MACRO-CHARACTER did not default to the standard readtable
Juan Jose Garcia Ripoll [Sun, 5 Feb 2012 08:21:47 +0000 (09:21 +0100)]
ECL did not build the help file without unicode
Juan Jose Garcia Ripoll [Sat, 4 Feb 2012 22:57:54 +0000 (23:57 +0100)]
Fixes to quick-sort so that it does not stall in the worst case scenario (list already sorted).
Juanjo Garcia-Ripoll [Fri, 3 Feb 2012 17:29:53 +0000 (18:29 +0100)]
Propagate UNREAD-CHAR from an ECHO-STREAM to its actual input stream (R. M. Kreuter)
Juan Jose Garcia Ripoll [Fri, 3 Feb 2012 14:16:26 +0000 (15:16 +0100)]
Detecting the stack direction did not work with very clever compilers.
Juan Jose Garcia Ripoll [Thu, 2 Feb 2012 23:47:02 +0000 (00:47 +0100)]
LOAD-TIME-VALUE evaluates its argument in an empty environment (interpreter)
Juan Jose Garcia Ripoll [Thu, 2 Feb 2012 22:54:19 +0000 (23:54 +0100)]
REGISTER-PRE-BUILT-SYSTEM did not "know" that a system name must be a string.
Juan Jose Garcia Ripoll [Thu, 2 Feb 2012 22:43:21 +0000 (23:43 +0100)]
safe_close() did not return output flag.
Juan Jose Garcia Ripoll [Thu, 2 Feb 2012 22:19:56 +0000 (23:19 +0100)]
LOAD-TIME-VALUE returned two values when passed two
Juan Jose Garcia Ripoll [Thu, 2 Feb 2012 22:00:21 +0000 (23:00 +0100)]
When a form had more than 63 arguments, it did not pass through the macro-expander.
Juan Jose Garcia Ripoll [Thu, 2 Feb 2012 20:55:26 +0000 (21:55 +0100)]
When etags fails, ignore the error.
Juan Jose Garcia Ripoll [Tue, 31 Jan 2012 22:03:15 +0000 (23:03 +0100)]
Fixed asdf:component-relative-pathname to allow specifying the file extension in prebuilt files.
Juan Jose Garcia Ripoll [Tue, 31 Jan 2012 22:02:33 +0000 (23:02 +0100)]
The interpreter only allowed LOAD-TIME-VALUE to take one argument.
Juan Jose Garcia Ripoll [Tue, 31 Jan 2012 21:00:09 +0000 (22:00 +0100)]
Upgraded version to 12.2.1
Juan Jose Garcia Ripoll [Wed, 25 Jan 2012 11:57:12 +0000 (12:57 +0100)]
In the prebuilt ASDF files, hard-code the paths of the compiled files, so that they can be found even if we switch to the bytecodes compiler.
Juan Jose Garcia Ripoll [Wed, 25 Jan 2012 10:56:50 +0000 (11:56 +0100)]
NEED-TO-MAKE-LOAD-FORM-P was not registered as taking two arguments [A. Paul]
Juan Jose Garcia Ripoll [Sun, 22 Jan 2012 22:41:38 +0000 (23:41 +0100)]
Added Windows dllexport declaration to ecl_to_size and ecl_fixnum_value
Juan Jose Garcia Ripoll [Sun, 22 Jan 2012 22:40:04 +0000 (23:40 +0100)]
Fixed typo in the non-inlined version of ecl_to_size().
Juan Jose Garcia Ripoll [Sun, 22 Jan 2012 22:28:49 +0000 (23:28 +0100)]
Fixed wrong #ifdef in file.d
Juan Jose Garcia Ripoll [Sun, 22 Jan 2012 22:16:26 +0000 (23:16 +0100)]
Fixed miscompilation in Mingw (Xiaofeng Yang)
Juan Jose Garcia Ripoll [Sun, 15 Jan 2012 18:54:06 +0000 (19:54 +0100)]
Unicode strings were not properly saved in C compiled code.
Juan Jose Garcia Ripoll [Sun, 15 Jan 2012 11:00:41 +0000 (12:00 +0100)]
Cleanup ecl_open_stream, removing gotos. Instead of using open() to check for the existence of a file, rely on si_file_kind().
Juan Jose Garcia Ripoll [Sun, 15 Jan 2012 10:22:10 +0000 (11:22 +0100)]
Create safe_* versions of open, fdopen, fopen, close, fclose, which are protected from interrupts.
Juan Jose Garcia Ripoll [Sun, 15 Jan 2012 10:18:04 +0000 (11:18 +0100)]
*compiler-break-enable* was sset to T by FIX-READ-ONLY-VARIABLE-TYPE.
Juan Jose Garcia Ripoll [Fri, 6 Jan 2012 23:04:02 +0000 (00:04 +0100)]
Fix header corruption in last build.
Juan Jose Garcia Ripoll [Fri, 6 Jan 2012 19:09:26 +0000 (20:09 +0100)]
The total size of each hash table in ECL-CDB was not stored properly
Juan Jose Garcia Ripoll [Fri, 6 Jan 2012 18:49:52 +0000 (19:49 +0100)]
Strip out the help file routines into a separate module that also provides the CDB interface (cr.yp.to/cdb/cdb.txt) on which the new help file is based.
Juan Jose Garcia Ripoll [Fri, 6 Jan 2012 18:48:52 +0000 (19:48 +0100)]
Fixes in the sequence-input/output-streams. UNREAD-CHAR did not work properly on them
Juan Jose Garcia Ripoll [Fri, 6 Jan 2012 18:27:39 +0000 (19:27 +0100)]
ecl_to_int64_t() contained a stray while(1).
Juan Jose Garcia Ripoll [Fri, 6 Jan 2012 10:47:00 +0000 (11:47 +0100)]
When extracting the byte content of an array, create vectors with a fill pointer.
Juan Jose Garcia Ripoll [Fri, 6 Jan 2012 10:46:25 +0000 (11:46 +0100)]
Restrict sequence input/output streams to byte arrays
Juan Jose Garcia Ripoll [Mon, 2 Jan 2012 22:12:17 +0000 (23:12 +0100)]
Fixed circularities when printing comments in the compiler and when printing the TRACE
Juan Jose Garcia Ripoll [Mon, 2 Jan 2012 21:54:27 +0000 (22:54 +0100)]
When printing out lambda expressions, use *PRINT-READABLY* nil
Juan Jose Garcia Ripoll [Sun, 1 Jan 2012 22:49:37 +0000 (23:49 +0100)]
Replace most uses of fixint with ecl_to_fix/ecl_to_size
Juan Jose Garcia Ripoll [Sun, 1 Jan 2012 22:39:01 +0000 (23:39 +0100)]
We introduce two functions, ecl_to_fix/ecl_to_size, which may be inlined and are more focused than fixint/fixnnint
Juan Jose Garcia Ripoll [Sun, 1 Jan 2012 19:18:45 +0000 (20:18 +0100)]
Simplified _ecl_get_fixnum/index under the assumption that input arguments will never include the zero fixnum.
Juan Jose Garcia Ripoll [Sun, 1 Jan 2012 19:17:05 +0000 (20:17 +0100)]
The SETF optimizer (try-simpler-expansion in setf.lsp) did not work properly when output of get-setf-expansion reordered the argument list.
Juan Jose Garcia Ripoll [Sun, 1 Jan 2012 18:32:50 +0000 (19:32 +0100)]
Type inference for LOGAND
Juan Jose Garcia Ripoll [Sun, 1 Jan 2012 18:32:32 +0000 (19:32 +0100)]
fixint()/fixnnint() did not work when sizeof(long) < sizeof(fixnum)
Juan Jose Garcia Ripoll [Sun, 1 Jan 2012 18:31:22 +0000 (19:31 +0100)]
Another THE->TRULY-THE change in evalmacros.lsp
Juan Jose Garcia Ripoll [Sun, 1 Jan 2012 14:49:36 +0000 (15:49 +0100)]
In TRUENAME, when a file pathname is found to be a directory pathname, run TRUENAME again to fix the pathname (solves problems with ../)
Juan Jose Garcia Ripoll [Sun, 1 Jan 2012 13:55:02 +0000 (14:55 +0100)]
Eliminate infinite recursion in makefiles.
Juan Jose Garcia Ripoll [Sun, 1 Jan 2012 13:53:55 +0000 (14:53 +0100)]
In LOOP, propagate the unsafe declarations to the whole assignment.
Juan Jose Garcia Ripoll [Sat, 31 Dec 2011 18:37:13 +0000 (19:37 +0100)]
Implemented EXT:TRULY-THE and made THE expand to either EXT:TRULY-THE or EXT:CHECKED-VALUE depending on the optimization settings.
Juan Jose Garcia Ripoll [Sat, 31 Dec 2011 17:46:01 +0000 (18:46 +0100)]
Change the syntax of CHECKED-VALUE so that it matches the one of THE.
Juan Jose Garcia Ripoll [Sat, 31 Dec 2011 15:31:13 +0000 (16:31 +0100)]
Wrong number of arguments passed to NEED-TO-MAKE-LOAD-FORM-P in the bytecodes compiler
Juan Jose Garcia Ripoll [Sat, 31 Dec 2011 15:21:17 +0000 (16:21 +0100)]
In pathnames, .. is translated to :UP, not :BACK.
Juan Jose Garcia Ripoll [Sat, 31 Dec 2011 11:26:28 +0000 (12:26 +0100)]
The truename of a link to a directory was not properly adjusted when the pathname was in 'file' form, that is (truename directory-link) vs (truename directory-link/)
Juan Jose Garcia Ripoll [Sat, 31 Dec 2011 02:41:09 +0000 (03:41 +0100)]
:UP removes actually two levels from directory (in TRUENAME)
Juan Jose Garcia Ripoll [Sat, 31 Dec 2011 02:36:44 +0000 (03:36 +0100)]
Remove debug statement
Juan Jose Garcia Ripoll [Sat, 31 Dec 2011 02:23:14 +0000 (03:23 +0100)]
Dots are removed from pathnames when parsing them.
Juan Jose Garcia Ripoll [Sat, 31 Dec 2011 02:16:15 +0000 (03:16 +0100)]
In TRUENAME, ".." was not eliminated from the path
Juan Jose Garcia Ripoll [Fri, 30 Dec 2011 22:22:58 +0000 (23:22 +0100)]
Fixed the UCS2-BE/LE decoders
Juan Jose Garcia Ripoll [Fri, 30 Dec 2011 21:09:40 +0000 (22:09 +0100)]
Some of the changes for the Windows tests broke the Unix platform
Juan Jose Garcia Ripoll [Fri, 30 Dec 2011 20:59:34 +0000 (21:59 +0100)]
Fixed compiler macroexpander for STRUCTURE-SET
Juan Jose Garcia Ripoll [Fri, 30 Dec 2011 20:58:39 +0000 (21:58 +0100)]
Fixed compiler macroexpander for SETQ
Juan Jose Garcia Ripoll [Fri, 30 Dec 2011 16:31:36 +0000 (17:31 +0100)]
Fixed the error message in ecl_sequence_start_end() for the case in which start > end.
Juan Jose Garcia Ripoll [Fri, 30 Dec 2011 16:03:37 +0000 (17:03 +0100)]
Added automated tests to the MSVC port
Juan Jose Garcia Ripoll [Fri, 30 Dec 2011 16:01:34 +0000 (17:01 +0100)]
Missing POSIX coercion in unixfsys.d
Juan Jose Garcia Ripoll [Fri, 30 Dec 2011 14:42:10 +0000 (15:42 +0100)]
Create msvc/c/clos directory for MSVC builds
Juan Jose Garcia Ripoll [Fri, 30 Dec 2011 14:31:00 +0000 (15:31 +0100)]
Added missing object files to the Windows Makefile
Juan Jose Garcia Ripoll [Fri, 30 Dec 2011 14:30:45 +0000 (15:30 +0100)]
In FILE-WRITE-DATE, FILE-WRITE-AUTHOR and other related functions, ECL must remove the trailing slash, '/', so that certain C libraries accept the file name.
Juan Jose Garcia Ripoll [Fri, 30 Dec 2011 14:13:56 +0000 (15:13 +0100)]
Increase stack size of ECL [Serhiy Y]
Juan Jose Garcia Ripoll [Fri, 30 Dec 2011 11:24:23 +0000 (12:24 +0100)]
Weak hash tables
Juan Jose Garcia Ripoll [Fri, 30 Dec 2011 09:11:44 +0000 (10:11 +0100)]
Fixed comment on gather_statistics()
Juan Jose Garcia Ripoll [Thu, 29 Dec 2011 23:07:00 +0000 (00:07 +0100)]
The methods in the hash tables now hide the ecl_hashtable_entry structures. This will allow implementing weak hash tables more easily.
Juan Jose Garcia Ripoll [Thu, 29 Dec 2011 18:50:10 +0000 (19:50 +0100)]
Another expansion of DOLIST which uses unboxing. Seems to produce better code with the new model.
Juan Jose Garcia Ripoll [Thu, 29 Dec 2011 18:49:11 +0000 (19:49 +0100)]
Simplfied c1setq so that it does not call c1setq1 but returns back to c1expr.
Juan Jose Garcia Ripoll [Thu, 29 Dec 2011 18:36:55 +0000 (19:36 +0100)]
Fixed various typos that led to infinite recursion of compiler macros in cmpstructures.lsp
Juan Jose Garcia Ripoll [Wed, 28 Dec 2011 23:25:57 +0000 (00:25 +0100)]
Added an inliner for 1+/1- to ecl_make_integer(), which does not dispatch on types.
Juan Jose Garcia Ripoll [Wed, 28 Dec 2011 21:56:42 +0000 (22:56 +0100)]
The new policies can now take an argument, as in (DECLARE (TYPE-ASSERTIONS NIL))
Juan Jose Garcia Ripoll [Wed, 28 Dec 2011 21:56:13 +0000 (22:56 +0100)]
Added some declarations for the new type check model.
Juan Jose Garcia Ripoll [Wed, 28 Dec 2011 20:27:16 +0000 (21:27 +0100)]
The EXT package is now used in the C package
Juan Jose Garcia Ripoll [Wed, 28 Dec 2011 19:50:32 +0000 (20:50 +0100)]
Rewrite DOTIMES to adapt to the new type checking scheme.
Juan Jose Garcia Ripoll [Wed, 28 Dec 2011 15:33:27 +0000 (16:33 +0100)]
Added some IGNORE declarations and fixed some references to undefined variables.
Juan Jose Garcia Ripoll [Wed, 28 Dec 2011 15:32:48 +0000 (16:32 +0100)]
When extracting primary types from (VALUES), use NULL.
Juan Jose Garcia Ripoll [Wed, 28 Dec 2011 15:31:28 +0000 (16:31 +0100)]
Replaced the macro expanders for the structure accessors.
Juan Jose Garcia Ripoll [Wed, 28 Dec 2011 14:59:13 +0000 (15:59 +0100)]
In C2CALL-GLOBAL use the form primary type as expected type.
Juan Jose Garcia Ripoll [Wed, 28 Dec 2011 14:58:22 +0000 (15:58 +0100)]
Remove type propagators for structure-set/ref
Juan Jose Garcia Ripoll [Wed, 28 Dec 2011 14:58:07 +0000 (15:58 +0100)]
Fixes in how FTYPE proclamations are stored -- the return types were corrupted in previous implementations of DECLARE/PROCLAIM
Juan Jose Garcia Ripoll [Wed, 28 Dec 2011 14:56:55 +0000 (15:56 +0100)]
Replaced the special forms for structure-ref/set with compiler macros.
Juan Jose Garcia Ripoll [Wed, 28 Dec 2011 11:57:52 +0000 (12:57 +0100)]
Introduced a new location, THE, which makes a more precise estimate of the location lisp type. This allows the compiler to choose an unsafe cunction when coercing locations.
Juan Jose Garcia Ripoll [Wed, 28 Dec 2011 11:00:01 +0000 (12:00 +0100)]
C2 functions now receive the C1FORM as an argument.
Juan Jose Garcia Ripoll [Tue, 27 Dec 2011 23:18:58 +0000 (00:18 +0100)]
MULTIPLE-VALUE-SETQ and PSETQ also introduce type checks.
Juan Jose Garcia Ripoll [Tue, 27 Dec 2011 15:59:56 +0000 (16:59 +0100)]
C1SETQ now performs checked assignments.
Juan Jose Garcia Ripoll [Tue, 27 Dec 2011 15:59:09 +0000 (16:59 +0100)]
Change assignements in COMPILE so that the function does not violate the type declaration of its argument.
Juan Jose Garcia Ripoll [Tue, 27 Dec 2011 15:18:03 +0000 (16:18 +0100)]
C1CALL now checks the length of the argument list, dispatching to the unoptimized function call if needed. C1CALL-LOCAL is now only used from C1CALL when needed.
Juan Jose Garcia Ripoll [Tue, 27 Dec 2011 11:36:52 +0000 (12:36 +0100)]
Avoid recursive invocation of C1EXPR by allowing the C1 processors to act like macros, returning new forms to be processed. Remove also the CATCH for compiler errors, since we now rely on conditions for signal handling.
Juan Jose Garcia Ripoll [Mon, 26 Dec 2011 23:06:17 +0000 (00:06 +0100)]
Interpret LET/LET* type declarations as assertions to be tested.
Juan Jose Garcia Ripoll [Mon, 26 Dec 2011 23:05:57 +0000 (00:05 +0100)]
Replace some DO forms with LOOPs, thus also fixing some type declarations.
Juan Jose Garcia Ripoll [Mon, 26 Dec 2011 22:59:10 +0000 (23:59 +0100)]
Remove unused variable.
Juan Jose Garcia Ripoll [Mon, 26 Dec 2011 22:58:47 +0000 (23:58 +0100)]
The argument to DEFPACKAGE is a string designator, not (OR SYMBOL STRING)
Juan Jose Garcia Ripoll [Mon, 26 Dec 2011 22:16:13 +0000 (23:16 +0100)]
Propagate the type of a function when invoked through APPLY
Juan Jose Garcia Ripoll [Mon, 26 Dec 2011 21:59:09 +0000 (22:59 +0100)]
Turn CHECKED-VALUE into a special form to speed up a bit processing and also to generate less compiled forms.
Juan Jose Garcia Ripoll [Mon, 26 Dec 2011 21:10:01 +0000 (22:10 +0100)]
Only emit type checks for nontrivial types.
Juan Jose Garcia Ripoll [Mon, 26 Dec 2011 20:58:16 +0000 (21:58 +0100)]
Optimize C1COMPILER-TYPECASE for the case in which the first form already satisfies the check in the first pass.
Juan Jose Garcia Ripoll [Mon, 26 Dec 2011 19:42:11 +0000 (20:42 +0100)]
Implemented type assertions using EXT:COMPILER-TYPECASE so that they can be optimized away.
Juan Jose Garcia Ripoll [Mon, 26 Dec 2011 19:35:09 +0000 (20:35 +0100)]
In "make mostlyclean", only enter those directories that exist.
Juan Jose Garcia Ripoll [Mon, 26 Dec 2011 16:59:16 +0000 (17:59 +0100)]
Fix additional warnings about unused variables and variables which are assumed global in the compiler.
Juan Jose Garcia Ripoll [Mon, 26 Dec 2011 15:58:35 +0000 (16:58 +0100)]
Fixed typo in various compiler macros (cmpopt-printer.lsp)