octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Crash with inline


From: John W. Eaton
Subject: Re: Crash with inline
Date: Thu, 16 Sep 2004 12:57:08 -0400

On 16-Sep-2004, David Bateman <address@hidden> wrote:

| So it seems that octave keeps the compiled version from its symbol 
| table even after the directory change, while matlab picks up the 
| fact that there is a new version in the loadpath. What I suspect
| that matlab does is that when doing a cd it invalidates all of the
| functions in its symbol table that are located elsewhere it its
| loadpath after the directory change...

I'd guess that CD is not doing anything special.  Instead, WHICH
is probably looking up what symbol should be found, and instead of
assuming that a symbol in memory must be the correct one, is looking
at the load path.  If we decide to fix this in Octave, then I think we
need to change the way symbol_out_of_data works.  Instead of just
checking symbol timestamps, we need to see if the function found in
the path is different from the one found in the current symbol table.
Then the which command may also need to be changed to check for out of
date symbols (probably instead of duplicating any code or logic, it
needs to use the same method of looking up a symbol that the
interpreter uses when attempting to evaluate a symbol).

Now, what to do about functions with the same name defined on the
command line?  Should those always be favored over what is found in
the load path?

jwe




reply via email to

[Prev in Thread] Current Thread [Next in Thread]