Daniel Kochmański
3938eb8893
unicode: Improve unicode handling for characters.
...
Additional sanity checks and bugfixes in case of providing extended
strings to character low-level functions.
Signed-off-by: Daniel Kochmański <dkochmanski@turtle-solutions.eu>
2015-05-03 11:36:20 +02:00
Daniel Kochmański
8977a7cc85
unixfsys.d: enter-directory: Coerce if directory is extended string.
...
If directory is of type (simple-array character(*)), then coerce it to
(simple-array base-char (*)) instead of throwing an error.
Signed-off-by: Daniel Kochmański <dkochmanski@turtle-solutions.eu>
2015-05-02 14:00:08 +02:00
Daniel Kochmański
9cacaacac2
Revert "symols_list2.h: build actualized this file after symbols_list.h"
...
This reverts commit 4ff5921d7c .
2015-04-24 16:15:27 +02:00
Daniel Kochmański
9f1f595b3d
Revert "sombols-list: fix bogus entry for ext::make-encoding in symbols_list.h."
...
This reverts commit 518264369e .
2015-04-24 16:14:57 +02:00
Roger Sen
b0e78cad8d
Removed external reference to GC_dont_gc, no needed in the new Boehm
...
GC API.
2015-04-12 11:47:50 +02:00
Roger Sen
cddb87313d
Updated GC api to remove deprecated methods
2015-04-12 11:47:43 +02:00
Daniel Kochmański
4ff5921d7c
symols_list2.h: build actualized this file after symbols_list.h
2015-03-07 18:25:33 +01:00
Daniel Kochmański
518264369e
sombols-list: fix bogus entry for ext::make-encoding in symbols_list.h.
...
Due to mistake, ext::make-encoding was pointing to si_make_encoding,
but si_make_encoding was calling ext::make-encoding, what caused
infinite recursion when building for windows, when codepage was
different then Latin-1.
2015-03-06 17:10:43 +01:00
Daniel Kochmański
f499cf744f
file.d: move variable declarations before body of functions.
...
This patch is necessary to compile ECL under MSVC (2008/2010) on
Windows platform.
2015-02-25 21:59:32 +01:00
Daniel Kochmański
25a4892635
Merge branch 'master' into develop
2015-02-21 19:52:01 +01:00
Nils Bruin
8a2d0c96e8
Patch to improve CLHS compliance of file-position
...
CLHS mandates that failure to determine or set the file position on a
stream should be signalled by returning NIL rather than raising an error.
Also, POSIX does not mandate that lseek fail on terminals, but these devices
obviously are not seekable. Hence, CLHS compliance is improved by explicitly
returning NIL when the requested stream is a tty.
2015-01-26 18:30:04 -08:00
Daniel Kochmanski
45ebde8b39
ffi: implement si_unload_foreign_module.
...
Patch is necessary to implement this function in cffi - a few libraries
depends on this functionality, and until now it throws an error.
Signed-off-by: Daniel Kochmanski <dkochmanski@hellsgate.pl>
2015-01-18 13:57:20 +01:00
Arto Bendiken
03e4303ff8
Imported a model file for Coverity Scan to reduce false positives.
...
In general, any function declared with the 'ecl_attr_noreturn'
attribute might need to be defined to call __coverity_panic__() here.
See: https://scan.coverity.com/tune
2014-10-15 13:59:04 +00:00
Arto Bendiken
ba3d8d907d
Corrected pathname buffer size handling in the dpp utility.
...
This resolves CID 66412 (Buffer not null terminated).
Note, however, that BUFSIZ should probably be PATH_MAX instead.
2014-10-14 22:13:59 +00:00
Arto Bendiken
e13c07bd4a
Ensured that ecl_file_len() doesn't return a random value on error.
...
This partially addresses CID 66411 (Unchecked return value from library).
The call to fstat() should still probably have error checking added.
2014-10-14 22:04:30 +00:00
Arto Bendiken
8e714e3a55
Added a sanity check to the unreachable branch in expt_zero().
...
This resolves CID 66441 (Missing return statement).
2014-10-14 21:58:59 +00:00
Arto Bendiken
633c3a5f63
Added a sanity check assertion for VV in ecl_init_module().
...
This addresses CID 66852 (Uninitialized pointer read).
2014-10-14 20:27:59 +00:00
Stas Boukarev
85165d989a
Fix eql-specializer dispatch caching.
...
When the EQL specializer is a class it may clash with a class
specializer, since the class specializer is cached as a class object.
Use twice as much space for cache, the cache entry itself and a bit, 1
if it's an eql-specializer, 0 if it's a class specializer.
Fixes #295
2014-09-27 00:46:50 +04:00
Daniel Kochmański
fa6a345055
c/Makefile.in: fixed multiple-job build of ecl.
...
make -jX was failing due to unresolved dependencies to dpp.
See: https://sourceforge.net/p/ecls/patches/37/
Signed-off-by: Arto Bendiken <arto@bendiken.net>
2014-09-22 12:40:37 +00:00
Philipp Marek
997412481c
Add two "t_string" cases, as the reader now always returns STRINGs.
...
See http://article.gmane.org/gmane.lisp.ecl.general/10410 for a discussion.
2014-05-04 20:46:14 +02:00
Philipp Marek
34253898c7
Not only BASE-STRINGs but STRINGs may be package-specifiers, too.
...
Needed because quoted strings are read now always read as STRING.
2014-04-28 07:42:06 +02:00
Philipp Marek
4cb3d7c17b
double_quote_reader(): Reference the discussion on ecls-list.
2014-04-27 10:54:30 +02:00
Philipp Marek
d2aa6f957e
Trying to fix closure-common.
...
RUNEs and RODs are not compatible with the result
of (RUNES:RUNE), because that returns (STRING ...), and
(TYPE-OF "Σ") has CHARACTERS, but
(TYPE-OF "a") "only" BASE-CHARs ...
At least CLISP, ABCL, SBCL return the same value for both
TYPE-OF forms above.
2014-04-26 20:01:47 +02:00
Philipp Marek
77a267c7e4
Make (EXT:PACKAGE-LOCK) return the promised value.
...
The (possibly invalid!) pack.locked was returned; for STRING inputs
the field aliased to "elttype", which was eg. 0xf for t_base_strings.
2014-03-09 20:35:43 +01:00
Philipp Marek
e161690265
Fixed a typo.
2014-03-09 20:31:59 +01:00
Stas Boukarev
d4f3997bda
Fix MULTIPLE-VALUE-BIND not evaluating values-form.
...
(let (x) (multiple-value-bind () (setf x t)) x) returned NIL because
the values-form was discarded.
2014-03-02 21:36:23 +01:00
Philipp Marek
3e9f5cafe1
Fix declaration that was activated by commit 285eb318,
...
"fixes for the detection of GC_start_call_back"
2014-02-27 20:47:53 +01:00
D Herring
285eb31812
fixes for the detection of GC_start_call_back
...
- HAVE_GC_SET_START_CALLBACK was defined unconditionally
- there was no AC_DEFINE if system_boehm was false
- there was a typo in one usage site of this macro
see 6b754564f1
2014-02-27 09:43:21 +01:00
Stas Boukarev
5c9a58723a
Fix NO-APPLICABLE-METHOD.
...
Its lambda-list should be (generic-function &rest function-arguments), not
(generic-function function-arguments).
Its value should be returned at the call site of the generic function.
Fixes #278 .
2014-02-23 09:48:55 +01:00
Philipp Marek
2929636a14
#276 [PATCH]: printing hashtables readably is broken
...
https://sourceforge.net/p/ecls/bugs/276/
Thanks, Stas.
2014-02-22 12:27:26 +01:00
Juanjo Garcia-Ripoll
237af2e803
_hash_equalp() did not contain a case for bignums.
2013-10-29 23:47:54 +01:00
Juanjo Garcia-Ripoll
3dd9b227bd
Fixed typo
2013-10-15 09:57:25 +02:00
Juanjo Garcia-Ripoll
f0e31ded05
Fixed declaration of GC_start_call_back
2013-10-06 22:39:11 +02:00
Juanjo Garcia-Ripoll
6b754564f1
GC_start_call_back disappeared in recent versions of the GC library
2013-10-06 17:01:01 +02:00
Juan Jose Garcia Ripoll
a40c1907cf
Added the special form FFI:C-PROGN
2013-06-27 23:09:37 +02:00
Juan Jose Garcia Ripoll
e2ae310e2c
Fixed typo in the order of errors when building DELETE-FILE.
2013-06-27 23:01:20 +02:00
Juan Jose Garcia Ripoll
3054f2ac17
Slight memory savings by rewriting ecl_bds_set as ecl_bds_ref + assignment.
2013-06-22 23:03:11 +02:00
Juan Jose Garcia Ripoll
7801dba38d
si:copy-hash-table is exported
2013-06-02 22:48:42 +02:00
Juan Jose Garcia Ripoll
505fe233b2
The not-inlined version of ecl_bds_push differed from the inlined one.
2013-05-25 23:41:58 +02:00
Juan Jose Garcia Ripoll
94b37a8ab6
Missing use of ECL_NO_TL_BINDING in process.d
2013-05-24 21:33:06 +02:00
Juanjo Garcia-Ripoll
1c363e4dc3
CONSTANT-FORM-VALUE did not work with NIL
2013-05-21 10:48:35 +02:00
Juan Jose Garcia Ripoll
b2d8477479
PROGV must be able to 'ubind' variables when there are less values than variables, but the current implementation of thread-local binding prevents it.
2013-05-19 22:41:39 +02:00
Juan Jose Garcia Ripoll
3c0a911ebf
HASH-TABLE-COUNT now updates the list of live entries in weak hash tables
2013-04-16 23:11:01 +02:00
Juan Jose Garcia Ripoll
dbe13165bd
ECL now reports #+UNIX for all compatible systems, including *BSD ones.
2013-04-13 00:15:11 +02:00
Juan Jose Garcia Ripoll
b47b1869c6
New way of creating lisp data, using an array of string streams
2013-04-07 13:50:07 +02:00
Juan Jose Garcia Ripoll
2dd7768346
The problem with tanf() and glibc/gcc appears in other platforms. We extend the fix/hack to them.
2013-03-31 10:33:14 +02:00
Juan Jose Garcia Ripoll
e90ff5a6c7
Yet another attempt at a proper initialization of main_thread_sigmask.
2013-03-23 23:45:00 +01:00
Juan Jose Garcia Ripoll
bfc12ef39b
Fixed typo.
2013-03-22 23:29:33 +01:00
Juan Jose Garcia Ripoll
a17c4d0e7d
Added serialization of bytecodes and bytecode closures
2013-03-02 23:48:09 +01:00
Juan Jose Garcia Ripoll
7762aa904f
Fixed error message signaled when a readtable cannot be modified.
2013-02-28 22:55:47 +01:00