Daniel Kochmański
20fdd44b79
contrib: defsystem: fix packages
2019-03-15 20:38:39 +01:00
Daniel Kochmański
d22bfd0ce1
Merge branch 'unix-signal' into 'develop'
...
Document unix signal handling capabilities
See merge request embeddable-common-lisp/ecl!137
2019-03-15 19:26:56 +00:00
Daniel Kochmański
548f4eb318
Merge branch 'ansi-nicknames' into 'develop'
...
ansi conformance: remove spurious package nicknames
See merge request embeddable-common-lisp/ecl!141
2019-03-15 19:22:35 +00:00
Daniel Kochmański
eee8ed7557
ansi conformance: remove spurious package nicknames
2019-03-15 19:22:35 +00:00
Marius Gerbershagen
c5d2408cc5
be consistent with the arguments passed to signal handlers
...
The :process keyword argument is used inconsistently for symbols
denoting functions and function objects. Furthermore, it isn't
needed and unused in our own code.
2019-03-15 18:54:05 +01:00
Marius Gerbershagen
eb6854f6d9
doc: document unix signal handling capabilities
2019-03-11 17:16:13 +01:00
Daniel Kochmański
72127722da
Merge branch 'stream-fixes' into 'develop'
...
ANSI Streams: Document extensions and fix various bugs
See merge request embeddable-common-lisp/ecl!140
2019-03-11 15:26:52 +00:00
Marius Gerbershagen
44f460a7d2
doc: document ANSI stream extensions
2019-03-02 17:50:33 +01:00
Marius Gerbershagen
eddd9cc9aa
streams: export si:set-buffering-mode in ext package
...
This function is also useful for users and thus belongs in the
external interface.
2019-03-02 17:40:38 +01:00
Marius Gerbershagen
25688d1531
sequence streams: fix and simplify stream creation functions
...
Since we only support vectors with element type size of a byte, we
don't need to check for non-base-strings. Also make sure to set
the byte size of the stream always to a positive value.
2019-03-02 17:40:38 +01:00
Marius Gerbershagen
686127588a
generic_read_byte_signed8: use safe conversion to signed char
...
We now signal an error when trying to write a byte outside of the
range of a signed char to a stream with element type (signed-byte 8)
2019-03-02 17:40:38 +01:00
Marius Gerbershagen
9f9dd19840
streams: fix byte-order-mark for :ucs-2 and :ucs-4 external formats
...
We were writing little-endian BOMs, but writing big-endian characters.
2019-03-02 17:40:38 +01:00
Marius Gerbershagen
41eb59ab46
Merge branch 'defclass-nil' into 'develop'
...
Fixes for NIL-related conformance problems
Closes #474 und #475
See merge request embeddable-common-lisp/ecl!139
2019-02-24 20:16:18 +00:00
Daniel Kochmański
f87d50f053
bytecmp: tagbody: ensure ECL_NIL->ECL_NIL_SYMBOL conversion
...
Issue comes from the fact that list and symbol types are not
disjoint. Fixes #475 .
My personal opinion (to put some rambling in a commit message) is that
having NIL being so many things is a blatant mistake and shouldn't be
picked up for Common Lisp (though many programs would probably break
and it wouldn't be so Common then).
2019-02-24 14:22:13 +01:00
Daniel Kochmański
95dd38abd3
defclass: make sure that defclass option "NIL" errors
...
This is as for CLHS section 7.1.2. Error was caused by the fact that
unknown-key was a flag, so if the initarg was NIL, we were assigning
it value NIL, what is also a boolean false. Right now we collect all
invalid initargs in a list, so in case of NIL we'll get (NIL) what is
a generalized boolean true value. Closes #474 .
Also add cosmetic fixes with declarations.
2019-02-24 12:15:27 +01:00
Marius Gerbershagen
2f15d4fad9
Merge branch 'fix-copyrights' into 'develop'
...
copyright: add Marius to the maintainer list.
See merge request embeddable-common-lisp/ecl!138
2019-02-22 18:43:37 +00:00
Daniel Kochmański
77d2cc50cd
copyright: add Marius to the maintainer list.
...
His contributions and activity beg for doing that; henceforth I
recognize him as a co-maintainer of the project.
2019-02-22 18:43:37 +00:00
Daniel Kochmański
c2daebc4bd
Merge branch 'develop' into 'develop'
...
enable long float support on windows msvc build.
See merge request embeddable-common-lisp/ecl!136
2019-02-22 10:55:19 +00:00
ZhangYuguo
913cab0bf9
enable long float support on windows msvc build.
...
since c99 is mandatory now, we should never consider msvc6 anymore.
2019-02-19 15:11:23 +08:00
Daniel Kochmański
60d19cd9ab
numbers: don't assume ECL is always built with longfloat
...
Fixes regression with windows builds (and all buidls without longfloat).
2019-02-16 10:45:19 +01:00
Marius Gerbershagen
60870ae9b0
use correct unnormalized values for minimum float constants
...
Fixes #470 .
2019-02-13 20:24:26 +01:00
Marius Gerbershagen
19c6635ff0
expt: use pow function for floating point numbers
...
Improves speed and accurracy.
2019-02-12 22:37:23 +01:00
Marius Gerbershagen
dff91be38c
sysfun.lsp: clean up inline expansions for floating point numbers
...
Define all expansions also for long floats if available, use
single float C functions when given a single float.
2019-02-12 22:30:57 +01:00
Marius Gerbershagen
fee1d49baa
fix float-precision for long floats
2019-02-09 22:06:35 +01:00
Marius Gerbershagen
2b7d0bdb67
format: fix exponential floating point output
...
sys::scale-exponent was not working correctly and outputting
numbers in the wrong range. Furthermore, using sys::scale-exponent
for scaling the number to the correct range is flawed anyway,
since it introduces rounding errors. Hence we replace
sys::scale-exponent by the much simpler sys::exponent-in-base10
function and fix the logic in format-exp-aux to scale using
sys::flonum-to-string, which is rounding error free. Moreover,
sys::flonum-to-string was buggy and not rounding numbers correctly
when the 'd' parameter was given, which has also been fixed.
Fixes #437 .
2019-02-09 22:06:35 +01:00
Marius Gerbershagen
4902b9dee0
Merge branch 'defstruct-redefinition' into 'develop'
...
defstruct redefinition
Closes #457
See merge request embeddable-common-lisp/ecl!134
2019-02-08 20:27:55 +00:00
Daniel Kochmanski
a361055a3d
defstruct: disallow defining structures of incompatible layouts
...
We signal an error if the structure is incompatible with an already defined
one. We concern ourself about slot names, their types, offset and number of
slots. Fixes #457 .
2019-02-08 20:45:55 +01:00
Daniel Kochmanski
38f5dea0ca
cas: ensure that package locks are honored
2019-02-07 13:59:55 +01:00
Daniel Kochmanski
13a42249e2
cas: add remcas operation for an expansion removal
...
It is a (fmakunbound (setf foo)) counterpart.
2019-02-07 13:29:03 +01:00
Daniel Kochmanski
9096514cff
extensions: put ext:package-locked-p in core module.
2019-02-07 13:27:12 +01:00
Daniel Kochmański
2190974312
Merge branch 'loop-iteration-types' into 'develop'
...
loop: fix type declarations for iteration variables
Closes #455
See merge request embeddable-common-lisp/ecl!133
2019-01-31 10:41:53 +00:00
Marius Gerbershagen
c447fea04f
doc: fix documentation of si_safe_eval
2019-01-30 21:23:16 +01:00
Marius Gerbershagen
689ac03a85
be more consistent w.r.t *print-level* when printing structures
...
Print empty structures without slots as "#" when *print-level* is
0 (same as non-empty structures) and decrement *print-level* by 1
for printing of structure elements.
Fixes #454 .
2019-01-30 21:00:59 +01:00
Marius Gerbershagen
7a06d9795e
loop: fix type declarations for iteration variables
...
We only need to consider the types of start and step variables,
since the limit value is never actually assigned to the iteration
variable.
Fixes #455 .
2019-01-27 16:10:11 +01:00
Marius Gerbershagen
0ad38e2a3d
fix return statement of si_copy_stream
2019-01-20 15:57:47 +01:00
Daniel Kochmański
2b92a7acd9
Merge branch 'android-new-bdwgc' into 'develop'
...
Fix compilation with recent Android NDKs and support ARM64 Android
See merge request embeddable-common-lisp/ecl!132
2019-01-20 10:41:46 +00:00
Marius Gerbershagen
8421225d9e
gensym: check type of *gensym-counter* to be non-negative integer
...
Fixes #464 .
2019-01-19 21:44:35 +01:00
Marius Gerbershagen
cf2fe46ddf
fix with-restart-case for restarts with both :test and :interactive
...
Issue reported and fix provided by gitlab user Bicyclidine. Closes
#450 .
2019-01-19 21:18:59 +01:00
Marius Gerbershagen
0b6311b399
contrib: remove use of legacy names
2019-01-14 21:29:34 +01:00
Marius Gerbershagen
ca4eabea15
configure.ac: detect feenableexcept with AC_CHECK_DECL
...
On Android feenableexcept is only declared as a macro, but not
present as a function.
2019-01-12 22:51:59 +01:00
Marius Gerbershagen
d0cf3c86e4
build libecl.so with soname on Android
...
Otherwise the linker on recent Android versions will not find
libecl.so. For compatibility with existing Android apps which only
distribute a libecl.so file, but not a libecl.so.16.x file, we
don't use a version component in soname, since the linker on older
Android versions only looks for libraries matching the exact
soname.
2019-01-12 22:51:59 +01:00
Marius Gerbershagen
6090d9d201
update installation instructions for recent Android NDKs and support ARM64
...
Works for Android NDKs with unified headers (see https://android.googlesource.com/platform/ndk/+/ndk-release-r16/docs/UnifiedHeaders.md ).
Separate step of configuring a standalone toolchain is recommended
by the Android docs. Explicitely setting CC to clang is useful,
since gcc in Android NDK is deprecated and outright broken in NDK
version 18. Using the bfd linker is needed for bdwgc to work
correctly (see also https://github.com/ivmai/bdwgc/issues/259 ).
2019-01-12 22:51:17 +01:00
Marius Gerbershagen
06d6ffe158
android: do not compile with -D_FILE_OFFSET_BITS=64
...
Otherwise on NDK >= 16 fseeko and ftello are not declared in
stdio.h for Android API versions smaller than 24 (See
https://android-developers.googleblog.com/2017/09/introducing-android-native-development.html ).
2019-01-12 20:21:19 +01:00
Marius Gerbershagen
736f50b864
bdwgc: Update library to version 7.6.8.
...
libatomic_ops is updated accordingly to version 7.6.6.
Fixes build failures on android.
2019-01-12 20:21:19 +01:00
Daniel Kochmański
6982a805f1
Merge branch 'cleanup-string-building' into 'develop'
...
clean up functions creating base strings from C strings
Closes #462
See merge request embeddable-common-lisp/ecl!131
2019-01-07 19:55:49 +00:00
Marius Gerbershagen
24dcb778cf
clean up functions creating base strings from C strings
...
Make functions behave as documented, remove use of legacy names.
Fixes #462 .
2019-01-07 18:43:55 +01:00
Marius Gerbershagen
089d30260c
libffi: use unified assembler syntax to allow building libffi on arm with clang
...
The offending code has already been changed in libffi but no new
release has been made yet.
2019-01-04 16:15:25 +01:00
Daniel Kochmański
2b7822769a
Merge branch 'new-doc' into 'develop'
...
Use new doc as standard documentation
See merge request embeddable-common-lisp/ecl!129
2019-01-03 18:56:40 +00:00
Marius Gerbershagen
6005c030b6
doc: set new doc as standard documentation
2019-01-03 19:14:28 +01:00
Marius Gerbershagen
d07e110526
doc: document C equivalent of setf functions
2019-01-03 13:58:24 +01:00