Interpreter memory overwritten by illegal access

Hello,
I am using a new ROOT install 5.20/00 on FC6.0. I am compiling the attached code from the root CL. I notice that about 50% of the time when I recompile that I get the above error and then the root session goes into some sort of infinite loop trying to enter a debugger.
Output is below. I use ROOT almost daily and have never seen this problem. But this is happening on a newly installed box. Many thanks!
Ken

root [2] .x anal1.C
Info in : modified script has already been compiled and loaded
Info in : it will be regenerated and reloaded!
!!!Fatal Error: Interpreter memory overwritten by illegal access.!!!
!!!Terminate session!!!

*** Break *** segmentation violation
(no debugging symbols found)
Using host libthread_db library “/lib/libthread_db.so.1”.
Attaching to program: /proc/26314/exe, process 26314
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
[Thread debugging using libthread_db enabled]
[New Thread -1208957232 (LWP 26314)]
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.
(no debugging symbols found)…done.

[8]+ Stopped root
[kwd1@kwd2 a1]$ ps
Analyzer.C (3.39 KB)
Analyzer.h (970 Bytes)
anal1.C (225 Bytes)

For me, your code crashes at the first execution when executing line 54

int movie = atoi( strtok( line, "\t" ) );
Simply run the following session

root > .L Analyzer.C++g root > Analyzer analyzer; root > analyzer.a1("/tmp/user_date10k.txt");
Rene

Hi Rene,
my code doesn’t error check when it opens the data file. I’m including a short data file example.

FYI I just work around by .q() inbetween recompiles; only takes a second. There was nothing similar in the archives, so it’s probably something amiss in my FC6 box.
thanks
Ken
user_date10k.txt (264 Bytes)

Dear rooters,

I have the same problem.
I tried to compile my code, for the 1st time, there is no problem, sometime the it’s also good for the second time, but the third time this error appears, and Root is crashed.

root [2] .L igg.C+
Info in <ACLiC>: modified script has already been compiled and loaded
Info in <ACLiC>: it will be regenerated and reloaded!
!!!Fatal Error: Interpreter memory overwritten by illegal access.!!!
!!!Terminate session!!!
!!!Fatal Error: Interpreter memory overwritten by illegal access.!!!
!!!Terminate session!!!

Could you please show me the cause and how to solve it?
I used root 5.32/34 on window 7 64 bit.
Thank you very much, igg.C (20.2 KB)
Igg.zip (85.3 KB)

With this version of you file igg.C (16.1 KB) I can run as many time as I wish .x igg.C+ . It does not crash on Mac with ROOT 5.34/37.

Note that this macro generates plenty of Nan and Inf numbers.

Hi,

And I have no problem either with the head of ROOT v5-34-00-patches branch (v5-34-36-1-g4008982):

Cheers, Bertrand.

Thank you very much,

My problem comes after I load igg.C+ and run main() 1 time. If I only tried to load but do not run anything like Bellenot, there is no problem.

Thanks, Ngoc Anh,

Have you tried to rename the macro main ? it can be a reserved name …