Juan Jose Garcia Ripoll
|
70a281909a
|
Protect sysfun.lsp from a nasty user that changes the readtable.
|
2009-07-02 00:13:21 +02:00 |
|
Juan Jose Garcia Ripoll
|
8d06d5b7fa
|
Fix yet another typo in cmpwt.lsp.
|
2009-07-01 14:02:32 +02:00 |
|
Juan Jose Garcia Ripoll
|
79d6eb5873
|
Fix typo in previous patch
|
2009-07-01 13:57:02 +02:00 |
|
Juan Jose Garcia Ripoll
|
1f0289c5c6
|
cmpwt.lsp would add one extra space after every statically generated string constant.
|
2009-07-01 13:55:18 +02:00 |
|
Juan Jose Garcia Ripoll
|
a5d610105a
|
Replace #' with ' to allow tracing the compiler handlers for different special forms (cmptop.lsp)
|
2009-06-29 14:41:34 +02:00 |
|
Juan Jose Garcia Ripoll
|
f4b6162dbf
|
Remove an annoying compiler note
|
2009-06-26 17:27:48 +02:00 |
|
Juan Jose Garcia Ripoll
|
d1fc852e15
|
File positions and forms were not recorded for c1forms created with make-c1form*. Use that information during the c2 phase
|
2009-06-25 23:31:09 +02:00 |
|
Juan Jose Garcia Ripoll
|
0fa3d1651f
|
The routine compiler-output-values and compile-file still thought that compiler-error < error and that compilation process could not be aborted.
|
2009-06-25 23:14:51 +02:00 |
|
Juan Jose Garcia Ripoll
|
f7fb503b0c
|
Errors in evaluation and macroexpansion are intercepted by the compiler and re-signaled as compiler errors.
|
2009-06-25 23:03:31 +02:00 |
|
Juan Jose Garcia Ripoll
|
609ba59ffe
|
Syntax errors in lambda list are intercepted and resignaled as compiler errors (cmplam.lsp)
|
2009-06-25 23:03:01 +02:00 |
|
Juan Jose Garcia Ripoll
|
53d79a8636
|
Changed the compiler errors hierarchy, so that they are not serious-conditions and do not launch the debugger, and also changed the handlers so that they better honor outer-established handlers first.
|
2009-06-25 15:54:48 +02:00 |
|
Juan Jose Garcia Ripoll
|
d73d12ae35
|
Replaced some calls to ERROR with CMPERR so that they can be trapped by the user. Changed the implementation of WITH-COMPILER-ENV to avoid that all COMPILER-ERRORs are re-signaled as compiler internal errors.
|
2009-06-25 11:01:41 +02:00 |
|
Juan Jose Garcia Ripoll
|
e8de79cac5
|
ECL now has two sets of reader/printer settings, si:+io-syntax-progv-list+ and si:+ecl-syntax-progv-list+. The latter is used both by the compiler and by the FASL file loader, and allows for lest interference from the user side -- i.e. it is not affected by changes in the readtable, such as case preservation, etc.
|
2009-06-22 13:00:18 +02:00 |
|
Juan Jose Garcia Ripoll
|
d966444f8d
|
The compiler must use the standard readtable to not be affected by users's choice.
|
2009-06-22 12:24:02 +02:00 |
|
Juan Jose Garcia Ripoll
|
0bf0cfbbae
|
Factor out the guts of PROGV into a function ecl_progv() shared by the interpreter and the compiler.
|
2009-06-19 14:49:29 +02:00 |
|
Juan Jose Garcia Ripoll
|
27dfba57f1
|
The list of generated constants is no longer just floats.
|
2009-06-19 11:24:53 +02:00 |
|
Juan Jose Garcia Ripoll
|
4d4bd1ed16
|
The compiler now also uses the cl_core.*_package constants
|
2009-06-19 11:24:01 +02:00 |
|
Juan Jose Garcia Ripoll
|
f312a7d051
|
The compiler can now access cl_core for other system wide constants. Currently applied to standard readtable only.
|
2009-06-19 11:20:30 +02:00 |
|
Juan Jose Garcia Ripoll
|
901aeaa81d
|
The analysis for tail recursion was broken in the presence of a IHS frame.
|
2009-06-18 12:17:50 +02:00 |
|
Juan Jose Garcia Ripoll
|
601ea9c780
|
The closure environment is now passed via the Lisp environment, and not as an argument to the function.
|
2009-06-16 18:36:03 +02:00 |
|
Juan Jose Garcia Ripoll
|
aee567aeb2
|
Fixed the inline form of long-float constants in cmpct.lsp
|
2009-06-15 00:38:38 +02:00 |
|
Juan Jose Garcia Ripoll
|
0b0e026664
|
Create constants in cl_core for variants of -0.0 and use them in compiled code. IMAGPART now produces signed zeros for negative real numbers.
|
2009-06-14 11:48:04 +02:00 |
|
Juan Jose Garcia Ripoll
|
f9b12dde02
|
Do not use Ct to fill a field in the cfun structure, for MSVC does not like it.
|
2009-06-12 22:08:17 +02:00 |
|
Juan Jose Garcia Ripoll
|
d35eb63139
|
Let ECL record source file positions instead of form numbers.
|
2009-06-10 11:52:42 +02:00 |
|
Juan Jose Garcia Ripoll
|
2282dd3e92
|
Implement debug information also for compiled LET/LET*
|
2009-06-08 20:03:02 +02:00 |
|
Juan Jose Garcia Ripoll
|
0eb4fcdf66
|
Produce debug information for arguments to compiled functions when DEBUG=3.
|
2009-06-08 18:56:29 +02:00 |
|
Juan Jose Garcia Ripoll
|
8c0314022c
|
Added support for new kind of break environment that will be needed to debug C-compiled code.
|
2009-06-08 11:49:19 +02:00 |
|
Juan Jose Garcia Ripoll
|
0e64e00539
|
Decrease verbosity
|
2009-06-08 11:37:32 +02:00 |
|
Juan Jose Garcia Ripoll
|
d169863877
|
The compiler can now generate some Lisp constants as static C expressions (based on patches by JC Beaudoin)
|
2009-06-07 18:18:27 +02:00 |
|
Juan Jose Garcia Ripoll
|
747652ed34
|
Compiled functions now carry information about their source file (based on code by JC Beaudoin)
|
2009-06-07 14:24:49 +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
|
5008fdd45f
|
Big patch for introducing NaNs and infinities.
|
2009-06-04 15:55:13 +02:00 |
|
Juan Jose Garcia Ripoll
|
df52c01a30
|
Changed order of libraries so that -lpthread appears after any kind of -lgc (detected or created by ECL).
|
2009-06-01 15:29:37 +02:00 |
|
Juan Jose Garcia Ripoll
|
9ed3b8d762
|
Remove the previous warning about the compiled file extensions
|
2009-05-18 10:45:59 +02:00 |
|
Juan Jose Garcia Ripoll
|
fa2cb50c1e
|
Rewrite ENSURE-VALID-FILE-EXTENSION to allow the CONTINUE restart do what it should. Change the variable that rules the behavior to EXT::*UNKNOWN-FILE-TYPES* so that it can be set in ~/.eclrc without loading the compiler.
|
2009-05-17 13:29:33 +02:00 |
|
Juan Jose Garcia Ripoll
|
78d5ab27f1
|
The file types in *load-hooks* are strings, so we have to search with string=
|
2009-05-17 13:09:58 +02:00 |
|
Juan Jose Garcia Ripoll
|
ea55f580ec
|
Fixed typo
|
2009-05-17 13:04:21 +02:00 |
|
Juan Jose Garcia Ripoll
|
400d00d619
|
More informative message when COMPILE-FILE gets passed an unknown output file type.
|
2009-05-17 13:02:03 +02:00 |
|
Juan Jose Garcia Ripoll
|
ba61e87926
|
Respect the user's choice of binary file extensions in COMPILE-FILE, allowing the registration of new file types when they are unknown to LOAD.
|
2009-05-17 12:39:52 +02:00 |
|
Juan Jose Garcia Ripoll
|
47d594912f
|
Create two functions for writing comments in and out-of-line, and use them to write the compiled file header (compiler, date, etc).
|
2009-05-02 15:14:27 +02:00 |
|
Juan Jose Garcia Ripoll
|
38eea852ab
|
Compiled files now carry some comments with the source they came from.
|
2009-05-02 14:39:01 +02:00 |
|
Samium Gromoff
|
4a5d2a691f
|
Compiler input designation.
|
2009-05-02 10:12:23 +02:00 |
|
Samium Gromoff
|
0a841482dc
|
SIMPLE-CONDITION's initarg is called :FORMAT-ARGUMENTS
|
2009-04-17 14:52:52 +02:00 |
|
Juan Jose Garcia Ripoll
|
0424caf763
|
Do not pass a location to CALL-UNKNOWN-GLOBAL when we do not have a function object.
|
2009-04-02 15:20:56 +02:00 |
|
Juan Jose Garcia Ripoll
|
989990e7e7
|
Wrong # of arguments to c2call-global in c2fset.
|
2009-04-02 15:20:56 +02:00 |
|
Juan Jose Garcia Ripoll
|
e2fe75e9c6
|
The code generated by cmpcbk.lsp passed a wrong # of arguments to ecl_apply_from_stack_frame().
|
2009-04-02 15:20:54 +02:00 |
|
Juan Jose Garcia Ripoll
|
005dc07061
|
Added the possibility of bytecompiling forms and saving them. New module bytecmp uses this to implement COMPILE and COMPILE-FILE.
|
2009-04-01 02:29:48 +02:00 |
|
Juan Jose Garcia Ripoll
|
93d9283b91
|
Remove bogus inline expander for CHAR/SCHAR in sysfun.lsp
|
2009-03-31 11:02:47 +02:00 |
|
Juan Jose Garcia Ripoll
|
ecf055bc5a
|
Fixes for the Windows port, including a flag to make ANSI C streams the default file type.
|
2009-03-30 14:42:16 +02:00 |
|
Juan Jose Garcia Ripoll
|
64f2670874
|
Remove function array declaration, which does not work in C++
|
2009-03-28 23:06:53 +01:00 |
|