Commit graph

59 commits

Author SHA1 Message Date
jjgarcia
bcbab955dc Ensure that strings in pathnames are valid C strings 2005-02-22 17:43:56 +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
615200a550 First steps towards support of binary streams 2004-12-16 11:21:20 +00:00
jjgarcia
4bfc19b3c3 Fixed printer of bignums and implemented readtable case. 2004-12-13 11:19:08 +00:00
jjgarcia
956aa10c8c Empty namestrings "" result in pathnames with all elements set to NIL 2004-12-03 17:27:10 +00:00
jjgarcia
6b219625b5 Port to Microsoft VC++ by Goffioul Michael <goffioul@imec.be> 2004-10-25 16:34:20 +00:00
jjgarcia
bc6b0c4ea1 By default, use / as directory separator under windows 2004-08-02 08:21:54 +00:00
jjgarcia
cb23bde0b7 Minor comments 2004-06-24 07:49:25 +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
71f921ed39 Remove some warnings from GCC 2004-01-24 17:00:24 +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
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
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
7802543f2d Small optimization 2004-01-09 13:46:37 +00:00
jjgarcia
738b711ea2 Fixed typo 2004-01-09 13:10:33 +00:00
jjgarcia
90a0382ae8 + Fixes in the routines that deal with pathnames: it is now possible to
use *DEFAULT-PATHNAME-DEFAULTS* as current working directory, because it
is set to the initial directory and because it can be updated with SI::CHDIR.
+ Pathname versions are now properly handled and printed. At least for logical
pathnames, because physical namestrings cannot have version numbers.
+ An error is signaled when one tries to print _readably_ a pathname that does
not have a namestring such that parsing this namestring produces the same
pathname. This happens, for instance, with pathnames that do not have hosts,
or that have version numbers and are not logical.
+ Fixes in the CLOS subsystem: ADD-METHOD and REMOVE-METHOD now update the
GENERIC-FUNCTION slot of method objects, and output the right values.
It is now possible to use two nested SYMBOL-MACROLET that define the same
symbols.
2004-01-08 11:03:05 +00:00
jjgarcia
99e1acec1c CLASS-OF is now in the C core, and the parameter specializers of a method are always either class objects, EQL specializers or NIL. 2003-12-19 10:10:13 +00:00
jjgarcia
e9133326f7 The conditions signaled by MAKE-PATHNAME because of bogus pathname components are now of type FILE-ERROR. 2003-12-18 14:23:37 +00:00
jjgarcia
6b03e9343b Fixes for PARSE-NAMESTRING. 2003-12-18 12:46:54 +00:00
jjgarcia
8bba2eadcf Support for :CASE keyword argument in most pathname functions (Contributed by Julian Stecklina). COMPILE-FILE now handles relative pathnames. 2003-12-17 10:28:26 +00:00
jjgarcia
b55dafa58d Finished the port to MingW32. 2003-12-01 11:21:47 +00:00
jjgarcia
4eac79774e Preliminary support for POSIX threads. 2003-11-18 11:23:07 +00:00
jjgarcia
dfe6fb3213 Most structure and enumeration types are renamed to avoid clashes with other libraries (most notably C++). 2003-10-22 07:56:36 +00:00
jjgarcia
d0cd173cf4 Initial patches for supporting MINGW32 2003-07-08 17:36:41 +00:00
jjgarcia
5edc1bb191 Parse properly filenames with a leading dot, like ~/.ecl.lsp or ~/.eclrc 2003-06-27 16:16:26 +00:00
jjgarcia
a381a7ee09 Merge NEW_COMPILER 25.05.03 2003-05-26 09:49:50 +00:00
jjgarcia
c2aa136143 Various minor fixes, and an important set of changes to teach the compiler
and the interpreter to understand (SETF fname) function names, and to handle
them without creating auxiliary symbols.
2003-04-28 15:55:22 +00:00
jjgarcia
f20736084b Add more symbols to src/c/symbols_list.h, and resolve associated conflicts. 2003-04-28 09:25:58 +00:00
jjgarcia
41c0868469 Bunch of fixes. See CHANGELOG. 2003-03-17 10:39:08 +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
aaa68d02a8 LOGICAL-PATHNAME implemented. 2002-12-14 15:03:07 +00:00
jjgarcia
495d5d0172 We need string.h for memcpy(). 2002-12-09 12:47:44 +00:00
jjgarcia
aefdb1995b Introduce ecl_register_static_root() to register C static variables as containing pointers for garbage collection. Make ecl_register_static_root() do nothing in the Boehm-Weiser GC, because it already scans the whole data segment. 2002-11-18 12:48:58 +00:00
jjgarcia
6b408bad43 Remove pathname_match_p and symbol_name, which are redundant. Clean external.h, removing names of functions which do ot exist. 2002-11-18 11:30:56 +00:00
jjgarcia
2e6482b0a1 Rewrite the checking of # of arguments, so that the error message gets the name of the function whenever possible. 2002-11-18 11:29:21 +00:00
jjgarcia
3c71ec8ad2 Make use of GCC's __attribute__((regparm)) to simplify calling the error functions. 2002-11-18 11:27:51 +00:00
jjgarcia
b55a0130bc Replace coerce_to_string_designator with cl_string 2002-11-18 11:24:30 +00:00
jjgarcia
72ceea3d3c Fixed FILE-NAMESTRING, implemented ENSURE-DIRECTORIES-EXIST, and added a
WITH-COMPILATION-UNIT which does nothing.
2002-11-14 18:38:34 +00:00
jjgarcia
12ba5b9035 FILE-NAMESTRING coerced pname to a string, instead of to a pathname. 2002-11-14 17:11:27 +00:00
jjgarcia
9bdb35ee31 Make the behavior of "**" in logical pathnames more intuitive. For
instance, now "HOME:FOO.LISP" matches the translation rule
("**/*.*" "~/**/*.*"), which formerly it did not. Also, add a logical
hostname for the home directory.
2002-11-14 16:32:18 +00:00
jjgarcia
b0ce08d0ea Changes towards 0.7b comprise naming and calling conventions. See CHANGELOG. 2002-11-04 14:08:24 +00:00
jjgarcia
23ee878e59 All symbols belonging to the LISP package and to the C core, are
kept in a single array, "cl_symbols". The translator "dpp" and the
routine SI::MANGLE-NAME, output the right name for any symbol
which is in this array.
2002-09-15 13:29:05 +00:00
jjgarcia
3a87ac41f4 Provide declarations for some functions & remove some #include's from ecl.h 2002-09-03 13:39:13 +00:00
jjgarcia
57a7261d34 Fix typo in copy_list_wildcards() 2002-09-03 12:42:47 +00:00
jjgarcia
ee6300ea76 Fixed typo in path_list_match(). 2002-09-03 12:41:50 +00:00
jjgarcia
ab82a93fda Solve bogus patch to si::pathname-translations. 2002-02-11 10:40:50 +00:00
jjgarcia
339300744e Local variable host clobbers argument to si::pathname_translations 2002-02-11 10:29:55 +00:00