Fabrizio Fabbri
a74094de9a
fix coverity issue Missing varargs init or cleanup
2017-05-17 23:20:10 +02:00
Daniel Kochmański
7d8f7cdc76
add _ecl_unexpected_return(); to noreturn funs
2016-11-18 14:58:31 +01: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
ae7cae404d
indent: d-f
2016-05-05 15:24:58 +02:00
Attila Lendvai
15f3d7feab
fix bootstrap error printing in universal_error_handler.
...
Signed-off-by: Attila Lendvai <attila@lendvai.name>
2015-09-29 17:41:28 +02:00
Matthew Mondor
8f07cd58d8
The ECL code no longer uses tabulator characters, they were replaced
...
by spaces.
A custom script was used to insert/replace Emacs and ViM per-file editor
settings according to their type and the new ECL coding style.
2015-09-03 07:35:47 -04:00
Daniel Kochmański
09ae630cde
stack: add special conditional handler for stack-overflow
...
Add `serror' and `stack-error-handler', which behave like normal
`cerror' -> `universal-error-handler' call order, except fact, that
after handling stack-overflow condition they reset appropriate stack
limit. Fixes #56 .
Signed-off-by: Daniel Kochmański <dkochmanski@turtle-solutions.eu>
2015-06-24 13:45:54 +02:00
Daniel Kochmański
4d19a27424
cosmetic: untabify
...
Signed-off-by: Daniel Kochmański <dkochmanski@turtle-solutions.eu>
2015-06-21 14:38:20 +02:00
Juan Jose Garcia Ripoll
d5f1e4301b
Remove debug statements from error.d
2012-10-10 22:53:52 +02:00
Juan Jose Garcia Ripoll
dfc94901c4
delete-file, rename-file, chdir, mkdir and chmod now signal file-errors
2012-09-02 21:46:38 +02:00
Juan Jose Garcia Ripoll
825fc8cbd3
Cnil and Ct are now part of legacy
2012-06-30 23:01:40 +02:00
Juan Jose Garcia Ripoll
0131e2131d
Renamed ecl_bds_ptr and ecl_ihs_ptr and the corresponding structs
2012-06-30 21:39:22 +02:00
Juan Jose Garcia-Ripoll
05a16801ca
Rename cl_va_* macros to ecl_va_*
2012-06-24 20:46:55 +02:00
Juan Jose Garcia Ripoll
cb1cf92713
Rename ecl_fix() to ecl_fixnum(), just like ecl_long_float() or ecl_double_float()
2012-06-07 23:55:43 +02:00
Juan Jose Garcia Ripoll
64a9168434
CHARACTERP, BASE_CHAR_P, BASE_CHAR_CODE_P, CODE_CHAR, CHAR_CODE, REAL_TYPE, IMMEDIATE, IMMEDIATE_TAG, FIXNUM_TAG, FIXNUM_MINUSP, FIXNUM_PLUSP, FIXNUMP and fix get the ecl_ prefix
2012-06-06 11:19:55 +02:00
Juan Jose Garcia Ripoll
e1c1fbe5aa
FElibc_error/FEwin32_error now explain that what the user is seeing is a core library message
2012-04-13 01:10:13 +02:00
Juan Jose Garcia Ripoll
8d1c35daeb
ecl_unrecoverable_error() verifies that some frame was established before jumping to it.
2012-04-08 16:17:50 +02:00
Juan Jose Garcia Ripoll
9d557937b1
Added new dispatch functions for slot accessors.
2011-12-16 22:12:56 +01:00
Juan Jose Garcia Ripoll
c1b98706fa
Removed debug statement in error.d (FEundefined_function)
2011-08-23 14:02:10 +02:00
Juan Jose Garcia Ripoll
853ec3ebc5
Errors in array/sequence indexes are now a bit more uniform. Eliminated FEillegal_index. Changed prototype for FEtype_error_index. Fixed typo in FEwrong_index.
2011-04-03 10:03:50 +02:00
Juan Jose Garcia Ripoll
ac4b1a7b8d
Added support for a subset of Unicode (0 - 65535).
2011-02-19 23:46:52 +00:00
Juan Jose Garcia Ripoll
77f51dc653
Remove printf statement FElibc_error().
2011-02-12 19:35:41 +01:00
Juan Jose Garcia Ripoll
0aa176a5bb
Fixed typo.
2011-01-14 09:11:17 +01:00
Juan Jose Garcia Ripoll
4a83432e01
ecl_make_simple_base_string() replaces make_simple_base_string() and allows fixing the length.
2011-01-13 23:28:44 +01:00
Juan Jose Garcia Ripoll
c952641c43
Added C backtraces (EXT:DUMP-C-BACKTRACE) and used them at boot time, when the error handler is not set up.
2010-11-07 12:49:55 +01:00
Juan Jose Garcia Ripoll
79d8e9b569
Split printer into separate files, factorizing those for unreadable printing
2010-10-28 23:05:25 +02:00
Juan Jose Garcia Ripoll
c86c8bd5c0
Move packages to read/write locks
2010-10-24 17:53:44 +02:00
Juan Jose Garcia Ripoll
5a9989288c
FEerror and cl_error abort if the handler returns
2010-10-19 21:34:39 +02:00
Juan Jose Garcia Ripoll
6e90253faf
Fixed compiler warnings
2010-08-24 17:32:22 +02:00
Juan Jose Garcia Ripoll
f4f846b928
In some files windows.h was included before ecl.h
2010-08-22 23:02:52 +02:00
Juan Jose Garcia Ripoll
5c63cd8345
When compiling for the Windows API, define ECL_MS_WINDOWS_HOST instead of checking for mingw or _MSC_VER separately (Gabriel Dos Reis)
2010-08-22 22:29:21 +02:00
Juan Jose Garcia Ripoll
5b53ee01df
New function SI:SIGNAL-TYPE-ERROR
2010-05-15 16:48:10 +02:00
Trail@.(none)
973090bc55
Use __MINGW32__ instead of mingw32 as preprocessor criterion of MinGW-ness.
2010-04-05 22:31:53 +02:00
Juan Jose Garcia Ripoll
81717203ea
Fixed typo.
2010-03-02 10:39:37 +01:00
Juan Jose Garcia Ripoll
89b9a561ea
Replaced ecl_fixnum_in_range() with explicit checks in the functions, which are cheaper and, thanks to ecl_unlikely, faster.
2010-02-27 16:23:21 +01:00
Juan Jose Garcia Ripoll
86c211a6a1
Optimize ecl-inl.h for small cons and use of ecl_unlikely. New macros ECL_CONSP, ECL_LISTP, ECL_ATOM, ECL_SYMBOLP
2010-02-27 09:47:05 +01:00
Juan Jose Garcia Ripoll
2c2c329b09
Replaced FEtype_error_symbol with FEwrong_type_*_arg
2010-02-25 16:46:40 +01:00
Juan Jose Garcia Ripoll
f7f823f505
Replaced FEtype_error_{character,integer} with FEwrong_type_*_arg
2010-02-25 16:42:28 +01:00
Juan Jose Garcia Ripoll
1319e44f94
Introduced a new function, FEwrong_type_nth_arg, which produces better error messages and registers the function in the IHS stack if it was not there.
2010-02-25 14:30:42 +01:00
Juan Jose Garcia Ripoll
81e054971e
ecl_cs_overflow() and SIGSEGV handler now share the same strategy: jump to the outermost frame when the error can not be cured.
2010-02-08 12:46:13 +01:00
Juan Jose Garcia Ripoll
7d9fb8bbc7
Mark FEprogram_error as noreturn.
2010-02-04 00:31:03 +01:00
Juan Jose Garcia Ripoll
438fac9bda
FEwin32_error is exported also in cygwin
2009-11-01 20:25:37 +01:00
Juan Jose Garcia Ripoll
78e9859bd2
Code to implement mp:interrupt-process in Windows:
...
* unixint.d: capture exceptions caused by page guards.
* unixint.d: to interrupt a Windows thread, set up a page guard onto the
ECL environment and in addition queue an APC call that accesses the
environment to trigger that exception.
* stacks.h: CL_CATCH_ALL uses _try/_except to enforce ECL's exception
handler. Without it, Windows behaves randomly and sometimes uses the
default handler and sometimes it simply aborts.
* threads.d: we use ordinary handlers to identify threads.
* time.d: SLEEP now uses Windows' SleepEx, leaving the thread in an
alertable state -- that is, it can be interrupted.
* top.lsp: fixed and improved the code that handles console interrupts,
by first using ordinary conditions and then using an interactive
query function to decide which process to interrupt.
2009-09-22 20:13:23 +02:00
Juan Jose Garcia Ripoll
fb5306016c
The previous improvement for FEreader_error broke the cases in which it is used as FEparser_error (i.e. stream = Cnil).
2009-07-12 23:39:27 +02:00
Juan Jose Garcia Ripoll
3e761f0ef5
Report file position in reader errors
2009-07-09 23:12:33 +02:00
Juan Jose Garcia Ripoll
a671b57160
Some functions got new names: ecl_make_cfun, ecl_make_cfun_va, ecl_make_cclosure_va, ecl_def_c_function, ecl_def_c_function_va.
2009-06-07 00:32:33 +02:00
Juan Jose Garcia Ripoll
77cde5c2f8
Several fixes for various compiler warnings.
2009-06-07 00:02:49 +02:00
Juan Jose Garcia Ripoll
4ef223694e
Print the value of errno when an internal error happened (J.Elsasser).
2009-01-27 21:48:35 +01:00
Juan Jose Garcia Ripoll
70c64f9652
The macros/functions for accessing and changing symbol values require an environment value.
2008-10-12 16:44:29 +02:00
Juan Jose Garcia Ripoll
b5119bfb90
Add a configuration flag for using mprotect.
...
Add an implementation of interrupt disable/enable without mprotect.
Set up interrupt barriers around I/O operations.
Force error routines to enable interrupts.
2008-10-08 23:49:31 +02:00