Commit graph

2746 commits

Author SHA1 Message Date
Daniel Kochmański
3f3af5275d buildsystem: configpre (wip) 2016-10-08 12:00:07 +02:00
Daniel Kochmański
473bcd6572 buildsystem: move ECL_IEEE_FP define to config.h 2016-10-08 10:08:47 +02:00
Daniel Kochmański
988e4755f4 makefile: remove redundant dep 2016-10-07 20:42:36 +02:00
Daniel Kochmański
2e6fd7e449 buildsystem: split config.h into config.h and config-internal.h
Part of config.h was removed during the installation, we split config.h
so that part is in a separate file.

Additionally we add ECL_BUILD define during ECL build phase, so we can
distinguish whenever we build ECL or use it normally (because ecl.h has
to include config-internal.h at the build time).
2016-10-07 12:49:55 +02:00
Daniel Kochmański
ca15938fe5 buildsystem: be very restrictive when building
We don't error on shift-count-overflow, because file offsets may be
bigger than fixnums and coercion to bignum relies on such
overflows. This is something what probably can be fixed.
2016-10-06 14:16:10 +02:00
Daniel Kochmański
f0ced27e0c makefile: add comment 2016-10-06 14:15:40 +02:00
Daniel Kochmański
1f2baae183 fix noreturn of si_signal_simple_error 2016-10-06 13:07:16 +02:00
Daniel Kochmański
fe0453fc08 explicitly cast original in queue.d
original is declared as volatile, but pthread_* discards this
qualifier. Do explicit cast to get rid of warning.
2016-10-06 12:59:13 +02:00
Daniel Kochmański
fb72db4ed2 serialize: fix t_bytecodes code serialization 2016-10-06 12:56:54 +02:00
Daniel Kochmański
9f1de81a37 ecl_make_stream_from_fd: argument order was incorrect 2016-10-06 12:50:02 +02:00
Daniel Kochmański
ef665f0faf cosmetic: line wrap 2016-10-06 12:26:51 +02:00
Daniel Kochmański
b414d3fc4a execv* in run-program: cast argv_ptr to (char **) 2016-10-06 12:26:12 +02:00
Daniel Kochmański
286714261d GC_call_with_alloc_lock: cast functions to GC_fn_type 2016-10-06 12:23:48 +02:00
Daniel Kochmański
2f89642227 fix noreturn attributes
Some functions doesn't return, declare them so (GCC complaints).
2016-10-06 12:21:26 +02:00
Daniel Kochmański
429a99a2c4 fix declaration of not_a_file_stream
not_a_file_stream function is noreturn, so it doesn't matter what type
for return is declared, but is used often in a context, where declared
function returns cl_object. Make it happen to get rid of unnecessary
warnings.
2016-10-06 11:43:21 +02:00
Daniel Kochmański
0badafcd35 multiprocessing: add predicate "mp:holding-lock-p"
This predicate returns T if lock is hold by the process and NIL if it is
hold by another process or is released.
2016-10-05 13:42:45 +02:00
Daniel Kochmański
11e35ea5b9 windows: gc: remove spurious define
Older bdwgc didn't export that symbol, so ECL patched that definition
for its own threaded needs. bdwgc has improved since then and our own
definition breaks CC builds. Fixes #288.

See https://gitlab.com/embeddable-common-lisp/ecl/issues/288
2016-09-16 11:03:44 +02:00
Elias Pipping
b8b9571410 Fix declaration of terminate-process 2016-09-07 09:20:07 +00:00
Daniel Kochmański
2c3f0e0127 Merge branch 'fix-haiku' into develop 2016-09-07 09:40:26 +02:00
Elias Pipping
ee0152431c Implement ext:terminate-process 2016-09-06 19:58:39 +00:00
Daniel Kochmański
09fe4d9364 si_{nan,infinity}: don't go through ecl_make_*
ecl_make_*_float performs FPE handling – we don't need it in this
case. We want this not being handled.
2016-09-06 18:01:25 +02:00
Daniel Kochmański
0f6793aab4 alloc_2: wrapped_finalizer: fix no-thread builds 2016-09-06 18:01:04 +02:00
Daniel Kochmański
5024c38e33 cosmetic: indent 2016-09-06 18:00:31 +02:00
Daniel Kochmański
05ecb5dfd0 load: if file doesn't have an extension try it
Until now ECL have tried to guess the file extension first, before
verifying if the file without the extension exists. First try loading
file without an extension, only after that try guessing. Fixes #284.
2016-09-05 16:53:16 +02:00
Daniel Kochmański
9ae08a5103 num_rand: put declaration above assignment
MSVC 2010 doesn't like mixing declarations and the rest of the
code. Fixes #283 (patch provided by Vadim Penzin).
2016-09-01 21:59:25 +02:00
Fabrizio Fabbri
28a0f957fe Use the project comment style. 2016-08-29 03:55:16 -04:00
Fabrizio Fabbri
8c18ba2348 Merge remote-tracking branch 'origin/develop' into develop 2016-08-23 15:40:47 -04:00
Fabrizio Fabbri
1e5e86c1d2 Fix on several minor issue on thread.
- fix #262 to manage CTRL+c on Win.
- unregistered thread are left registered and enviroment not cleanup.
-  manage when a finalizer is invoked before a valid enviroment is available.
2016-08-23 15:28:23 -04:00
Daniel Kochmański
77a5583cde Merge branch 'develop' into 'develop'
Fix for #276



