RE:The Never Ending Story ... Part (Int_

From: Masaharu Goto (MXJ02154@nifty.ne.jp)
Date: Fri May 14 1999 - 14:19:15 MEST


Jacek,

I need to look into this problem.

Thank you
Masaharu Goto

========================================================================
This, on principle, works ( the CallFunc::SetFunc tries to byte compile
the p2f function prior to use ).
There exist a problem, however. Sometimes the p2f is NOT byte compiled. I
tried to trace it ... seems that the CallFunc::SetFunc calls the
GMethodInfo::GetBytecode which calls the G__compile_bytecode which returns
"bytecodestatus" 2 ( G_BYTECODE_FAILURE ). Sorry, no idea why.
I can easily "produce" such a problem :
-----------------------
root [0] .L ntuple.so <- load the "compiled" shared library
root [1] ntuple *n=new ntuple() <- create an "ntuple" object n
root [2] .L test.cxx <- load the "interpreted" function
root [3] n-Draw("x") <- error, the ntuple class has no Draw method
Error: No symbol Draw("x") in current scope  FILE:/tmp/01521caa LINE:1 (class 
ntuple*)0x85073d0
*** Interpreter error recovered ***
root [4] n->Loop(test) <- "compiled" code calls "interpreted", BYTECOMPILE IT
                       <- it will NOT be byte compiled after the "error"
-----------------------
Sometimes it helps if, after such an error, I ".L test.cxx" again, but
sometimes not ( sometimes after two ".L test.cxx" it works ).
Any idea why ?



This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:43:33 MET