Commit graph

378 commits

Author SHA1 Message Date
jjgarcia
5478bbe21b DLLs and files have now termination procedures, which unload the DLL or close
the file, when these objects are garbage collected.
2003-03-12 10:05:42 +00:00
jjgarcia
94f70da47b Remove debug statement. 2003-03-11 18:22:51 +00:00
jjgarcia
e10ee7808b When dealing with compiler-macros, ECL may enter an infinite loop. 2003-03-11 14:56:48 +00:00
jjgarcia
c972e21255 Make symbol COMPILER-MACRO built-in. 2003-03-11 14:55:58 +00:00
jjgarcia
ab08b07ac1 ECL now detects wrong function calls, such as ("foo"), (setq a ("foo")), etc 2003-03-11 12:47:58 +00:00
jjgarcia
a627819a71 Typo fixed. 2003-03-10 14:02:44 +00:00
jjgarcia
5f6f65b407 Bunch of fixes inspired by the ANSI test suite of GCL. 2003-03-10 09:10:13 +00:00
jjgarcia
2be5baa3e4 A stupid character got in the file. 2003-03-05 09:33:19 +00:00
jjgarcia
75b7207b6d Fixed typo. 2003-03-04 17:25:43 +00:00
jjgarcia
9771e91572 + New implementation of DESTRUCTURING-BIND
+ The bytecodes compiler now alloes a lambda list with &key and no keywords
+ WITH-HASHTABLE-ITERATOR implemented
+ QUIT is now silent
+ In MAKE-PATHNAME, values supplied with a value of NIL would be overwritten
  by the content of :DEFAULTS.
2003-03-04 16:35:03 +00:00
jjgarcia
c935faf44a In cl_clear_input(), do not complain when fseek() fails. 2002-12-17 10:53:29 +00:00
jjgarcia
b0e60245a4 c::*funs* may contain symbols (like CB marking closure boundary),
function structures (marking function definitions), or lists with the
format (fname MACRO interpreted-function), to denote MACROLET
expansions.
2002-12-17 10:45:36 +00:00
jjgarcia
8209fc021e Write FTYPE declarations correctly. 2002-12-17 09:53:52 +00:00
jjgarcia
d21a1fd389 Previous fixed removed. Hopefully this time I got FTYPE declarations
correct: they are restricted to (FTYPE (FUNCTION (arg-types*) ret-type*) name*)
2002-12-17 09:53:04 +00:00
jjgarcia
8852166529 FTYPE should accept two types of declarations: the ones with a formal type
(FTYPE (FUNCTION (T T) T) MY-FUN1 MY-FUN2)
and the abbreviated ones
	(FTYPE MY-FUN1 (T T) T)
