Commit graph

706 commits

Author SHA1 Message Date
Juan Jose Garcia Ripoll
96c8e09112 In compiler messages, print the actual toplevel form, not the macroexpanded version 2010-02-07 11:57:34 +01:00
Juan Jose Garcia Ripoll
c72aaa5723 Remove useless compiler note about keywords being reused 2010-02-07 11:20:41 +01:00
Juan Jose Garcia Ripoll
d013d603f0 Fixed typo in the implementation of THE. 2010-02-07 11:13:37 +01:00
Juan Jose Garcia Ripoll
6801d9de04 Remove debug statement 2010-02-07 11:08:35 +01:00
Juan Jose Garcia Ripoll
135d52c78e The compiler now uses THE forms with a VALUES type. 2010-02-07 11:08:09 +01:00
Juan Jose Garcia Ripoll
ff7d1fa480 When parsing a function type that contained &optional, the compiler did not eliminate this word before parsing the next argument. 2010-02-07 10:50:38 +01:00
Juan Jose Garcia Ripoll
85b379e235 Variables declared ignorable no longer produce a warning when removed from LET/LET* forms. 2010-02-07 01:21:26 +01:00
Juan Jose Garcia Ripoll
0af8370faf When inlining an APPLY form, the variable for processing the argument list may be declared ignorable, in order to prevent warnings. 2010-02-07 01:21:09 +01:00
Juan Jose Garcia Ripoll
337819233d Replace use of __builtin_expect() with two macros, ecl_{likely,unlikely} 2010-02-04 16:54:05 +01:00
Juan Jose Garcia Ripoll
40ee2b29eb Use of __builtin_expect() to mark rare error conditions. Use of __attribute__((noreturn)) on error functions which are used at the beginning of a function and do not have possibility of triggering a longjmp int the same function. 2010-02-03 23:30:16 +01:00
Juan Jose Garcia Ripoll
092ca8a165 New variables c:*user-ld-flags* and c:*user-cc-flags* 2010-02-03 22:14:07 +01:00
Juan Jose Garcia Ripoll
83eddf11f9 Intoduced _ecl_fix_times_fix, _ecl_big_ceiling and _ecl_big_floor. 2010-01-28 23:08:16 +01:00
Juan Jose Garcia Ripoll
265144b1e4 No bds check is needed in compiled functions, since this is included in the ecl_bds_bind routine. 2010-01-26 22:29:53 +01:00
Juan Jose Garcia Ripoll
65c1dbb06f Missing arguments to several warnings (S. Bourakev). 2010-01-25 09:09:10 +01:00
Juan Jose Garcia Ripoll
65cf8c51f6 New function EXT:ENVIRON 2010-01-24 22:37:43 +01:00
Juan Jose Garcia Ripoll
f00fafe95a Changed the prototype of functions that take a fixed number of arguments 2009-12-26 15:40:08 +01:00
Juan Jose Garcia Ripoll
19943c0a22 ECL now has its own rounding routine for converting rationals to floats. 2009-12-05 01:47:41 +01:00
Juan Jose Garcia Ripoll
46e8c1ddc6 The function EXTRACT-TYPE-CHECKS is now better isolated and issues the compiler note itself. 2009-12-02 14:58:42 +01:00
Juan Jose Garcia Ripoll
bd7b3fd6d8 The automatic generation of check-type forms for function arguments could not be suppressed when having additional declarations (src/cmp/cmplam.lsp) 2009-11-30 12:55:41 +01:00
Juan Jose Garcia Ripoll
bc302c2acf The optimizer for TYPEP did not work when passed three arguments. 2009-11-29 22:40:45 +01:00
Juan Jose Garcia Ripoll
2c3feb09d5 Provide compiler macros for the slot accessors of the root classes. 2009-11-29 22:00:29 +01:00
Juan Jose Garcia Ripoll
cf1ff95534 Provide inline forms for SI:INSTANCE-SET and MP:LOCK-COUNT. 2009-11-29 21:59:15 +01:00
Juan Jose Garcia Ripoll
e9644a5092 src/clos/cmpclos.lsp: maybe-optimize-slot-accessor tried to optimize generic
function calls to functions that are not slot readers / writers.
2009-11-27 22:05:55 +01:00
Juan Jose Garcia Ripoll
a0017d2185 Patch for tracker bug ID: 2900631. Losing non-primary values in compiled, proclaimed function calls (Abhishek) 2009-11-19 20:21:39 +01:00
Juan Jose Garcia Ripoll
0b3075cb96 src/cmp/cmpmulti.lsp: c1multiple-value-bind replaces multiple-value-bind with a let form when there is only one variable to be bound. 2009-11-14 18:00:56 +01:00
Juan Jose Garcia Ripoll
3447e860eb src/cmp/cmpmain.lsp: in C:BUILDER, when using SI:SAFE-EVAL to execute the prologue and epilogue codes, allow by default to start up the debugger. 2009-11-14 10:49:54 +01:00
Juan Jose Garcia Ripoll
6c380fba8e Remove debug statement. 2009-11-09 20:19:22 +01:00
Juan Jose Garcia Ripoll
a316938550 EXT:QUIT now stores the exit code of the program and this is returned by standalone executables. 2009-11-09 10:12:45 +01:00
Juan Jose Garcia Ripoll
18f5cf2d92 The IGNORE/IGNORABLE declarations accept (but ignore) arguments of the for (FUNCTION function-name). 2009-11-08 16:39:19 +01:00
Juan Jose Garcia Ripoll
e44656e9bb src/cmp/cmpmain.lsp: when building a standalone executable, wrap everything with a CL_CATCH_ALL to provide an exit point for EXT:QUIT and also to protect from unwanted transfers of control. 2009-11-08 15:38:33 +01:00
Juan Jose Garcia Ripoll
8e9c6dcad6 ECL's compiler now interprets the IGNORABLE declaration. 2009-11-07 23:12:57 +01:00
Juan Jose Garcia Ripoll
6e7caff184 The :prologue-code in cmp:builder is now executed after cl_boot() and it can be lisp code. 2009-11-01 02:38:36 +01:00
Juan Jose Garcia Ripoll
5a35ce22df When creating a unified fasl, the init function name has to be exported outside the DLL. In cygwin this means adding ECL_DLLEXPORT to +lisp-program-init+. 2009-10-29 14:30:40 +01:00
Juan Jose Garcia Ripoll
a5d5c7d3f6 src/cmp/cmpmain.lsp: clean up the files we create (*.c, *.h) before writing onto them. 2009-10-05 15:54:46 +02:00
Juan Jose Garcia Ripoll
fe000b075a src/cmp/cmpmain.lsp: silence the program "mt" that embeds the manifest in a Windows executable. 2009-10-05 12:12:05 +02:00
Juanjo
bedd620359 src/cmp/cmpmain.lsp: in Windows, embed the manifest file into the executable, dll or fasl, and delete any other automatically generated files (*.exp, *.lib, etc). 2009-10-05 11:00:50 +02:00
Juan Jose Garcia Ripoll
260853ef0a QUIT now unwinds all forms before exiting. In addition it can kill all existing threads. 2009-09-13 20:46:21 +02:00
Juan Jose Garcia Ripoll
ca6198d753 Reimplement with-lock so that it is interrupt-safe. 2009-09-04 23:12:36 +02:00
Juan Jose Garcia Ripoll
4a3349a9f2 Implemented weak pointers. 2009-09-03 16:54:25 +02:00
Juan Jose Garcia Ripoll
e434ebc3aa cmpmain.lsp: ensure that MKSTEMP did not fail or otherwise print a meaningful message 2009-08-31 15:23:10 +02:00
Juan Jose Garcia Ripoll
95ac61115c ECL was still using the deprecated c_string_to_object 2009-08-29 10:53:54 +02:00
Juan Jose Garcia Ripoll
900b20c75f The inline form for SQRT was used even for boxed values. 2009-08-12 11:56:23 +02:00
Juan Jose Garcia Ripoll
6496d98d23 There was still one place in C:BUNDLE-CC where command line arguments were not surrounded by double quotes - this caused problems when the output file had spaces. 2009-08-12 10:25:45 +02:00
Juan Jose Garcia Ripoll
085a5a4388 Implement a new configuration flag, --enable-rpath. 2009-08-10 23:23:16 +02:00
Juan Jose Garcia Ripoll
f33a082b14 Fixed a bug in the compiler expansion of COS, SIN and TAN. 2009-08-10 16:56:05 +02:00
Juan Jose Garcia Ripoll
3b412f3b3a Relax coercion errors. Sometimes lousy programmers just leave code branches that are
not going to be executed and will cause the wrong type.
2009-08-04 19:28:44 +02:00
Juan Jose Garcia Ripoll
e3f42a5c49 Make ECL less verbose in its messages, eliminating certain notes and the note context when this is too imprecise. 2009-08-04 11:22:45 +02:00
Juan Jose Garcia Ripoll
f2625c0330 Changed SI:SAFE-EVAL so that when a third value is supplied, it does not set up a condition handler. 2009-08-03 22:11:49 +02:00
Juan Jose Garcia Ripoll
185cc872f1 Removed reference to ecl_elt_unsafe() which is no longer defined. 2009-08-03 19:41:53 +02:00
Juan Jose Garcia Ripoll
7195468eec Completed the implementation of SI:SAFE-EVAL and SI:STRING-TO-OBJECT 2009-07-31 23:16:03 +02:00