Commit graph

709 commits

Author SHA1 Message Date
jjgarcia
6231de024f Simplified the forms produced by DEFSTRUCT leaving most of the job for DEFINE-STRUCTURE. 2004-05-12 07:47:43 +00:00
jjgarcia
31ee0d5d58 Simplified the forms produced by DEFSTRUCT leaving most of the job for DEFINE-STRUCTURE. 2004-05-12 07:47:05 +00:00
jjgarcia
4e3189eddd Big changes in the way functions are compiled, unifying the code that handles DEFUN, DEFMACRO and LAMBDA, and fixing an important bug in the optimizer for tail-recursive calls. 2004-05-05 08:38:07 +00:00
jjgarcia
959180c2bd Protect the initialization routines of the lisp files with the prefix ECL, so that they do not collide with files supplied by the user 2004-04-27 08:30:30 +00:00
jjgarcia
20e3561ae0 Label with no statement. GCC complains. 2004-04-26 11:22:16 +00:00
jjgarcia
9346ae4df0 Take numbers into account when mangling names. 2004-04-23 15:43:18 +00:00
jjgarcia
8b678591be *** empty log message *** 2004-04-21 13:47:27 +00:00
jjgarcia
7afef75f7f Local variables can be changed by a local function 2004-04-21 13:47:02 +00:00
jjgarcia
f494e7140c Fixes in optimizer 2004-04-21 13:46:33 +00:00
jjgarcia
cd2f200d0c Header string.h is needed for strlen 2004-04-21 13:44:21 +00:00
jjgarcia
9eddd9fb08 All non-graphic characters below (code-char 128) have now character names from the ASCII standard 2004-04-21 13:42:25 +00:00
jjgarcia
4b480b2cec Some opcodes set the output in the VALUES stack, and cannot use REG0. 2004-04-08 14:02:21 +00:00
jjgarcia
2c1c1f540f LOGBIT cannot be inlined when the first argument is larger than the size of a C long, because LOGBITP is not equivalent to the C << or >> . 2004-04-08 14:01:42 +00:00
jjgarcia
2ff1c27c20 Routines like cl_go, cl_throw and cl_unwind cannot be declared as 'noreturn' because they can actually transfer control to the same function that called them. 2004-04-08 14:01:38 +00:00
jjgarcia
7b5a4db183 When a variable is not used, but it can be present in the code, replace it with a dummy value (NIL) 2004-04-08 07:30:53 +00:00
jjgarcia
6ace97e5ce Fixed typo. 2004-04-08 07:30:26 +00:00
jjgarcia
213ef3de8e MULTIPLE-VALUE-SETQ now uses (SETF (VALUES ...)) when some of the places to be set is not a variable, but a generalized place. 2004-04-07 16:39:31 +00:00
jjgarcia
3777c03f92 A VALUES form can now act as a place 2004-04-07 15:30:06 +00:00
jjgarcia
c503e0fc95 The different EPSILONs are now computed at compilation time, because the values provided by the C library are not all that precise. 2004-04-07 15:29:21 +00:00
jjgarcia
04525b9812 The --info-dir option was mispelled 2004-04-05 07:31:41 +00:00
jjgarcia
daa8064584 + Streams in ECL can now have element types CHARACTER, (UNSIGNED-BYTE 8)
and (SIGNED-BYTE 8). LISTEN and PEEK-CHAR had to be modified so that
they work with CONCATENATED-STREAMS. OPEN now signals errors of type
FILE-ERROR when a file cannot be opened.
+ Several special functions (ASIN, ACOS, ASINH, ...) have been reimplemented
using more stable formulas found in CMUCL, plus the functions from the C
mathematical library. They also serve as examples of how to use FFI:C-INLINE.
+ Several errors regarding packages have been rewritten as correctable errors,
and now the carry clearer messages.
+ In functions dealing with sequences, :COUNT can now be a bignum.
+ In the bytecodes compiler, MULTIPLE-VALUE-PROG1 did not save the values.
2004-04-05 07:21:54 +00:00
jjgarcia
62d43f4892 Preliminary implementation of the UFFI. 2004-03-29 11:13:17 +00:00
jjgarcia
b5d5a86d43 Removed old version of CLX, which no longer works. 2004-03-29 09:12:16 +00:00
jjgarcia
403511c488 The portable CLX library has been incorporated. 2004-03-25 09:02:27 +00:00
jjgarcia
b3e8118eb4 The values assigned to a structure must be always of type :OBJECT. 2004-03-25 09:00:53 +00:00
jjgarcia
a20347e85c Do not redefine ENSURE-CLASS unless cross-porting ECL 2004-03-25 09:00:04 +00:00
jjgarcia
72dc89f61b Fixed generation of function prototypes, and other glitches so that the lisp code can be compiled with a C++ compiler. The core library is still compiled with a C compiler. 2004-03-03 09:18:20 +00:00
jjgarcia
21b0d02960 Damm typo 2004-03-01 08:52:45 +00:00
jjgarcia
21e7d900a7 Implemented a safer routine to retrieve the pointer of a foreign data structure. 2004-03-01 08:42:33 +00:00
jjgarcia
0d9781668f *** empty log message *** 2004-02-29 16:45:03 +00:00
jjgarcia
268203b4a5 New configuration variable GCLIB. 2004-02-29 15:50:00 +00:00
jjgarcia
860dbd69ec Fixes due to type sizes, updates of the old garbage collector and the terrible bug with hash tables merged into main trunk 2004-02-29 15:47:01 +00:00
jjgarcia
fbbeb10815 More standard way of installing info files, by registering them with install-info 2004-02-03 19:15:40 +00:00
jjgarcia
e66f92fa45 *** empty log message *** 2004-02-03 18:35:52 +00:00
jjgarcia
71f921ed39 Remove some warnings from GCC 2004-01-24 17:00:24 +00:00
jjgarcia
feb3467d3d Remove unused header 2004-01-20 08:54:01 +00:00
jjgarcia
b8d27be483 Dummy implementation of MAKE-LOAD-FORM and MAKE-LOAD-FORM-SAVING-SLOTS. Supports for normal lisp objects and structures is missing. 2004-01-20 08:53:24 +00:00
jjgarcia
b30b43ce17 (VALUES form) now truncates the number of values output by 'form' to one. 2004-01-19 17:54:10 +00:00
jjgarcia
0d863a2a66 Most functions that operate with the native filesystem must complain if they get get pathnames with wild components 2004-01-16 15:02:51 +00:00
jjgarcia
dc9b2ec4c6 CLASS-NAME must be a generic function. 2004-01-16 11:23:24 +00:00
jjgarcia
e8b1a4b4c5 LOAD-LOGICAL-PATHNAME-TRANSLATIONS now implemented (uses sys:host.translation)
WILD-PATHNAME-P implemented.
PROBE-FILE and TRUENAME now complain when passed a pathname with wild components.
Fixed a bug in GENTEMP.
Some missing symbols are now defined (*PRINT-MARGIN*, etc), even though not used.
Destructuring lambda lists now identify NIL or '() as an empty list.
Fixed INTEGER-LENGTH and LOGCOUNT (they now work with bignums).
SYMBOL-MACROLET now complains about redefinition of global variables.
ENSURE-DIRECTORIES-EXIST now outputs the two requird values and produces some informative messages if requested.
2004-01-16 10:31:04 +00:00
jjgarcia
a5af1f450c Implemented LOAD-LOGICAL-PATHNAME-TRANSLATIONS. TRUENAME now merges the pathname with the current working directory. 2004-01-15 19:16:21 +00:00
jjgarcia
710e6e2888 Fix the way SUBLIS and NSUBLIS handle the key and test arguments. 2004-01-15 18:34:47 +00:00
jjgarcia
a6f856e73b When merging pathnames that have versions, there is a complicated rule for defaulting 2004-01-15 14:19:30 +00:00
jjgarcia
63e1c1789f Implemented WILD-PATHNAME-P 2004-01-15 13:30:46 +00:00
jjgarcia
826b22cdc1 Fixed a long lasting bug: the TEST or TEST-NOT function to SET-EXCLUSIVE-OR
can assume that the first argument belongs to the first list and the second
to the second one. However, ECL would not respect this.
2004-01-15 09:57:16 +00:00
jjgarcia
78c4c19e37 Macroexpasion is the last thing to try when dealing with SETF places 2004-01-14 14:20:47 +00:00
jjgarcia
90174a13e1 Fixed typo 2004-01-12 13:50:40 +00:00
jjgarcia
19d3e6ace5 Missing header for memcpy() 2004-01-12 13:49:37 +00:00
jjgarcia
13055827c8 Simplify the checks. 2004-01-12 10:54:31 +00:00