[slim-vim] vim+ecl compiled on Windows+Cygwin

Larry Clapp larry at theclapp.org
Sun Apr 2 16:47:56 CDT 2006


Hello, all,

I got Vim+ECL to compile under Cygwin, almost unchanged.  I had to
make the following patch:

--- if_ecl.c.bak        2006-04-01 10:46:03.344241600 -0500
+++ if_ecl.c    2006-04-01 10:54:38.274675200 -0500
@@ -445,9 +445,10 @@
 cl_object safe_eval_form(cl_object form, int from_ex)
 {
     /* uses vim::safe-eval to trap errors */
-    static cl_object safe_eval = Cnil;
+    static cl_object safe_eval = 0;
 
-    if (safe_eval == Cnil)
+    if (safe_eval == 0)
     {
         /* get the safe eval and quote symbols */
         safe_eval = intern_vim("SAFE-EVAL");

Without this change, I got errors from gcc "initializer element is not
constant".  Cnil is a #define for ((cl_object)cl_symbols), which is
maybe in the dll or something?

Jim, can you comment on this wisdom of making this change to the base
system?  It seems pretty benign; cl_object is just a pointer to a
cl_lispunion struct, so assigning zero to it and then comparing it to
zero seems just as safe as using Cnil.

(I didn't try much beyond (print "ok"), so Vim+ECL/Cygwin may have
other runtime problems.)

-- Larry



More information about the slim-vim mailing list