2002-12-17 09:15:37 +00:00
jjgarcia
22280e7f6c Fix macroexpander for define-condition. 2002-12-14 16:57:11 +00:00
jjgarcia
c9fb52f320 In APPLY, FUNCALL, etc, check whether the input argument is OBJNULL. This
way, when, in low-safety mode, we funcall a symbol which is unbound, the
right error is signaled.
2002-12-14 16:03:44 +00:00
jjgarcia
73447f1b3e Set safe compilation as default. 2002-12-14 15:44:47 +00:00
jjgarcia
912a7fb03c The declaration specifier for functions is FTYPE, not FUNCTION. 2002-12-14 15:37:29 +00:00
jjgarcia
aaa68d02a8 LOGICAL-PATHNAME implemented. 2002-12-14 15:03:07 +00:00
jjgarcia
0c0e58d308 Use @'' to access the symbols instead of searching them. 2002-12-14 14:09:07 +00:00
jjgarcia
443a2895f0 update configure to the latest changes in aclocal.m4 2002-12-09 14:37:32 +00:00
jjgarcia
7828d15172 "conftestval" has to be truncated to zero before writing the output of
our test program.
2002-12-09 14:36:18 +00:00
jjgarcia
9210270227 In ECL_FIXNUM_TYPE, the C code outputs one less bit than there really
are. Furthermore, it fails to produce the right limits for the integers.
2002-12-09 13:08:11 +00:00
jjgarcia
491f242fa4 Remove harmless type warning. 2002-12-09 12:53:44 +00:00
jjgarcia
43099ff052 More fixes about integer types. 2002-12-09 12:51:40 +00:00
jjgarcia
1b64032b99 We need string.h for strerror(). 2002-12-09 12:49:49 +00:00
jjgarcia
495d5d0172 We need string.h for memcpy(). 2002-12-09 12:47:44 +00:00
jjgarcia
31791eb3d7 More integer type fixes. 2002-12-09 12:45:43 +00:00
jjgarcia
d8ffa12fda We need string.h for memcpy(). 2002-12-09 12:44:34 +00:00
jjgarcia
81fd297e7e Fix prototypes for functions which changed from int -> cl_fixnum. 2002-12-09 12:39:26 +00:00
jjgarcia
18cce3f268 Enter definitions for the Alpha processors, and allow the processor to
be unknown (helps in porting).
2002-12-09 12:31:00 +00:00
jjgarcia
62141f9f5d Replace int -> cl_fixnum, cl_index, to avoid problems with 64-bit archit.
Make sure that structure/instance slots may be indexed with a simple integer.
2002-12-09 12:10:33 +00:00
jjgarcia
a6dbc27069 Implement *load-pathname* and *load-truename* 2002-12-06 16:23:47 +00:00
jjgarcia
192bdfc082 emacs-cvs had corrupted this file. 2002-12-06 12:19:46 +00:00
jjgarcia
e92ebbc834 Version 0.8. Disable CLX, which is now distributed separately. 2002-12-06 11:21:50 +00:00
jjgarcia
451ed9087d When coercing the output of INLINE-ARGS, and found a (FIXNUM (T some-location)),
recognize that the "some-location" variable is NOT unboxed.
2002-12-05 09:52:07 +00:00
jjgarcia
f589ddf587 When compiling a (VALUES ...) form, put the result in VALUES; do not use
value0, because then the compiler assumes only one value is produced.
2002-12-05 09:48:52 +00:00
jjgarcia
de9f5afdaf In MAYBE-PUSH-ARGS, a C variable was used initialized. 2002-12-05 09:45:38 +00:00
jjgarcia
151cf73044 Fix the names of the optimizers for SHIFT<< and SHIFT>>. 2002-12-05 09:42:58 +00:00
jjgarcia
671d9db39a Fix typo. 2002-12-04 19:08:12 +00:00
jjgarcia
acb4f2ef3f The name of the character was clobbered and could not be accessed by
the call to FEerror().
2002-12-04 17:46:15 +00:00
jjgarcia
bf8a3c21a9 Replaced LET -> LET* to make C code smaller, wherever it is possible. 2002-12-04 15:40:42 +00:00
jjgarcia
d20cde0cd9 New definition for SI:DESTRUCTURE uses SI::PROCESS-LAMBDA-LIST to parse
the destructuring list, for both DEFMACRO and DESTRUCTURING-BIND forms.
This results in smaller code.
2002-12-04 09:34:32 +00:00
jjgarcia
b68c2036f6 New expansion for DO/DO* produces smaller code. 2002-12-04 09:32:47 +00:00
jjgarcia
3e7559f112 SI::PROCESS-LAMBDA-LIST split into SI::PROCESS-LAMBDA (which actually
operates on functions) and SI::PROCESS-LAMBDA-LIST (which parses only
the lambda list). The code is simplified.
2002-12-02 10:14:21 +00:00
jjgarcia
69712a6b5a More explicit error message at end of compilation time. 2002-11-28 09:43:19 +00:00
jjgarcia
ffbfd24425 When illegally trying to access a closed stream, signal an error of type
STREAM-ERROR. Also, check operations from the C library for possible errors
and use FElibc_error() when these input/output operations fail.
2002-11-27 15:54:25 +00:00
jjgarcia
0cb11a2aad Global variables preserving_whitespace, detect_eos_flag, escape_flag and
delimiter_char removed. Function readc_stream and unreadc_stream renamed
to ecl_getc and ecl_ungetc. They now have a C-like behavior, do not
complain about EOF and return the special value EOF when the end of the
file is reached.
2002-11-24 15:52:15 +00:00
jjgarcia
95155a2796 Detect automatically, to what characters \n is translated. For instance,
under MSDOS \n -> \r\n, and under Apple, \n -> \n\r.
2002-11-23 18:12:31 +00:00