jjgarcia
b1d6df4894
C-INLINE forms can now output multiple values
2005-03-15 14:21:42 +00:00
jjgarcia
4bd4b5a32a
FLET/LABEL would not compile as toplevel forms because the value of *CURRENT-FUNCTION* is NIL for toplevel forms
2005-02-21 11:18:51 +00:00
jjgarcia
d0448f2f83
Allow #ifdef/#if/#define, etc, in the C-INLINE clauses
2005-02-17 12:41:38 +00:00
goffioul
379adefe5c
Remove unneeded WIN32 flag.
2005-02-15 10:01:40 +00:00
jjgarcia
f8f04ff8c7
There are problems with code like
...
(lambda (&optional (n (some-form))) (mapcar #'(lambda (x) (+ x n)) ...))
because (i) we have to ensure that the variable N does not exist when SOME-FORM
is evaluated and (ii) the closure has to get the right lexical index for the
variable N. The previous fix broke the last invariant. This less efficient
code generator seems to solve this issue.
2005-02-14 11:06:52 +00:00
jjgarcia
06b3047b1d
+ Fixes in the code for backquoted vectors `#(,a ,b ...)
...
+ Fixes in the compiler code for CATCH and VALUES
+ Slight improvement in the readability of compiled CATCH
+ Implemented lisp hooks for cleaning on exit.
+ Improvements in the help messages from "configure"
2005-02-14 10:26:29 +00:00
jjgarcia
05bb9eccb4
Check the number of arguments for a C-INLINE form
2005-01-26 08:41:29 +00:00
jjgarcia
a2e2990440
Introducing sequence iterators. Fixes in the reader regarding *read-suppress* and reading of vectors.
2005-01-24 08:57:46 +00:00
jjgarcia
7305685ae2
Fix conflicts with external declarations when using the C++ compiler
2005-01-13 11:03:18 +00:00
jjgarcia
adc4a64a74
Wrong code produced for FOO in
...
(lambda (x)
(flet ((foo (&rest y)
(print x)
(print y)))
(foo x 1 2 3)
(foo x 2 3)))
2005-01-11 18:22:12 +00:00
jjgarcia
172351b72f
Fix typo
2005-01-11 18:04:59 +00:00
jjgarcia
e4aa8f5df0
Allow (SETF ...) function names to appear in proclamations
2005-01-11 17:43:34 +00:00
jjgarcia
3882176d59
Fixes to the scope of special variable declarations
2005-01-11 09:57:22 +00:00
jjgarcia
dd39b19a32
Fixes in various reader macros (#*, #(,#C)). Stream mode smm_closed disappears and closing of files preserves the original type of stream. Implemented METHOD-COMBINATION-ERROR, INVALID-METHOD-ERROR, option :ARGUMENT-PRECEDENCE-ORDER. In loop, iteration statements can now only appear before body statements, otherwise an error is signaled. A DEFTYPE form optional arguments have default value *
2005-01-10 09:41:06 +00:00
jjgarcia
ea7b544af3
Xmas fixes. See CHANGELOG for list of changes.
2005-01-07 11:51:23 +00:00
jjgarcia
5e5ab8c73b
Fix exporting of functions under MSVC
2004-12-20 13:33:07 +00:00
jjgarcia
aaad2c184f
Disable _ARGS() in external.h and use precise prototypes
2004-12-20 08:56:13 +00:00
jjgarcia
9fc98f14bd
List all interesting functions created by the lisp->C compiler in external.h and leave the task of building function objects for these functions to all_symbols2.o
2004-12-20 08:50:35 +00:00
jjgarcia
9b19bc22c0
When the value of a LET* variable is a closure, the size of the lexical environment was not properly captured
2004-12-17 14:26:05 +00:00
jjgarcia
e4fa9f4e73
Merged in the new compiler structure doubly linked list.
2004-12-16 15:56:54 +00:00
jjgarcia
28eb58b9df
Remove debugging statements.
2004-12-16 08:30:11 +00:00
jjgarcia
65b9d3ccc3
Delete additional files produced by the MSVC++ compiler (M.Goffioul)
2004-12-07 09:40:03 +00:00
jjgarcia
5727540f74
Allow self-destruction of DLLs under Microsoft Visual C++
2004-12-06 16:33:35 +00:00
jjgarcia
848cb645cb
Remove debugging statement
2004-12-03 17:27:42 +00:00
jjgarcia
339a8e1e51
Allow the user to supply its own INIT-NAME for shared libraries, normal libraries, programs, etc.
2004-12-02 16:49:02 +00:00
jjgarcia
27c98657f1
Complete support for UFFI (Michael Goffioul)
2004-11-29 13:13:03 +00:00
jjgarcia
1281dfb830
FFI Patches by M. Goffioul
2004-11-23 15:11:02 +00:00
jjgarcia
6b771da508
Compiler data structures print now unreadable, because they have too many circular dependencies that drive the printer crazy.
2004-11-23 15:08:04 +00:00
jjgarcia
c756aeb543
Discarded data is compiled with C2EXPR\*
2004-11-23 15:07:17 +00:00
jjgarcia
b35828886a
Guess a good value of the directory for temporary files.
2004-11-23 14:59:28 +00:00
jjgarcia
1b87eaae01
Make the MSVC++ port relocatable, i.e. the installation path is not hardcoded in ECL. Also, suport for NSI under MSVC++.
2004-10-29 13:50:26 +00:00
jjgarcia
6b219625b5
Port to Microsoft VC++ by Goffioul Michael <goffioul@imec.be>
2004-10-25 16:34:20 +00:00
jjgarcia
cca49cd1c7
Removed attribute "noreturn" because GCC does not take into account the
...
possibility of longjmp into the function that called a noreturn function.
Simplified the FORMAT routine abstracting the operations on arguments,
so that they can be easily reimplemented when the type of stack changes.
FORMAT does no longer use the lisp stack, but builds lists of arguments.
2004-10-11 08:02:21 +00:00
jjgarcia
4250bf1081
*** empty log message ***
2004-10-04 11:10:19 +00:00
jjgarcia
a0417f0a88
Summer fixes
2004-10-04 08:02:39 +00:00
jjgarcia
a85c392142
Several fixes. Functions are now created only with C1COMPILE-FUNCTION.
2004-08-13 13:31:24 +00:00
jjgarcia
c910c2682e
When there's no data, VV, compiler_data_text and compiler_data_text_size should not be used
2004-08-09 08:18:41 +00:00
jjgarcia
a14b12704b
Make the compiler quieter
2004-08-02 08:22:03 +00:00
jjgarcia
d76a72edd9
Improve on previous fixes of the compiler error messages: everything now uses cmperr, cmpwarn and cmpnote
2004-07-08 11:55:24 +00:00
jjgarcia
611278c02b
Decrease verbosity of the compiler
2004-07-07 18:05:24 +00:00
jjgarcia
566efa7c76
Windows does not like to have a quoted file name as first argument to system()
2004-06-24 07:50:00 +00:00
jjgarcia
58f1ef6e10
When invoking gcc, some of the pathnames might contain spaces. Enclose all pathnames in double-quotes to avoid problems.
2004-06-22 08:01:25 +00:00
jjgarcia
0c029b634b
Remove verbosity from dllwrap.
2004-06-19 10:54:40 +00:00
jjgarcia
067a5fef5f
The name of the compiler should not be fixed
2004-06-19 10:54:27 +00:00
jjgarcia
7a345f89ed
Remove temporary files
2004-06-18 08:23:52 +00:00
jjgarcia
ce41ff78fd
Support for DLL in Windows
2004-06-18 07:51:14 +00:00
jjgarcia
90fd78202c
Only the entry point of a file which is component of a library or a module can get a prefix.
2004-06-13 08:53:18 +00:00
jjgarcia
da9a2697cf
Do not use prefixes to name the entry points of libraries
2004-06-11 15:11:31 +00:00
jjgarcia
5f56a67a3e
Changed the structure of the data in *LINKING-CALLS*. Now function objects are stored, together with C variable/function names.
2004-06-08 14:46:21 +00:00
jjgarcia
92a383e835
Explicit conversion to (void*) to keep g++ happy
2004-05-17 10:03:07 +00:00