See merge request !30
2016-08-19 14:02:55 +00:00
Fabrizio Fabbri
e8879b0f06 Merge remote-tracking branch 'gitlab/develop' into develop 2016-08-19 09:32:19 -04:00
Fabrizio Fabbri
5031b7de4d fix for #276 VirtualFree is invoked with wrong parameters.
- VirtualFree with MEM_RELEASE must be invoked with 0 size.
2016-08-19 09:29:00 -04:00
Daniel Kochmański
93fb2bced2 cosmetic: add missing line break 2016-08-14 15:01:55 +02:00
Daniel Kochmański
c57fcd366c ieee-floats: improve api, fix ieee-float builds
This initializes CL infinite floats with a precomputed and casted
infinity from the appropriate C macro. This removes runtime 0/0
operations.
2016-08-11 23:44:38 +02:00
Daniel Kochmański
ed5ecd03eb ieee-floats: fix builds with --with-ieee-fp=no
Functions to print (nan,float)-to-string and and predicates are still
available, but ext:*-float-*-infinity aren't available if ECL is built
with option `--with-ieee-fp=no`.
2016-08-11 22:38:30 +02:00
Daniel Kochmański
e1d11cddbd random-state: add ext:random-state-array function
This function will return random-state array. This is meant for next
commit which implements MAKE-LOAD-FORM for random-state objects.
2016-08-10 13:54:22 +02:00
Daniel Kochmański
ab2e5a3593 random-state: make-random-state accepts arrays
Type of the array is checked. The code has been moved from the `#$'
reader-macro simplifying its implementation.
2016-08-10 13:52:10 +02:00
Fabrizio Fabbri
be3b6ba9ea fix build when msvc support bool type on c99 and stdbool.h 2016-08-09 04:23:58 +02:00
Daniel Kochmański
af65969c0b file-stream-fd: don't cause internal error
If the argument isn't a file-stream rise a SIMPLE-TYPE-ERROR
condition. Fixes #271.
2016-08-04 14:51:43 +02:00
Daniel Kochmański
86a591461c make-random-state: allow fixnum as the argument 2016-08-04 10:32:18 +02:00
Fabrizio Fabbri
8fed1fa97d Fixed VS2010/2015 build.
- Fix #213
- Commit 10bd3b61 removed dffi code. Reflect that on nmake build.
2016-07-21 04:45:28 -04:00
Fabrizio Fabbri
5b383d3ff5 env->cs_limit error. (Fix #57)
* Ensure that operation are performed in the correct order.
2016-05-31 08:01:58 -04:00
Fabrizio Fabbri
311f34a2d6 Support for aix on 32 and 64 bit.
* add UNIX as *features* on aix to build asdf.
* configure thread and runlime linking.
* generalize print_lock macro as xlC complain on variadic
  macro arguments number.
2016-05-30 06:32:41 -04:00
Daniel Kochmański
2e43f8cf03 android: fix builds 2016-05-16 09:22:42 +02:00
Fabrizio Fabbri
5f032e2dfa Fix MSVC compilation 2016-05-12 13:09:54 -04:00
Walter Genovese
67b2000ac6 MSVC fix ecl_import_current_thread
* Do not close thread handler until the thread is unregistered otherwise
  the thread wakeup using QueueUserAPC will not work.
2016-05-12 13:09:53 -04:00
Fabrizio Fabbri
ca2a0c91e6 Fix import thread 2016-05-12 13:09:52 -04:00
Daniel Kochmański
416a8497a5 cosmetic: remove bogus file 2016-05-06 13:01:57 +02:00
Daniel Kochmański
9b122f0c7f file.d: fix noreturn warning 2016-05-06 12:57:17 +02:00
Daniel Kochmański
40ef71aa60 rng: make-random-state conformity and #$ macro fix
`make-random-state' now accepts the conforming types of the
arguments (ie not a fixnum nor simple-vector).

Additionally we sanitize the vector provided to the #$ to be of the
correct arity and type (#313 byte64 or #625 byte32 depending on the
architecture).
2016-05-06 12:55:25 +02:00
Daniel Kochmański
61cd6b9ce7 list_current_directory: refactor 2016-05-06 08:45:16 +02:00