Problem changing and executing a program

Hi,

I’ve installed Root 6.04/0.6 in a laptop with Ubuntu 14.04 but I have some troubles.

When execute a program using root and then I change the program, for example “a function that was 1.0+x is now 1.0-x”, save it and execute the program again with the same root sesion I obtain the same result as in the program without changes (1.0+x instead of 1.0-x). So, to see the changes I have to quit root, lauch it again and execute the program.

Is there any way to avoid that I had to quit a relaunch root to see changes?

Thanks for your time.

When you say “execute a program”, you do what?

I mean, if the program name is pr.C, I write in root: .x pr.C

Can we see pr.C ?

Actually is proof.C
This is the program:

#include "TF1.h"
void proof(){
TF1* f2=new TF1(“f2”,“1.0-x”,0.,1.);
f2->Draw();
}

I’ve discovered that this error only appears in root 6.05, root 6.04 and root 6.03.
In root 6.02 all works fine but I am interested in the reason of this problem.

Yes you are right I can reproduce it.

Actually that’s not graphics related. You can reproduce it with:

void proof(){
   printf("1st Hello\n");
}

if you change the printf and re-execute the macro (without exiting ROOT) the change is ignored.

If you do the same with an unnamed macro then it is fine:

{
   printf("1st Hello\n");
}

Hi,

That’s sft.its.cern.ch/jira/browse/ROOT-7936 We know that this is a crucial bug…

Cheers, Axel.