Juan Jose Garcia-Ripoll <juanjose.garciarip...@googlemail.com> writes:

> Hi everybody,
> Regarding Stas Boukarev's problems with require-ing ASDF and compiling a
> test file that defines the ASDF package, I could not reproduce it in any
> system with a clean new copy of ECL.
This is quite unfortunate, because this really is a show-stopper here, I
can't load any .fas which weren't compiled in the current instance of
ECL.

Here is my further analyses:
Consider the function
ecl_make_package
http://ecls.git.sourceforge.net/git/gitweb.cgi?p=ecls/ecl;a=blob;f=src/c/package.d;h=5939239084d30db5d484ce3ff8924a3ee64ef004;hb=HEAD#l195
which is eventually called when loading the code I showed earlier.

It calls
x = find_pending_package(env, name, nicknames);

which returns a package, because it finds it in env->packages_to_be_created 
(which, I
presume, is set up by LOAD), so that means that "if (Null(x)) { ... }" is
not executed, and the variable `other' isn't set to anything.
Next, it iterates over nicknames, which it has none, and `other' is still
untouched.
And finally, it does
if (!Null(other))

but the variable `other' wasn't ever initialized, and when I insert a print
statement there, it shows #<illegal pointer bf9c2d38>, which isn't null,
and it's eventually passed to CEpackage_error, which then
complains "not a lisp data object".

-- 
With Best Regards, Stas.

------------------------------------------------------------------------------
Protect Your Site and Customers from Malware Attacks
Learn about various malware tactics and how to avoid them. Understand 
malware threats, the impact they can have on your business, and how you 
can protect your company and customers by using code signing.
http://p.sf.net/sfu/oracle-sfdevnl
_______________________________________________
Ecls-list mailing list
Ecls-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ecls-list

Reply via email to