Commit graph

84 commits

Author SHA1 Message Date
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
Juan Jose Garcia Ripoll
89a5283927 Implemented an interface for setting/querying options with numeric values and used it for stack sizes and limits. 2008-10-02 11:11:58 +02:00
jgarcia
87a6367939 Factor out some error calls to make code faster in Mac OS X (avoids references to cl_env in some functions) 2008-05-12 08:12:31 +00:00
jgarcia
5ef5d32e74 Enforce indent and mode conditions on files 2008-01-26 10:30:41 +00:00
jgarcia
b23b09e67a RENAME-FILE now has a keyword argument that defines the behavior when a file with the new name exists. 2008-01-02 22:07:02 +00:00
jgarcia
7d68d65331 Do not print \*current-form\* when there is none 2007-10-13 10:11:53 +00:00
jgarcia
3f9a080eea Show offending form when syntax error happens. 2007-07-12 09:09:53 +00:00
jgarcia
aa3dfe4058 Prefix most functions with 'ecl_' to avoid name collisions when embedding ECL in other libraries 2007-01-18 11:46:07 +00:00
jgarcia
75fb4cd6b6 Minimize number of headers included by ecl/ecl.h 2006-10-23 21:24:04 +00:00