Commit graph

5174 commits

Author SHA1 Message Date
Juan Jose Garcia Ripoll
84cb080e78 Rewrite LDB and friends in a way which can be reused by the compiler macros in src/cmp/cmpopt-bits.lsp 2013-01-09 10:25:55 +01:00
Juan Jose Garcia Ripoll
4b2e293a48 Added optimizer for LDB-TEST 2013-01-09 00:40:38 +01:00
Juan Jose Garcia Ripoll
b284b74e40 (LDB (BYTE ...) ...) does not cons a BYTE object, even if the arguments of BYTE have unknown types. 2013-01-09 00:38:34 +01:00
Juan Jose Garcia Ripoll
297c0bc078 In src/cmp/cmptype.lsp, the optional type check is omitted when the argument is a constant value of the right type. 2013-01-09 00:28:03 +01:00
Juan Jose Garcia Ripoll
fe85aebbc9 Removed the "-w" option from compiler-cc so that it works with clang. 2013-01-09 00:00:53 +01:00
Juan Jose Garcia Ripoll
a9cb6a48c5 Fixed typo in the code that compiles a coercion from a Lisp integer to an unsigned long (M. Cox) 2013-01-08 23:58:06 +01:00
Juan Jose Garcia Ripoll
72d0b9d27a Fixed the patch_sharp() routine so that #3(x) returns #(x x x). 2013-01-08 23:53:04 +01:00
Juan Jose Garcia Ripoll
a869a5a570 patch_sharp() takes a lisp environment as argument 2013-01-08 23:24:32 +01:00
Juan Jose Garcia Ripoll
ebafa5f275 Added the Unicode character database to the C library 2012-12-26 22:31:37 +01:00
Juan Jose Garcia Ripoll
b6519e5c7a Updating a class (due to a change in metaclass) forces updating its children 2012-12-21 00:12:53 +01:00
Juan Jose Garcia Ripoll
0e64774fbe Added a declaration to name LAMBDA forms even when we do not use EXT:LAMBDA-BLOCK 2012-12-21 00:12:53 +01:00
Juan Jose Garcia Ripoll
39bc148181 Added more function references to cl_symbols. 2012-12-20 09:40:04 +01:00
Juan Jose Garcia Ripoll
d57393f38e Add a few more functions to cl_core. 2012-12-20 00:09:52 +01:00
Juan Jose Garcia Ripoll
ee997b11f1 Added some code to know which functions can be moved into cl_symbols 2012-12-19 23:30:13 +01:00
Juan Jose Garcia Ripoll
d1a2ad7a4e Some statements from si::bc-disassemble were written to the wrong stream 2012-12-19 23:29:32 +01:00
Juan Jose Garcia Ripoll
b2889a6627 STANDARD-INSTANCE-GET is now used to provide a SETF form for STANDARD-INSTANCE-ACCESS 2012-12-19 23:05:24 +01:00
Juan Jose Garcia Ripoll
0f2688147d Merged STANDARD-INSTANCE-GET and STANDARD-INSTANCE-ACCESS. 2012-12-19 22:44:01 +01:00
Juan Jose Garcia Ripoll
7a443b5278 (SETF DOCUMENTATION) did not operate on functions because the function object documentation had precedence over the annotation. 2012-12-19 21:00:33 +01:00
Juan Jose Garcia Ripoll
8ac2ec408c The accessor dispatch code must contemplate the possibility that it gets a non-standard class. In order to implement this, we ensure that SLOT-VALUE and (SETF SLOT-VALUE) are availabe as C functions right at boot time. 2012-12-18 23:24:13 +01:00
Juan Jose Garcia Ripoll
3c4986d389 Removed std-class-optimized-accessors, which has been superseded by the code in src/c/clos/accessors.d 2012-12-18 23:23:05 +01:00
Juan Jose Garcia Ripoll
a6d30df567 Global type declarations cannot be used for local functions and lambda forms with the same names. 2012-12-18 22:19:12 +01:00
Juan Jose Garcia Ripoll
6adc64d00c FTYPE declarations allow (FUNCTION *) and (FUNCTION * *) and (FUNCTION * some-type), etc 2012-12-18 22:00:27 +01:00
Juan Jose Garcia Ripoll
ddc7080758 Missing argument to LOGAND 2012-12-18 21:37:53 +01:00
Juan Jose Garcia Ripoll
8b02d96774 In type propagators, the function name is rarely use: declare it ignorable 2012-12-18 21:37:53 +01:00
Juan Jose Garcia Ripoll
eeb65d8e6d The ignored variables warning is now a style warning. Similar to a warning about ignored forms without side effect, which is a compiler note. 2012-12-18 21:29:03 +01:00
Juan Jose Garcia Ripoll
65fb09cfce Remove spurious warnings about required arguments not being used in methods 2012-12-18 21:20:35 +01:00
Juan Jose Garcia Ripoll
5d59463fd9 Null terminate the base-strings created by make-array. 2012-12-17 22:37:00 +01:00
Juan Jose Garcia Ripoll
4af105a5ae (CONCATENATE 'SIMPLE-BASE-STRING ...) returns an ordinary string. 2012-12-17 21:28:20 +01:00
Juan Jose Garcia Ripoll
0f63b8279b Fixed the creation of local variables in do-m-v-setq 2012-12-16 23:40:01 +01:00
Juan Jose Garcia Ripoll
0800f9a2cc In do-m-v-setq simplify the assignment of multiple values, eliminating the use of goto 2012-12-16 23:30:29 +01:00
Juan Jose Garcia Ripoll
1678665a0f The first value in MULTIPLE-VALUE-SETQ is always available 2012-12-16 22:29:33 +01:00
Juan Jose Garcia Ripoll
28dd821187 Remove unused variables in do-m-v-setq. 2012-12-16 22:10:19 +01:00
Juan Jose Garcia Ripoll
86540cdc9a Unify do-m-v-setq-{fixed/any} 2012-12-16 22:00:39 +01:00
Juan Jose Garcia Ripoll
e283f53d02 Let DO-M-V-SETQ-ANY use VALUE0 2012-12-16 12:04:34 +01:00
Juan Jose Garcia Ripoll
7b2fbd6fb1 MULTIPLE-VALUE-BIND now compiles using the same tools as MULTIPLE-VALUE-SETQ 2012-12-16 10:26:16 +01:00
Juan Jose Garcia Ripoll
438a33cafb Simplify ecl_truncate1() on rationals 2012-12-16 00:47:15 +01:00
Juan Jose Garcia Ripoll
b263921e99 Split FLOOR, CEILING, TRUNCATE and ROUND into separate C files. 2012-12-16 00:38:01 +01:00
Juan Jose Garcia Ripoll
478427d8ca Simplified ecl_round1() when handling rationals 2012-12-15 23:43:23 +01:00
Juan Jose Garcia Ripoll
031cbcfbd1 ecase_error and etypecase_error tagged as no-return functions 2012-12-15 22:23:14 +01:00
Juan Jose Garcia Ripoll
c1b8bfa888 Added CCASE-ERROR and CTYPECASE-ERROR to cl_symbols. 2012-12-15 22:18:39 +01:00
Juan Jose Garcia Ripoll
161a613c07 SI::WRONG-TYPE-ARGUMENT is now linked to cl_symbols 2012-12-15 22:06:14 +01:00
Juan Jose Garcia Ripoll
0f4aee0101 DO-CHECK-TYPE, ECASE-ERROR and ETYPECASE-ERROR are now automatically defined in cl_symbols. 2012-12-15 21:49:49 +01:00
Juan Jose Garcia Ripoll
acd600641a ASSERT-FAILURE is now linked to cl_symbols 2012-12-15 21:26:31 +01:00
Juan Jose Garcia Ripoll
13459a98f0 Write SCALE-FLOAT so that it cannot lead to infinite loops 2012-12-15 02:14:54 +01:00
Juan Jose Garcia Ripoll
c1d78daf82 ffi:definline referenced a symbol from the C package without package prefix. 2012-12-09 10:40:08 +01:00
Juan Jose Garcia Ripoll
1377008d98 ENSURE-DIRECTORIES-EXIST ignores the host and device from the original pathname when creating the directories. 2012-12-09 00:11:35 +01:00
Juan Jose Garcia Ripoll
c6c4264148 Create a new variable object for each global variable bound ina LET form 2012-12-08 12:41:10 +01:00
Juan Jose Garcia Ripoll
522d139f4e Proclamations now propagate to all global variables. 2012-12-08 12:02:05 +01:00
Juan Jose Garcia Ripoll
ac40a4649b The temporary variables in cmplet.lsp should not have any package (i.e. gensym instead of gentemp) 2012-12-08 11:49:06 +01:00
Juan Jose Garcia Ripoll
900282e85f Local variables are now downcased (V2a -> v2a, for instance) 2012-12-08 01:04:52 +01:00